fix edge reconnection

This commit is contained in:
peterkogo
2025-08-19 15:31:22 +02:00
parent 100c95fd5a
commit a00a6385b7

View File

@@ -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) => {