feat(svelte): custom nodes
This commit is contained in:
@@ -10,6 +10,7 @@
|
||||
#root {
|
||||
height: 100%;
|
||||
margin: 0;
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
}
|
||||
</style>
|
||||
%sveltekit.head%
|
||||
|
||||
22
packages/svelte/src/customnodes/Custom.svelte
Normal file
22
packages/svelte/src/customnodes/Custom.svelte
Normal file
@@ -0,0 +1,22 @@
|
||||
<script lang="ts">
|
||||
import Handle from '$lib/components/Handle/index.svelte';
|
||||
import { Position } from '@reactflow/system';
|
||||
|
||||
export let data: { label: string } = { label: 'Node' };
|
||||
export let xPos: number = 0;
|
||||
export let yPos: number = 0;
|
||||
</script>
|
||||
|
||||
<div class="custom">
|
||||
<div>{data.label}</div>
|
||||
<div>{~~xPos}, {~~yPos}</div>
|
||||
<Handle type="target" position={Position.Left} />
|
||||
<Handle type="source" position={Position.Right} />
|
||||
</div>
|
||||
|
||||
<style>
|
||||
.custom {
|
||||
background: #ffcc00;
|
||||
padding: 10px;
|
||||
}
|
||||
</style>
|
||||
@@ -6,13 +6,14 @@
|
||||
export let type: HandleType = 'source';
|
||||
export let position: Position = Position.Top;
|
||||
export let id: string | null = null;
|
||||
export let className: string | null = null;;
|
||||
|
||||
let className: string | null = null;
|
||||
export { className as class };
|
||||
|
||||
const isTarget = type === 'target';
|
||||
const nodeId = getContext('rf_nodeid');
|
||||
</script>
|
||||
|
||||
|
||||
<div
|
||||
data-handleid={id}
|
||||
data-nodeid={nodeId}
|
||||
@@ -28,7 +29,7 @@
|
||||
class:source={!isTarget}
|
||||
class:target={isTarget}
|
||||
>
|
||||
<slot></slot>
|
||||
<slot />
|
||||
</div>
|
||||
|
||||
|
||||
@@ -46,27 +47,26 @@
|
||||
}
|
||||
|
||||
.bottom {
|
||||
top: auto;
|
||||
top: 100%;
|
||||
left: 50%;
|
||||
bottom: -4px;
|
||||
transform: translate(-50%, 0);
|
||||
transform: translate(-50%, -50%);
|
||||
}
|
||||
|
||||
.top {
|
||||
left: 50%;
|
||||
top: -4px;
|
||||
transform: translate(-50%, 0);
|
||||
top: 0;
|
||||
transform: translate(-50%, -50%);
|
||||
}
|
||||
|
||||
.left {
|
||||
top: 50%;
|
||||
left: -4px;
|
||||
transform: translate(0, -50%);
|
||||
left: 0;
|
||||
transform: translate(-50%, -50%);
|
||||
}
|
||||
|
||||
.right {
|
||||
right: -4px;
|
||||
top: 50%;
|
||||
transform: translate(0, -50%);
|
||||
left: 100%;
|
||||
transform: translate(-50%, -50%);
|
||||
}
|
||||
</style>
|
||||
@@ -1,24 +1,30 @@
|
||||
<script lang="ts">
|
||||
import { onMount, setContext } from 'svelte';
|
||||
import type { XYPosition } from '@reactflow/system';
|
||||
import { onMount, setContext, SvelteComponentTyped, type ComponentType } from 'svelte';
|
||||
import { type XYPosition, Position } from '@reactflow/system';
|
||||
|
||||
import drag from '$lib/actions/drag'
|
||||
import { useStore } from '$lib/store';
|
||||
import DefaultNode from './DefaultNode.svelte';
|
||||
import type { NodeProps } from '$lib/types';
|
||||
|
||||
export let id: string;
|
||||
export let id: NodeProps['id'];
|
||||
export let data: NodeProps['data'] = {};
|
||||
export let selected: NodeProps['selected'] = false;
|
||||
export let positionAbsolute: XYPosition = { x: 0, y: 0 };
|
||||
export let position: XYPosition = { x: 0, y: 0 };
|
||||
export let dragging: boolean = false;
|
||||
export let data: any = {};
|
||||
export let resizeObserver: ResizeObserver | null = null;
|
||||
export let style: any = {};
|
||||
export let width: number = 0;
|
||||
export let height: number = 0;
|
||||
export let type: string = 'default';
|
||||
export let sourcePosition: Position = Position.Bottom;
|
||||
export let targetPosition: Position = Position.Top;
|
||||
|
||||
let nodeRef: HTMLDivElement;
|
||||
|
||||
const { nodesStore, transformStore, updateNodePositions } = useStore();
|
||||
|
||||
const { nodesStore, transformStore, updateNodePositions, nodeTypesStore } = useStore();
|
||||
const nodeComponent: typeof SvelteComponentTyped<NodeProps> = $nodeTypesStore[type] || DefaultNode;
|
||||
|
||||
setContext('rf_nodeid', id);
|
||||
|
||||
@@ -37,17 +43,26 @@
|
||||
class:initializing={!width && !height}
|
||||
class:dragging={dragging}
|
||||
bind:this={nodeRef}
|
||||
style="transform: translate({positionAbsolute.x}px, {positionAbsolute.y}px);"
|
||||
style:transform={`translate(${positionAbsolute.x}px, ${positionAbsolute.y}px)`}
|
||||
{style}
|
||||
data-id={id}
|
||||
>
|
||||
<svelte:component this={DefaultNode} data={data} />
|
||||
<svelte:component
|
||||
this={nodeComponent}
|
||||
{data}
|
||||
{id}
|
||||
{selected}
|
||||
{sourcePosition}
|
||||
{targetPosition}
|
||||
isConnectable={true}
|
||||
xPos={positionAbsolute.x}
|
||||
yPos={positionAbsolute.y}
|
||||
/>
|
||||
</div>
|
||||
|
||||
<style>
|
||||
.react-flow__node {
|
||||
padding: 10px;
|
||||
border-radius: 3px;
|
||||
width: 50px;
|
||||
font-size: 12px;
|
||||
color: #222;
|
||||
text-align: center;
|
||||
|
||||
@@ -1,12 +1,19 @@
|
||||
<script lang="ts">
|
||||
import { Position } from '@reactflow/system';
|
||||
|
||||
import Handle from '$lib/components/Handle.svelte';
|
||||
import Handle from '$lib/components/Handle/index.svelte';
|
||||
import type { NodeProps } from '$lib/types';
|
||||
|
||||
export let data: any = {};
|
||||
export let isConnectable: boolean = true;
|
||||
export let targetPosition: Position = Position.Top;
|
||||
export let sourcePosition: Position = Position.Bottom;
|
||||
interface $$Props extends NodeProps<{ label: string }>{}
|
||||
|
||||
export let id: $$Props['id'];
|
||||
export let data: $$Props['data'] = { label: 'Node' };
|
||||
export let isConnectable: $$Props['isConnectable'] = true;
|
||||
export let targetPosition: $$Props['targetPosition'] = Position.Top;
|
||||
export let sourcePosition: $$Props['sourcePosition'] = Position.Bottom;
|
||||
export let xPos: $$Props['xPos'];
|
||||
export let yPos: $$Props['yPos'];
|
||||
export let selected: $$Props['selected'];
|
||||
</script>
|
||||
|
||||
<Handle type="target" position={targetPosition} />
|
||||
|
||||
13
packages/svelte/src/lib/components/nodes/InputNode.svelte
Normal file
13
packages/svelte/src/lib/components/nodes/InputNode.svelte
Normal file
@@ -0,0 +1,13 @@
|
||||
<script lang="ts">
|
||||
import { Position } from '@reactflow/system';
|
||||
|
||||
import Handle from '$lib/components/Handle/index.svelte';
|
||||
|
||||
export let data: { label: string } = { label: 'Node' };
|
||||
export let isConnectable: boolean = true;
|
||||
export let sourcePosition: Position = Position.Bottom;
|
||||
</script>
|
||||
|
||||
{data?.label}
|
||||
<Handle type="source" position={sourcePosition} />
|
||||
|
||||
13
packages/svelte/src/lib/components/nodes/OutputNode.svelte
Normal file
13
packages/svelte/src/lib/components/nodes/OutputNode.svelte
Normal file
@@ -0,0 +1,13 @@
|
||||
<script lang="ts">
|
||||
import { Position } from '@reactflow/system';
|
||||
|
||||
import Handle from '$lib/components/Handle/index.svelte';
|
||||
|
||||
export let data: { label: string } = { label: 'Node' };
|
||||
export let isConnectable: boolean = true;
|
||||
export let targetPosition: Position = Position.Top;
|
||||
</script>
|
||||
|
||||
{data?.label}
|
||||
<Handle type="target" position={targetPosition} />
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<script lang="ts">
|
||||
import { setContext, onMount } from 'svelte'
|
||||
import { setContext, onMount, SvelteComponent } from 'svelte'
|
||||
import cc from 'classcat';
|
||||
import type { Node, Edge } from '@reactflow/system';
|
||||
|
||||
@@ -17,6 +17,7 @@
|
||||
export let nodes: Node[] = [];
|
||||
export let edges: Edge[] = [];
|
||||
export let fitView: boolean = false;
|
||||
export let nodeTypes: Record<string, SvelteComponent>
|
||||
|
||||
let className: string = '';
|
||||
export { className as class };
|
||||
@@ -26,7 +27,8 @@
|
||||
const store = createStore({
|
||||
nodes,
|
||||
edges,
|
||||
fitView
|
||||
fitView,
|
||||
nodeTypes
|
||||
});
|
||||
|
||||
setContext(key, {
|
||||
|
||||
@@ -24,6 +24,10 @@ import {
|
||||
type EdgePosition
|
||||
} from '$lib/container/EdgeRenderer/utils';
|
||||
import { SelectionMode } from 'reactflow';
|
||||
import DefaultNode from '$lib/components/nodes/DefaultNode.svelte';
|
||||
import InputNode from '$lib/components/nodes/InputNode.svelte';
|
||||
import OutputNode from '$lib/components/nodes/OutputNode.svelte';
|
||||
import type { NodeTypes } from '$lib/types';
|
||||
|
||||
export const key = Symbol();
|
||||
|
||||
@@ -33,6 +37,7 @@ type CreateStoreProps = {
|
||||
fitView: boolean;
|
||||
nodeOrigin?: NodeOrigin;
|
||||
transform?: Transform;
|
||||
nodeTypes?: NodeTypes;
|
||||
id?: string;
|
||||
};
|
||||
|
||||
@@ -59,6 +64,7 @@ type SvelteFlowStore = {
|
||||
selectionRectModeStore: Writable<string | null>;
|
||||
selectionMode: Writable<SelectionMode>;
|
||||
selectionKeyPressedStore: Writable<boolean>;
|
||||
nodeTypesStore: Writable<NodeTypes>;
|
||||
zoomIn: (options?: ViewportHelperFunctionOptions) => void;
|
||||
zoomOut: (options?: ViewportHelperFunctionOptions) => void;
|
||||
fitView: (options?: ViewportHelperFunctionOptions) => boolean;
|
||||
@@ -77,6 +83,7 @@ export function createStore({
|
||||
transform = [0, 0, 1],
|
||||
nodeOrigin = [0, 0],
|
||||
fitView: fitViewOnInit = false,
|
||||
nodeTypes = {},
|
||||
id = '1'
|
||||
}: CreateStoreProps): SvelteFlowStore {
|
||||
const nodesStore = writable(nodes.map((n) => ({ ...n, positionAbsolute: n.position })));
|
||||
@@ -94,6 +101,12 @@ export function createStore({
|
||||
const selectionKeyPressedStore = writable(false);
|
||||
const selectionRectModeStore = writable(null);
|
||||
const selectionMode = writable(SelectionMode.Partial);
|
||||
const nodeTypesStore = writable({
|
||||
...nodeTypes,
|
||||
input: nodeTypes.input || InputNode,
|
||||
output: nodeTypes.output || OutputNode,
|
||||
default: nodeTypes.default || DefaultNode
|
||||
});
|
||||
|
||||
let fitViewOnInitDone = false;
|
||||
|
||||
@@ -279,6 +292,7 @@ export function createStore({
|
||||
selectionKeyPressedStore,
|
||||
selectionRectModeStore,
|
||||
selectionMode,
|
||||
nodeTypesStore,
|
||||
updateNodePositions,
|
||||
updateNodeDimensions,
|
||||
zoomIn,
|
||||
|
||||
15
packages/svelte/src/lib/types/index.ts
Normal file
15
packages/svelte/src/lib/types/index.ts
Normal file
@@ -0,0 +1,15 @@
|
||||
import type { SvelteComponentTyped } from 'svelte';
|
||||
import type { Position } from '@reactflow/system';
|
||||
|
||||
export type NodeProps<NodeData extends Record<string, unknown> = Record<string, never>> = {
|
||||
id: string;
|
||||
data: NodeData;
|
||||
xPos: number;
|
||||
yPos: number;
|
||||
selected: boolean;
|
||||
isConnectable: boolean;
|
||||
sourcePosition: Position;
|
||||
targetPosition: Position;
|
||||
};
|
||||
|
||||
export type NodeTypes = Record<string, typeof SvelteComponentTyped<NodeProps>>;
|
||||
@@ -2,12 +2,18 @@
|
||||
import type { Node, Edge } from '@reactflow/system';
|
||||
|
||||
import SvelteFlow, { Controls, Background, BackgroundVariant, Minimap } from '../lib/index';
|
||||
import CustomNode from '../customnodes/Custom.svelte';
|
||||
|
||||
const yNodes = 10;
|
||||
const xNodes = 10;
|
||||
|
||||
const nodes: Node[] = [];
|
||||
const edges: Edge[] = [];
|
||||
|
||||
const nodeTypes = {
|
||||
custom: CustomNode,
|
||||
};
|
||||
|
||||
let source = null;
|
||||
|
||||
for (let y = 0; y < yNodes; y++) {
|
||||
@@ -19,6 +25,7 @@
|
||||
id,
|
||||
data,
|
||||
position,
|
||||
type: x === 0 ? 'custom' : 'default',
|
||||
};
|
||||
nodes.push(node);
|
||||
|
||||
@@ -57,7 +64,7 @@
|
||||
// }]
|
||||
</script>
|
||||
|
||||
<SvelteFlow {nodes} {edges} fitView >
|
||||
<SvelteFlow {nodes} {edges} {nodeTypes} fitView>
|
||||
<Controls />
|
||||
<Background variant={BackgroundVariant.Dots} />
|
||||
<Minimap />
|
||||
|
||||
120
pnpm-lock.yaml
generated
120
pnpm-lock.yaml
generated
@@ -32,8 +32,8 @@ importers:
|
||||
'@changesets/changelog-github': registry.npmjs.org/@changesets/changelog-github/0.4.7
|
||||
'@changesets/cli': registry.npmjs.org/@changesets/cli/2.25.0
|
||||
'@preconstruct/cli': registry.npmjs.org/@preconstruct/cli/2.2.1
|
||||
'@typescript-eslint/eslint-plugin': registry.npmjs.org/@typescript-eslint/eslint-plugin/5.52.0_gyett2pgucfcswo4a3gkpdas2y
|
||||
'@typescript-eslint/parser': registry.npmjs.org/@typescript-eslint/parser/5.52.0_id2eilsndvzhjjktb64trvy3gu
|
||||
'@typescript-eslint/eslint-plugin': registry.npmjs.org/@typescript-eslint/eslint-plugin/5.53.0_qwaoy36sxxjkr7fbascfous7zi
|
||||
'@typescript-eslint/parser': registry.npmjs.org/@typescript-eslint/parser/5.53.0_id2eilsndvzhjjktb64trvy3gu
|
||||
autoprefixer: registry.npmjs.org/autoprefixer/10.4.9_postcss@8.4.21
|
||||
concurrently: registry.npmjs.org/concurrently/7.6.0
|
||||
cypress: registry.npmjs.org/cypress/10.7.0
|
||||
@@ -310,8 +310,8 @@ importers:
|
||||
|
||||
packages/svelte:
|
||||
specifiers:
|
||||
'@reactflow/system': workspace:11.5.5
|
||||
'@reactflow/utils': workspace:^11.5.5
|
||||
'@reactflow/system': workspace:*
|
||||
'@reactflow/utils': workspace:*
|
||||
'@svelte-put/shortcut': ^2.0.0
|
||||
'@sveltejs/adapter-auto': ^2.0.0
|
||||
'@sveltejs/kit': ^1.5.6
|
||||
@@ -432,7 +432,7 @@ importers:
|
||||
devDependencies:
|
||||
eslint: registry.npmjs.org/eslint/8.23.1
|
||||
eslint-config-prettier: registry.npmjs.org/eslint-config-prettier/8.5.0_eslint@8.23.1
|
||||
eslint-config-turbo: registry.npmjs.org/eslint-config-turbo/0.0.7_eslint@8.23.1
|
||||
eslint-config-turbo: registry.npmjs.org/eslint-config-turbo/0.0.8_eslint@8.23.1
|
||||
eslint-plugin-react: registry.npmjs.org/eslint-plugin-react/7.32.2_eslint@8.23.1
|
||||
|
||||
tooling/rollup-config:
|
||||
@@ -2491,11 +2491,11 @@ packages:
|
||||
- supports-color
|
||||
dev: true
|
||||
|
||||
registry.npmjs.org/@typescript-eslint/eslint-plugin/5.52.0_gyett2pgucfcswo4a3gkpdas2y:
|
||||
resolution: {integrity: sha512-lHazYdvYVsBokwCdKOppvYJKaJ4S41CgKBcPvyd0xjZNbvQdhn/pnJlGtQksQ/NhInzdaeaSarlBjDXHuclEbg==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.52.0.tgz}
|
||||
id: registry.npmjs.org/@typescript-eslint/eslint-plugin/5.52.0
|
||||
registry.npmjs.org/@typescript-eslint/eslint-plugin/5.53.0_qwaoy36sxxjkr7fbascfous7zi:
|
||||
resolution: {integrity: sha512-alFpFWNucPLdUOySmXCJpzr6HKC3bu7XooShWM+3w/EL6J2HIoB2PFxpLnq4JauWVk6DiVeNKzQlFEaE+X9sGw==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.53.0.tgz}
|
||||
id: registry.npmjs.org/@typescript-eslint/eslint-plugin/5.53.0
|
||||
name: '@typescript-eslint/eslint-plugin'
|
||||
version: 5.52.0
|
||||
version: 5.53.0
|
||||
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
|
||||
peerDependencies:
|
||||
'@typescript-eslint/parser': ^5.0.0
|
||||
@@ -2505,10 +2505,10 @@ packages:
|
||||
typescript:
|
||||
optional: true
|
||||
dependencies:
|
||||
'@typescript-eslint/parser': registry.npmjs.org/@typescript-eslint/parser/5.52.0_id2eilsndvzhjjktb64trvy3gu
|
||||
'@typescript-eslint/scope-manager': registry.npmjs.org/@typescript-eslint/scope-manager/5.52.0
|
||||
'@typescript-eslint/type-utils': registry.npmjs.org/@typescript-eslint/type-utils/5.52.0_id2eilsndvzhjjktb64trvy3gu
|
||||
'@typescript-eslint/utils': registry.npmjs.org/@typescript-eslint/utils/5.52.0_id2eilsndvzhjjktb64trvy3gu
|
||||
'@typescript-eslint/parser': registry.npmjs.org/@typescript-eslint/parser/5.53.0_id2eilsndvzhjjktb64trvy3gu
|
||||
'@typescript-eslint/scope-manager': registry.npmjs.org/@typescript-eslint/scope-manager/5.53.0
|
||||
'@typescript-eslint/type-utils': registry.npmjs.org/@typescript-eslint/type-utils/5.53.0_id2eilsndvzhjjktb64trvy3gu
|
||||
'@typescript-eslint/utils': registry.npmjs.org/@typescript-eslint/utils/5.53.0_id2eilsndvzhjjktb64trvy3gu
|
||||
debug: registry.npmjs.org/debug/4.3.4
|
||||
eslint: registry.npmjs.org/eslint/8.23.1
|
||||
grapheme-splitter: registry.npmjs.org/grapheme-splitter/1.0.4
|
||||
@@ -2545,11 +2545,11 @@ packages:
|
||||
- supports-color
|
||||
dev: true
|
||||
|
||||
registry.npmjs.org/@typescript-eslint/parser/5.52.0_id2eilsndvzhjjktb64trvy3gu:
|
||||
resolution: {integrity: sha512-e2KiLQOZRo4Y0D/b+3y08i3jsekoSkOYStROYmPUnGMEoA0h+k2qOH5H6tcjIc68WDvGwH+PaOrP1XRzLJ6QlA==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.52.0.tgz}
|
||||
id: registry.npmjs.org/@typescript-eslint/parser/5.52.0
|
||||
registry.npmjs.org/@typescript-eslint/parser/5.53.0_id2eilsndvzhjjktb64trvy3gu:
|
||||
resolution: {integrity: sha512-MKBw9i0DLYlmdOb3Oq/526+al20AJZpANdT6Ct9ffxcV8nKCHz63t/S0IhlTFNsBIHJv+GY5SFJ0XfqVeydQrQ==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.53.0.tgz}
|
||||
id: registry.npmjs.org/@typescript-eslint/parser/5.53.0
|
||||
name: '@typescript-eslint/parser'
|
||||
version: 5.52.0
|
||||
version: 5.53.0
|
||||
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
|
||||
peerDependencies:
|
||||
eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
|
||||
@@ -2558,9 +2558,9 @@ packages:
|
||||
typescript:
|
||||
optional: true
|
||||
dependencies:
|
||||
'@typescript-eslint/scope-manager': registry.npmjs.org/@typescript-eslint/scope-manager/5.52.0
|
||||
'@typescript-eslint/types': registry.npmjs.org/@typescript-eslint/types/5.52.0
|
||||
'@typescript-eslint/typescript-estree': registry.npmjs.org/@typescript-eslint/typescript-estree/5.52.0_typescript@4.9.4
|
||||
'@typescript-eslint/scope-manager': registry.npmjs.org/@typescript-eslint/scope-manager/5.53.0
|
||||
'@typescript-eslint/types': registry.npmjs.org/@typescript-eslint/types/5.53.0
|
||||
'@typescript-eslint/typescript-estree': registry.npmjs.org/@typescript-eslint/typescript-estree/5.53.0_typescript@4.9.4
|
||||
debug: registry.npmjs.org/debug/4.3.4
|
||||
eslint: registry.npmjs.org/eslint/8.23.1
|
||||
typescript: registry.npmjs.org/typescript/4.9.4
|
||||
@@ -2578,14 +2578,14 @@ packages:
|
||||
'@typescript-eslint/visitor-keys': registry.npmjs.org/@typescript-eslint/visitor-keys/5.49.0
|
||||
dev: true
|
||||
|
||||
registry.npmjs.org/@typescript-eslint/scope-manager/5.52.0:
|
||||
resolution: {integrity: sha512-AR7sxxfBKiNV0FWBSARxM8DmNxrwgnYMPwmpkC1Pl1n+eT8/I2NAUPuwDy/FmDcC6F8pBfmOcaxcxRHspgOBMw==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.52.0.tgz}
|
||||
registry.npmjs.org/@typescript-eslint/scope-manager/5.53.0:
|
||||
resolution: {integrity: sha512-Opy3dqNsp/9kBBeCPhkCNR7fmdSQqA+47r21hr9a14Bx0xnkElEQmhoHga+VoaoQ6uDHjDKmQPIYcUcKJifS7w==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.53.0.tgz}
|
||||
name: '@typescript-eslint/scope-manager'
|
||||
version: 5.52.0
|
||||
version: 5.53.0
|
||||
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
|
||||
dependencies:
|
||||
'@typescript-eslint/types': registry.npmjs.org/@typescript-eslint/types/5.52.0
|
||||
'@typescript-eslint/visitor-keys': registry.npmjs.org/@typescript-eslint/visitor-keys/5.52.0
|
||||
'@typescript-eslint/types': registry.npmjs.org/@typescript-eslint/types/5.53.0
|
||||
'@typescript-eslint/visitor-keys': registry.npmjs.org/@typescript-eslint/visitor-keys/5.53.0
|
||||
dev: true
|
||||
|
||||
registry.npmjs.org/@typescript-eslint/type-utils/5.49.0_zkdaqh7it7uc4cvz2haft7rc6u:
|
||||
@@ -2611,11 +2611,11 @@ packages:
|
||||
- supports-color
|
||||
dev: true
|
||||
|
||||
registry.npmjs.org/@typescript-eslint/type-utils/5.52.0_id2eilsndvzhjjktb64trvy3gu:
|
||||
resolution: {integrity: sha512-tEKuUHfDOv852QGlpPtB3lHOoig5pyFQN/cUiZtpw99D93nEBjexRLre5sQZlkMoHry/lZr8qDAt2oAHLKA6Jw==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.52.0.tgz}
|
||||
id: registry.npmjs.org/@typescript-eslint/type-utils/5.52.0
|
||||
registry.npmjs.org/@typescript-eslint/type-utils/5.53.0_id2eilsndvzhjjktb64trvy3gu:
|
||||
resolution: {integrity: sha512-HO2hh0fmtqNLzTAme/KnND5uFNwbsdYhCZghK2SoxGp3Ifn2emv+hi0PBUjzzSh0dstUIFqOj3bp0AwQlK4OWw==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.53.0.tgz}
|
||||
id: registry.npmjs.org/@typescript-eslint/type-utils/5.53.0
|
||||
name: '@typescript-eslint/type-utils'
|
||||
version: 5.52.0
|
||||
version: 5.53.0
|
||||
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
|
||||
peerDependencies:
|
||||
eslint: '*'
|
||||
@@ -2624,8 +2624,8 @@ packages:
|
||||
typescript:
|
||||
optional: true
|
||||
dependencies:
|
||||
'@typescript-eslint/typescript-estree': registry.npmjs.org/@typescript-eslint/typescript-estree/5.52.0_typescript@4.9.4
|
||||
'@typescript-eslint/utils': registry.npmjs.org/@typescript-eslint/utils/5.52.0_id2eilsndvzhjjktb64trvy3gu
|
||||
'@typescript-eslint/typescript-estree': registry.npmjs.org/@typescript-eslint/typescript-estree/5.53.0_typescript@4.9.4
|
||||
'@typescript-eslint/utils': registry.npmjs.org/@typescript-eslint/utils/5.53.0_id2eilsndvzhjjktb64trvy3gu
|
||||
debug: registry.npmjs.org/debug/4.3.4
|
||||
eslint: registry.npmjs.org/eslint/8.23.1
|
||||
tsutils: registry.npmjs.org/tsutils/3.21.0_typescript@4.9.4
|
||||
@@ -2641,10 +2641,10 @@ packages:
|
||||
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
|
||||
dev: true
|
||||
|
||||
registry.npmjs.org/@typescript-eslint/types/5.52.0:
|
||||
resolution: {integrity: sha512-oV7XU4CHYfBhk78fS7tkum+/Dpgsfi91IIDy7fjCyq2k6KB63M6gMC0YIvy+iABzmXThCRI6xpCEyVObBdWSDQ==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/@typescript-eslint/types/-/types-5.52.0.tgz}
|
||||
registry.npmjs.org/@typescript-eslint/types/5.53.0:
|
||||
resolution: {integrity: sha512-5kcDL9ZUIP756K6+QOAfPkigJmCPHcLN7Zjdz76lQWWDdzfOhZDTj1irs6gPBKiXx5/6O3L0+AvupAut3z7D2A==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/@typescript-eslint/types/-/types-5.53.0.tgz}
|
||||
name: '@typescript-eslint/types'
|
||||
version: 5.52.0
|
||||
version: 5.53.0
|
||||
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
|
||||
dev: true
|
||||
|
||||
@@ -2672,11 +2672,11 @@ packages:
|
||||
- supports-color
|
||||
dev: true
|
||||
|
||||
registry.npmjs.org/@typescript-eslint/typescript-estree/5.52.0_typescript@4.9.4:
|
||||
resolution: {integrity: sha512-WeWnjanyEwt6+fVrSR0MYgEpUAuROxuAH516WPjUblIrClzYJj0kBbjdnbQXLpgAN8qbEuGywiQsXUVDiAoEuQ==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.52.0.tgz}
|
||||
id: registry.npmjs.org/@typescript-eslint/typescript-estree/5.52.0
|
||||
registry.npmjs.org/@typescript-eslint/typescript-estree/5.53.0_typescript@4.9.4:
|
||||
resolution: {integrity: sha512-eKmipH7QyScpHSkhbptBBYh9v8FxtngLquq292YTEQ1pxVs39yFBlLC1xeIZcPPz1RWGqb7YgERJRGkjw8ZV7w==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.53.0.tgz}
|
||||
id: registry.npmjs.org/@typescript-eslint/typescript-estree/5.53.0
|
||||
name: '@typescript-eslint/typescript-estree'
|
||||
version: 5.52.0
|
||||
version: 5.53.0
|
||||
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
|
||||
peerDependencies:
|
||||
typescript: '*'
|
||||
@@ -2684,8 +2684,8 @@ packages:
|
||||
typescript:
|
||||
optional: true
|
||||
dependencies:
|
||||
'@typescript-eslint/types': registry.npmjs.org/@typescript-eslint/types/5.52.0
|
||||
'@typescript-eslint/visitor-keys': registry.npmjs.org/@typescript-eslint/visitor-keys/5.52.0
|
||||
'@typescript-eslint/types': registry.npmjs.org/@typescript-eslint/types/5.53.0
|
||||
'@typescript-eslint/visitor-keys': registry.npmjs.org/@typescript-eslint/visitor-keys/5.53.0
|
||||
debug: registry.npmjs.org/debug/4.3.4
|
||||
globby: registry.npmjs.org/globby/11.1.0
|
||||
is-glob: registry.npmjs.org/is-glob/4.0.3
|
||||
@@ -2719,20 +2719,20 @@ packages:
|
||||
- typescript
|
||||
dev: true
|
||||
|
||||
registry.npmjs.org/@typescript-eslint/utils/5.52.0_id2eilsndvzhjjktb64trvy3gu:
|
||||
resolution: {integrity: sha512-As3lChhrbwWQLNk2HC8Ree96hldKIqk98EYvypd3It8Q1f8d5zWyIoaZEp2va5667M4ZyE7X8UUR+azXrFl+NA==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.52.0.tgz}
|
||||
id: registry.npmjs.org/@typescript-eslint/utils/5.52.0
|
||||
registry.npmjs.org/@typescript-eslint/utils/5.53.0_id2eilsndvzhjjktb64trvy3gu:
|
||||
resolution: {integrity: sha512-VUOOtPv27UNWLxFwQK/8+7kvxVC+hPHNsJjzlJyotlaHjLSIgOCKj9I0DBUjwOOA64qjBwx5afAPjksqOxMO0g==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.53.0.tgz}
|
||||
id: registry.npmjs.org/@typescript-eslint/utils/5.53.0
|
||||
name: '@typescript-eslint/utils'
|
||||
version: 5.52.0
|
||||
version: 5.53.0
|
||||
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
|
||||
peerDependencies:
|
||||
eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
|
||||
dependencies:
|
||||
'@types/json-schema': registry.npmjs.org/@types/json-schema/7.0.11
|
||||
'@types/semver': registry.npmjs.org/@types/semver/7.3.13
|
||||
'@typescript-eslint/scope-manager': registry.npmjs.org/@typescript-eslint/scope-manager/5.52.0
|
||||
'@typescript-eslint/types': registry.npmjs.org/@typescript-eslint/types/5.52.0
|
||||
'@typescript-eslint/typescript-estree': registry.npmjs.org/@typescript-eslint/typescript-estree/5.52.0_typescript@4.9.4
|
||||
'@typescript-eslint/scope-manager': registry.npmjs.org/@typescript-eslint/scope-manager/5.53.0
|
||||
'@typescript-eslint/types': registry.npmjs.org/@typescript-eslint/types/5.53.0
|
||||
'@typescript-eslint/typescript-estree': registry.npmjs.org/@typescript-eslint/typescript-estree/5.53.0_typescript@4.9.4
|
||||
eslint: registry.npmjs.org/eslint/8.23.1
|
||||
eslint-scope: registry.npmjs.org/eslint-scope/5.1.1
|
||||
eslint-utils: registry.npmjs.org/eslint-utils/3.0.0_eslint@8.23.1
|
||||
@@ -2752,13 +2752,13 @@ packages:
|
||||
eslint-visitor-keys: registry.npmjs.org/eslint-visitor-keys/3.3.0
|
||||
dev: true
|
||||
|
||||
registry.npmjs.org/@typescript-eslint/visitor-keys/5.52.0:
|
||||
resolution: {integrity: sha512-qMwpw6SU5VHCPr99y274xhbm+PRViK/NATY6qzt+Et7+mThGuFSl/ompj2/hrBlRP/kq+BFdgagnOSgw9TB0eA==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.52.0.tgz}
|
||||
registry.npmjs.org/@typescript-eslint/visitor-keys/5.53.0:
|
||||
resolution: {integrity: sha512-JqNLnX3leaHFZEN0gCh81sIvgrp/2GOACZNgO4+Tkf64u51kTpAyWFOY8XHx8XuXr3N2C9zgPPHtcpMg6z1g0w==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.53.0.tgz}
|
||||
name: '@typescript-eslint/visitor-keys'
|
||||
version: 5.52.0
|
||||
version: 5.53.0
|
||||
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
|
||||
dependencies:
|
||||
'@typescript-eslint/types': registry.npmjs.org/@typescript-eslint/types/5.52.0
|
||||
'@typescript-eslint/types': registry.npmjs.org/@typescript-eslint/types/5.53.0
|
||||
eslint-visitor-keys: registry.npmjs.org/eslint-visitor-keys/3.3.0
|
||||
dev: true
|
||||
|
||||
@@ -4163,16 +4163,16 @@ packages:
|
||||
eslint: registry.npmjs.org/eslint/8.33.0
|
||||
dev: true
|
||||
|
||||
registry.npmjs.org/eslint-config-turbo/0.0.7_eslint@8.23.1:
|
||||
resolution: {integrity: sha512-WbrGlyfs94rOXrhombi1wjIAYGdV2iosgJRndOZtmDQeq5GLTzYmBUCJQZWtLBEBUPCj96RxZ2OL7Cn+xv/Azg==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-0.0.7.tgz}
|
||||
id: registry.npmjs.org/eslint-config-turbo/0.0.7
|
||||
registry.npmjs.org/eslint-config-turbo/0.0.8_eslint@8.23.1:
|
||||
resolution: {integrity: sha512-ijj6uv0QX2kWahg3OYnTK1/q4MueXsqY2uE4MP9yeUA5CzVhL7GU+biKlv1BfMMqPltixHUcpZoW4yyNLCnMiw==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-0.0.8.tgz}
|
||||
id: registry.npmjs.org/eslint-config-turbo/0.0.8
|
||||
name: eslint-config-turbo
|
||||
version: 0.0.7
|
||||
version: 0.0.8
|
||||
peerDependencies:
|
||||
eslint: '>6.6.0'
|
||||
dependencies:
|
||||
eslint: registry.npmjs.org/eslint/8.23.1
|
||||
eslint-plugin-turbo: registry.npmjs.org/eslint-plugin-turbo/0.0.7_eslint@8.23.1
|
||||
eslint-plugin-turbo: registry.npmjs.org/eslint-plugin-turbo/0.0.8_eslint@8.23.1
|
||||
dev: true
|
||||
|
||||
registry.npmjs.org/eslint-plugin-prettier/4.2.1_cabrci5exjdaojcvd6xoxgeowu:
|
||||
@@ -4235,11 +4235,11 @@ packages:
|
||||
svelte: registry.npmjs.org/svelte/3.55.1
|
||||
dev: true
|
||||
|
||||
registry.npmjs.org/eslint-plugin-turbo/0.0.7_eslint@8.23.1:
|
||||
resolution: {integrity: sha512-iajOH8eD4jha3duztGVBD1BEmvNrQBaA/y3HFHf91vMDRYRwH7BpHSDFtxydDpk5ghlhRxG299SFxz7D6z4MBQ==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-0.0.7.tgz}
|
||||
id: registry.npmjs.org/eslint-plugin-turbo/0.0.7
|
||||
registry.npmjs.org/eslint-plugin-turbo/0.0.8_eslint@8.23.1:
|
||||
resolution: {integrity: sha512-pExSCmjWw/KFKb3/0PVqxiWb30FbcwDEf6kKv3alvNBSVEzDHalyAGHc9klbLSG+nFmbkfNE3Ky/UHDryCqt8g==, registry: https://registry.npmjs.com/, tarball: https://registry.npmjs.org/eslint-plugin-turbo/-/eslint-plugin-turbo-0.0.8.tgz}
|
||||
id: registry.npmjs.org/eslint-plugin-turbo/0.0.8
|
||||
name: eslint-plugin-turbo
|
||||
version: 0.0.7
|
||||
version: 0.0.8
|
||||
peerDependencies:
|
||||
eslint: '>6.6.0'
|
||||
dependencies:
|
||||
|
||||
Reference in New Issue
Block a user