diff --git a/packages/svelte/src/lib/components/EdgeReconnectAnchor/EdgeReconnectAnchor.svelte b/packages/svelte/src/lib/components/EdgeReconnectAnchor/EdgeReconnectAnchor.svelte index d18bc2e8..81f0ab2d 100644 --- a/packages/svelte/src/lib/components/EdgeReconnectAnchor/EdgeReconnectAnchor.svelte +++ b/packages/svelte/src/lib/components/EdgeReconnectAnchor/EdgeReconnectAnchor.svelte @@ -50,7 +50,6 @@ edgeLookup } = store; - let newEdge: Edge | undefined; let edge = edgeLookup.get(edgeId)!; const _onConnectStart: OnConnectStart = (evt, params) => { @@ -86,13 +85,16 @@ onConnectStart: _onConnectStart, onConnectEnd: onconnectend, onConnect: (connection) => { - newEdge = { ...edge, ...connection }; - newEdge = onbeforereconnect ? (onbeforereconnect(newEdge, edge) ?? undefined) : newEdge; + const reconnectedEdge = { ...edge, ...connection }; + const newEdge = onbeforereconnect + ? onbeforereconnect(reconnectedEdge, edge) + : reconnectedEdge; - if (newEdge) { - store.edges = store.edges.map((e) => (e.id === edge.id ? (newEdge as Edge) : e)); + if (!newEdge) { + return; } + store.edges = store.edges.map((e) => (e.id === edge.id ? (newEdge as Edge) : e)); onreconnect?.(edge, connection); }, onReconnectEnd: (event, connectionState) => {