diff --git a/packages/core/src/components/Edges/EdgeWrapper.ts b/packages/core/src/components/Edges/EdgeWrapper.ts index 2cb4a7b6..62c0034e 100644 --- a/packages/core/src/components/Edges/EdgeWrapper.ts +++ b/packages/core/src/components/Edges/EdgeWrapper.ts @@ -58,7 +58,7 @@ const EdgeWrapper = defineComponent({ nodeId, handleId, type: edgeUpdaterType, - isValidConnection: isValidConnection.value, + isValidConnection, edgeUpdaterType, onEdgeUpdate, onEdgeUpdateEnd, diff --git a/packages/core/src/composables/useHandle.ts b/packages/core/src/composables/useHandle.ts index c1383855..20a0c914 100644 --- a/packages/core/src/composables/useHandle.ts +++ b/packages/core/src/composables/useHandle.ts @@ -5,7 +5,7 @@ interface UseHandleProps { handleId: MaybeComputedRef nodeId: MaybeComputedRef type: MaybeComputedRef - isValidConnection?: ValidConnectionFunc | null + isValidConnection?: MaybeComputedRef edgeUpdaterType?: MaybeComputedRef onEdgeUpdate?: (event: MouseTouchEvent, connection: Connection) => void onEdgeUpdateEnd?: (event: MouseTouchEvent) => void @@ -59,7 +59,7 @@ export default function useHandle({ if ((isMouseTriggered && event.button === 0) || !isMouseTriggered) { const node = findNode(resolveUnref(nodeId)) - let isValidConnectionHandler = isValidConnection || isValidConnectionProp.value || alwaysValid + let isValidConnectionHandler = resolveUnref(isValidConnection) || isValidConnectionProp.value || alwaysValid if (!isValidConnectionHandler && node) { isValidConnectionHandler = (!isTarget ? node.isValidTargetPos : node.isValidSourcePos) || alwaysValid @@ -235,7 +235,7 @@ export default function useHandle({ true, ) } else { - let isValidConnectionHandler = isValidConnection || isValidConnectionProp.value || alwaysValid + let isValidConnectionHandler = resolveUnref(isValidConnection) || isValidConnectionProp.value || alwaysValid const node = findNode(resolveUnref(nodeId))