diff --git a/packages/react/src/components/EdgeWrapper/EdgeUpdateAnchors.tsx b/packages/react/src/components/EdgeWrapper/EdgeUpdateAnchors.tsx index 04bdaebb..c9f3b7f0 100644 --- a/packages/react/src/components/EdgeWrapper/EdgeUpdateAnchors.tsx +++ b/packages/react/src/components/EdgeWrapper/EdgeUpdateAnchors.tsx @@ -1,5 +1,12 @@ // Reconnectable edges have a anchors around their handles to reconnect the edge. -import { XYHandle, type Connection, EdgePosition, FinalConnectionState, HandleType } from '@xyflow/system'; +import { + XYHandle, + type Connection, + EdgePosition, + FinalConnectionState, + HandleType, + OnConnectStart, +} from '@xyflow/system'; import { EdgeAnchor } from '../Edges/EdgeAnchor'; import type { EdgeWrapperProps, Edge } from '../../types/edges'; @@ -60,15 +67,17 @@ export function EdgeUpdateAnchors({ } = store.getState(); const isTarget = oppositeHandle.type === 'target'; - setReconnecting(true); - onReconnectStart?.(event, edge, oppositeHandle.type); - const _onReconnectEnd = (evt: MouseEvent | TouchEvent, connectionState: FinalConnectionState) => { setReconnecting(false); onReconnectEnd?.(evt, edge, oppositeHandle.type, connectionState); }; const onConnectEdge = (connection: Connection) => onReconnect?.(edge, connection); + const _onConnectStart: OnConnectStart = (_event, params) => { + setReconnecting(true); + onReconnectStart?.(event, edge, oppositeHandle.type); + onConnectStart?.(_event, params); + }; XYHandle.onPointerDown(event.nativeEvent, { autoPanOnConnect, @@ -86,7 +95,7 @@ export function EdgeUpdateAnchors({ panBy, isValidConnection, onConnect: onConnectEdge, - onConnectStart, + onConnectStart: _onConnectStart, onConnectEnd, onReconnectEnd: _onReconnectEnd, updateConnection, diff --git a/packages/svelte/src/lib/components/EdgeReconnectAnchor/EdgeReconnectAnchor.svelte b/packages/svelte/src/lib/components/EdgeReconnectAnchor/EdgeReconnectAnchor.svelte index de8abd03..c4b95fa5 100644 --- a/packages/svelte/src/lib/components/EdgeReconnectAnchor/EdgeReconnectAnchor.svelte +++ b/packages/svelte/src/lib/components/EdgeReconnectAnchor/EdgeReconnectAnchor.svelte @@ -1,7 +1,7 @@ diff --git a/packages/svelte/src/lib/components/EdgeReconnectAnchor/types.ts b/packages/svelte/src/lib/components/EdgeReconnectAnchor/types.ts index 74ed6d6d..38b71232 100644 --- a/packages/svelte/src/lib/components/EdgeReconnectAnchor/types.ts +++ b/packages/svelte/src/lib/components/EdgeReconnectAnchor/types.ts @@ -10,4 +10,5 @@ export type EdgeReconnectAnchorProps = { position?: XYPosition; size?: number; children?: Snippet; + dragThreshold?: number; } & HTMLAttributes;