From 1c218d27f1944b1752d147063eadc2043e1b3568 Mon Sep 17 00:00:00 2001 From: peterkogo Date: Tue, 26 Aug 2025 13:06:15 +0200 Subject: [PATCH 1/2] make getIntersectingNodes and isNodeIntersecting behave the same --- packages/react/src/hooks/useReactFlow.ts | 11 ++++++++++- packages/svelte/src/lib/hooks/useSvelteFlow.svelte.ts | 11 ++++++++++- 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/packages/react/src/hooks/useReactFlow.ts b/packages/react/src/hooks/useReactFlow.ts index 7fb66b8f..c72cb1b9 100644 --- a/packages/react/src/hooks/useReactFlow.ts +++ b/packages/react/src/hooks/useReactFlow.ts @@ -202,6 +202,11 @@ export function useReactFlow { const isRect = isRectObject(nodeOrRect); const nodeRect = isRect ? nodeOrRect : getNodeRect(nodeOrRect); @@ -240,7 +245,11 @@ export function useReactFlow 0; - return partiallyVisible || overlappingArea >= nodeRect.width * nodeRect.height; + return ( + partiallyVisible || + overlappingArea >= area.width * area.height || + overlappingArea >= nodeRect.width * nodeRect.height + ); }, updateNode, updateNodeData: (id, dataUpdate, options = { replace: false }) => { diff --git a/packages/svelte/src/lib/hooks/useSvelteFlow.svelte.ts b/packages/svelte/src/lib/hooks/useSvelteFlow.svelte.ts index 40a1da97..19307f1f 100644 --- a/packages/svelte/src/lib/hooks/useSvelteFlow.svelte.ts +++ b/packages/svelte/src/lib/hooks/useSvelteFlow.svelte.ts @@ -390,6 +390,11 @@ export function useSvelteFlow 0; - return partiallyVisible || overlappingArea >= nodeRect.width * nodeRect.height; + return ( + partiallyVisible || + overlappingArea >= area.width * area.height || + overlappingArea >= nodeRect.width * nodeRect.height + ); }, deleteElements: async ({ nodes: nodesToRemove = [], edges: edgesToRemove = [] }) => { const { nodes: matchingNodes, edges: matchingEdges } = await getElementsToRemove< From 56381ae546f392b13e7c1390df60e48c9072f128 Mon Sep 17 00:00:00 2001 From: peterkogo Date: Tue, 26 Aug 2025 13:07:01 +0200 Subject: [PATCH 2/2] add(changeset) --- .changeset/gentle-chefs-travel.md | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 .changeset/gentle-chefs-travel.md diff --git a/.changeset/gentle-chefs-travel.md b/.changeset/gentle-chefs-travel.md new file mode 100644 index 00000000..08a5c774 --- /dev/null +++ b/.changeset/gentle-chefs-travel.md @@ -0,0 +1,6 @@ +--- +'@xyflow/react': patch +'@xyflow/svelte': patch +--- + +Make isNodeIntersecting behave the same as getIntersectingNodes