feat(svelte) add defaultEdgeOptions, closes #3437
This commit is contained in:
@@ -161,6 +161,9 @@
|
|||||||
}}
|
}}
|
||||||
autoPanOnConnect
|
autoPanOnConnect
|
||||||
autoPanOnNodeDrag
|
autoPanOnNodeDrag
|
||||||
|
defaultEdgeOptions={{
|
||||||
|
hidden: false
|
||||||
|
}}
|
||||||
>
|
>
|
||||||
<Controls />
|
<Controls />
|
||||||
<Background variant={BackgroundVariant.Dots} />
|
<Background variant={BackgroundVariant.Dots} />
|
||||||
|
|||||||
@@ -2,8 +2,19 @@
|
|||||||
import { EdgeWrapper } from '$lib/components/EdgeWrapper';
|
import { EdgeWrapper } from '$lib/components/EdgeWrapper';
|
||||||
import { MarkerDefinition } from '$lib/container/EdgeRenderer/MarkerDefinition';
|
import { MarkerDefinition } from '$lib/container/EdgeRenderer/MarkerDefinition';
|
||||||
import { useStore } from '$lib/store';
|
import { useStore } from '$lib/store';
|
||||||
|
import type { DefaultEdgeOptions } from '$lib/types';
|
||||||
|
|
||||||
const { width, height, elementsSelectable, edgeTree } = useStore();
|
export let defaultOptions: DefaultEdgeOptions | undefined;
|
||||||
|
|
||||||
|
const {
|
||||||
|
width,
|
||||||
|
height,
|
||||||
|
elementsSelectable,
|
||||||
|
edgeTree,
|
||||||
|
edges: { setDefaultOptions }
|
||||||
|
} = useStore();
|
||||||
|
|
||||||
|
$: if (defaultOptions) setDefaultOptions(defaultOptions);
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
{#each $edgeTree as group (group.level)}
|
{#each $edgeTree as group (group.level)}
|
||||||
|
|||||||
@@ -54,6 +54,7 @@
|
|||||||
export let autoPanOnConnect: $$Props['autoPanOnConnect'] = true;
|
export let autoPanOnConnect: $$Props['autoPanOnConnect'] = true;
|
||||||
export let autoPanOnNodeDrag: $$Props['autoPanOnNodeDrag'] = true;
|
export let autoPanOnNodeDrag: $$Props['autoPanOnNodeDrag'] = true;
|
||||||
export let onError: $$Props['onError'] = undefined;
|
export let onError: $$Props['onError'] = undefined;
|
||||||
|
export let defaultEdgeOptions: $$Props['defaultEdgeOptions'] = undefined;
|
||||||
|
|
||||||
export let defaultMarkerColor = '#b1b1b7';
|
export let defaultMarkerColor = '#b1b1b7';
|
||||||
|
|
||||||
@@ -149,7 +150,7 @@
|
|||||||
>
|
>
|
||||||
<Pane on:paneclick panOnDrag={panOnDrag === undefined ? true : panOnDrag}>
|
<Pane on:paneclick panOnDrag={panOnDrag === undefined ? true : panOnDrag}>
|
||||||
<ViewportComponent>
|
<ViewportComponent>
|
||||||
<EdgeRenderer on:edgeclick />
|
<EdgeRenderer on:edgeclick defaultOptions={defaultEdgeOptions} />
|
||||||
<ConnectionLine />
|
<ConnectionLine />
|
||||||
<div class="svelte-flow__edgelabel-renderer" />
|
<div class="svelte-flow__edgelabel-renderer" />
|
||||||
<NodeRenderer
|
<NodeRenderer
|
||||||
|
|||||||
@@ -17,7 +17,14 @@ import type {
|
|||||||
OnError
|
OnError
|
||||||
} from '@xyflow/system';
|
} from '@xyflow/system';
|
||||||
|
|
||||||
import type { Edge, Node, NodeTypes, KeyDefinition, EdgeTypes } from '$lib/types';
|
import type {
|
||||||
|
Edge,
|
||||||
|
Node,
|
||||||
|
NodeTypes,
|
||||||
|
KeyDefinition,
|
||||||
|
EdgeTypes,
|
||||||
|
DefaultEdgeOptions
|
||||||
|
} from '$lib/types';
|
||||||
import type { Writable } from 'svelte/store';
|
import type { Writable } from 'svelte/store';
|
||||||
|
|
||||||
export type SvelteFlowProps = DOMAttributes<HTMLDivElement> & {
|
export type SvelteFlowProps = DOMAttributes<HTMLDivElement> & {
|
||||||
@@ -52,6 +59,7 @@ export type SvelteFlowProps = DOMAttributes<HTMLDivElement> & {
|
|||||||
onlyRenderVisibleElements?: boolean;
|
onlyRenderVisibleElements?: boolean;
|
||||||
autoPanOnConnect?: boolean;
|
autoPanOnConnect?: boolean;
|
||||||
autoPanOnNodeDrag?: boolean;
|
autoPanOnNodeDrag?: boolean;
|
||||||
|
defaultEdgeOptions?: DefaultEdgeOptions;
|
||||||
|
|
||||||
class?: string;
|
class?: string;
|
||||||
style?: string;
|
style?: string;
|
||||||
|
|||||||
Reference in New Issue
Block a user