From 096f67a55bd547c159b999cb0d139a7eb9c7e4e6 Mon Sep 17 00:00:00 2001 From: braks <78412429+bcakmakoglu@users.noreply.github.com> Date: Tue, 25 Oct 2022 15:09:13 +0200 Subject: [PATCH] fix(core): use shallowReactive for node/edge data & events --- packages/core/src/utils/graph.ts | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/core/src/utils/graph.ts b/packages/core/src/utils/graph.ts index 3b7ef691..6ecca9a8 100644 --- a/packages/core/src/utils/graph.ts +++ b/packages/core/src/utils/graph.ts @@ -1,3 +1,4 @@ +import { isString } from '@vueuse/core' import { warn } from './log' import type { Box, @@ -76,8 +77,8 @@ export const parseNode = (node: Node, nodeExtent: CoordinateExtent, defaults?: P selectable: undefined, connectable: undefined, ...defaults, - data: node.data || {}, - events: node.events || {}, + data: shallowReactive(node.data || {}), + events: shallowReactive(node.events || {}), } } @@ -103,8 +104,9 @@ export const parseEdge = (edge: Edge, defaults?: Partial): GraphEdge targetY: 0, updatable: edge.updatable, selectable: edge.selectable, - data: edge.data || {}, - events: edge.events || {}, + data: shallowReactive(edge.data || {}), + events: shallowReactive(edge.events || {}), + label: edge.label && !isString(edge.label) ? markRaw(edge.label) : undefined, ...defaults, } as GraphEdge) : defaults