diff --git a/examples/Edges/CustomLabel.vue b/examples/Edges/CustomLabel.vue index 364a9df4..67073d7d 100644 --- a/examples/Edges/CustomLabel.vue +++ b/examples/Edges/CustomLabel.vue @@ -1,4 +1,10 @@ - + diff --git a/examples/Edges/EdgesExample.vue b/examples/Edges/EdgesExample.vue index f5c52274..477c89fe 100644 --- a/examples/Edges/EdgesExample.vue +++ b/examples/Edges/EdgesExample.vue @@ -1,6 +1,7 @@ diff --git a/src/components/Nodes/InputNode.vue b/src/components/Nodes/InputNode.vue index 80a1f255..307ce45f 100644 --- a/src/components/Nodes/InputNode.vue +++ b/src/components/Nodes/InputNode.vue @@ -15,11 +15,9 @@ const props = withDefaults(defineProps(), { }) diff --git a/src/components/Nodes/OutputNode.vue b/src/components/Nodes/OutputNode.vue index e707bd86..5f9434db 100644 --- a/src/components/Nodes/OutputNode.vue +++ b/src/components/Nodes/OutputNode.vue @@ -15,11 +15,9 @@ const props = withDefaults(defineProps(), { }) diff --git a/src/container/Flow/Flow.vue b/src/container/Flow/Flow.vue index 8b66eaba..fd2a8daf 100644 --- a/src/container/Flow/Flow.vue +++ b/src/container/Flow/Flow.vue @@ -114,19 +114,19 @@ const defaultEdgeTypes: Record = { const store = useStore(props) const hooks = useHooks(emit) -const init = () => { - store.$state = { ...store.$state, ...props } - store.setElements(props.elements) - store.setMinZoom(props.minZoom) - store.setMaxZoom(props.maxZoom) - store.setTranslateExtent(props.translateExtent) - store.setNodeExtent(props.nodeExtent) +const init = (opts: typeof props) => { + store.$state = { ...store.$state, ...opts } + store.setElements(opts.elements) + store.setMinZoom(opts.minZoom) + store.setMaxZoom(opts.maxZoom) + store.setTranslateExtent(opts.translateExtent) + store.setNodeExtent(opts.nodeExtent) } onBeforeUnmount(() => store?.$dispose()) -onUpdated(() => init()) -init() +watch(props, (val) => init(val)) +init(props) const nodeTypes = createNodeTypes({ ...defaultNodeTypes, ...props.nodeTypes }) const edgeTypes = createEdgeTypes({ ...defaultEdgeTypes, ...props.edgeTypes }) diff --git a/src/container/NodeRenderer/NodeRenderer.vue b/src/container/NodeRenderer/NodeRenderer.vue index 16b4cf72..ce7de637 100644 --- a/src/container/NodeRenderer/NodeRenderer.vue +++ b/src/container/NodeRenderer/NodeRenderer.vue @@ -37,8 +37,6 @@ const type = (node: TNode) => { } return type } - -const selected = (nodeId: string) => store.selectedElements?.some(({ id }) => id === nodeId)