From 496d28bda4cdca3bcb65d5b22af309a0c60e8876 Mon Sep 17 00:00:00 2001 From: moklick Date: Thu, 18 Jul 2024 10:57:24 +0200 Subject: [PATCH 1/2] fix(nodes): re-init if node has no measured attr #4437 --- packages/system/src/utils/store.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/system/src/utils/store.ts b/packages/system/src/utils/store.ts index 5a977cc0..c800c90b 100644 --- a/packages/system/src/utils/store.ts +++ b/packages/system/src/utils/store.ts @@ -80,7 +80,8 @@ export function adoptUserNodes( }, internals: { positionAbsolute: getNodePositionWithOrigin(userNode, _options.nodeOrigin), - handleBounds: internalNode?.internals.handleBounds, + // if user re-initializes the node or removes `measured` for whatever reason, we reset the handleBounds so that the node gets re-measured + handleBounds: !userNode.measured ? undefined : internalNode?.internals.handleBounds, z: calculateZ(userNode, selectedNodeZ), userNode, }, From 543c09392d53fdd56a8876e65f4ce2d8ab250098 Mon Sep 17 00:00:00 2001 From: moklick Date: Thu, 18 Jul 2024 12:07:06 +0200 Subject: [PATCH 2/2] chore(changeset): add --- .changeset/early-comics-knock.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/early-comics-knock.md diff --git a/.changeset/early-comics-knock.md b/.changeset/early-comics-knock.md new file mode 100644 index 00000000..d154211b --- /dev/null +++ b/.changeset/early-comics-knock.md @@ -0,0 +1,5 @@ +--- +'@xyflow/system': patch +--- + +fix(nodes): re-measure when measured is not set