diff --git a/src/container/VueFlow/VueFlow.vue b/src/container/VueFlow/VueFlow.vue index ad20f503..bfb5e20b 100644 --- a/src/container/VueFlow/VueFlow.vue +++ b/src/container/VueFlow/VueFlow.vue @@ -116,6 +116,7 @@ const options = Object.assign({}, store.$state, props) invoke(async () => { store.setState(options) await store.setElements(elements.value) + elements.value = store.elements store.isReady = true // if ssr we can't wait for dimensions, they'll never really exist diff --git a/src/store/stateStore.ts b/src/store/stateStore.ts index 0e621f91..d40294b6 100644 --- a/src/store/stateStore.ts +++ b/src/store/stateStore.ts @@ -86,17 +86,6 @@ export default (id: string, preloadedState: FlowState) => { actions: { setElements(elements) { const { nodes, edges } = parseElements(elements, this.elements, this.nodeExtent) - edges.forEach((edge, i, arr) => { - const { sourceNode, targetNode } = getSourceTargetNodes(edge, nodes) - if (!sourceNode) console.warn(`couldn't create edge for source id: ${edge.source}; edge id: ${edge.id}`) - if (!targetNode) console.warn(`couldn't create edge for target id: ${edge.target}; edge id: ${edge.id}`) - - arr[i] = { - ...edge, - sourceNode, - targetNode, - } - }) this.elements = [...nodes, ...edges] }, setUserSelection(mousePos) { @@ -187,17 +176,6 @@ export default (id: string, preloadedState: FlowState) => { }, addElements(elements: Elements) { const { nodes, edges } = parseElements(elements, this.elements, this.nodeExtent) - edges.forEach((edge, i, arr) => { - const { sourceNode, targetNode } = getSourceTargetNodes(edge, nodes) - if (!sourceNode) console.warn(`couldn't create edge for source id: ${edge.source}; edge id: ${edge.id}`) - if (!targetNode) console.warn(`couldn't create edge for target id: ${edge.target}; edge id: ${edge.id}`) - - arr[i] = { - ...edge, - sourceNode, - targetNode, - } - }) this.elements = [...this.elements, ...nodes, ...edges] }, async setState(state) {