make viewport bindable

This commit is contained in:
peterkogo
2024-12-18 12:14:32 +01:00
parent 08b5f81cf5
commit 801300e895
5 changed files with 33 additions and 16 deletions
@@ -64,6 +64,7 @@
children,
nodes = $bindable([]),
edges = $bindable([]),
viewport = $bindable(undefined),
...props
}: SvelteFlowProps = $props();
@@ -93,6 +94,12 @@
},
set edges(newEdges) {
edges = newEdges;
},
get viewport() {
return viewport;
},
set viewport(newViewport) {
viewport = newViewport;
}
});
@@ -35,7 +35,7 @@ import type {
IsValidConnection,
DefaultNodeOptions
} from '$lib/types';
import type { Writable } from 'svelte/store';
import type { Snippet } from 'svelte';
import type { EdgeEvents, NodeEvents, NodeSelectionEvents, PaneEvents } from '$lib/types/events';
@@ -168,8 +168,8 @@ export type SvelteFlowProps = NodeEvents &
* };
*/
initialViewport?: Viewport;
/** Custom viewport writable to be used instead of internal one */
viewport?: Writable<Viewport>;
/** Custom viewport to be used instead of internal one */
viewport?: Viewport;
/** The radius around a handle where you drop a connection line to create a new edge.
* @default 20
*/