From cff55c8ebf8005446a0aa0c9d8c50a6c5240db4c Mon Sep 17 00:00:00 2001 From: Braks <78412429+bcakmakoglu@users.noreply.github.com> Date: Thu, 13 Jun 2024 11:51:18 +0200 Subject: [PATCH] refactor(core): use empty arr when updating all internals (#1476) * refactor(core): use empty arr when updating all internals * chore(changeset): add --- .changeset/silver-plums-relate.md | 5 +++++ packages/core/src/components/Nodes/NodeWrapper.ts | 3 ++- packages/core/src/composables/useViewportHelper.ts | 1 - packages/core/src/store/actions.ts | 9 ++------- packages/core/src/utils/storage.ts | 2 +- 5 files changed, 10 insertions(+), 10 deletions(-) create mode 100644 .changeset/silver-plums-relate.md diff --git a/.changeset/silver-plums-relate.md b/.changeset/silver-plums-relate.md new file mode 100644 index 00000000..b813d08d --- /dev/null +++ b/.changeset/silver-plums-relate.md @@ -0,0 +1,5 @@ +--- +"@vue-flow/core": minor +--- + +Use empty array when determing whether to update all node internals diff --git a/packages/core/src/components/Nodes/NodeWrapper.ts b/packages/core/src/components/Nodes/NodeWrapper.ts index b0764588..a8ff068d 100644 --- a/packages/core/src/components/Nodes/NodeWrapper.ts +++ b/packages/core/src/components/Nodes/NodeWrapper.ts @@ -153,7 +153,8 @@ const NodeWrapper = defineComponent({ const zIndex = toRef(() => Number(node.zIndex ?? getStyle.value.zIndex ?? 0)) onUpdateNodeInternals((updateIds) => { - if (updateIds.includes(props.id)) { + // when no ids are passed, update all nodes + if (updateIds.includes(props.id) || !updateIds.length) { updateInternals() } }) diff --git a/packages/core/src/composables/useViewportHelper.ts b/packages/core/src/composables/useViewportHelper.ts index d6716c91..58698417 100644 --- a/packages/core/src/composables/useViewportHelper.ts +++ b/packages/core/src/composables/useViewportHelper.ts @@ -39,7 +39,6 @@ const initialViewportHelper: ViewportHelper = { * * @internal * @param state - * @param getters */ export function useViewportHelper(state: State) { function zoom(scale: number, duration?: number) { diff --git a/packages/core/src/store/actions.ts b/packages/core/src/store/actions.ts index 106538eb..9a58c743 100644 --- a/packages/core/src/store/actions.ts +++ b/packages/core/src/store/actions.ts @@ -53,16 +53,11 @@ import { } from '../utils' import { storeOptionsToSkip, useState } from './state' -export function useActions( - id: string, - state: State, - nodeLookup: ComputedRef, - edgeLookup: ComputedRef, -): Actions { +export function useActions(state: State, nodeLookup: ComputedRef, edgeLookup: ComputedRef): Actions { const viewportHelper = useViewportHelper(state) const updateNodeInternals: Actions['updateNodeInternals'] = (ids) => { - const updateIds = ids ?? state.nodes.map((n) => n.id) ?? [] + const updateIds = ids ?? [] state.hooks.updateNodeInternals.trigger(updateIds) } diff --git a/packages/core/src/utils/storage.ts b/packages/core/src/utils/storage.ts index 51b5f54f..4034d5de 100644 --- a/packages/core/src/utils/storage.ts +++ b/packages/core/src/utils/storage.ts @@ -78,7 +78,7 @@ export class Storage { const getters = useGetters(reactiveState, nodeLookup, edgeLookup) - const actions = useActions(id, reactiveState, nodeLookup, edgeLookup) + const actions = useActions(reactiveState, nodeLookup, edgeLookup) actions.setState({ ...reactiveState, ...preloadedState })