Skip to content

Commit c1603b2

Browse files
committed
feat(core): add nodes to isValidConnection args
1 parent 75cb0c9 commit c1603b2

File tree

3 files changed

+6
-1
lines changed

3 files changed

+6
-1
lines changed

packages/core/src/composables/useHandle.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,7 @@ export function useHandle({
5757
emits,
5858
viewport,
5959
edges,
60+
nodes,
6061
isValidConnection: isValidConnectionProp,
6162
} = useVueFlow()
6263

@@ -152,6 +153,7 @@ export function useHandle({
152153
isValidConnectionHandler,
153154
doc,
154155
edges.value,
156+
nodes.value,
155157
findNode,
156158
),
157159
)
@@ -278,6 +280,7 @@ export function useHandle({
278280
isValidConnectionHandler,
279281
doc,
280282
edges.value,
283+
nodes.value,
281284
findNode,
282285
)
283286

packages/core/src/types/handle.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ export interface ConnectingHandle {
3434
/** A valid connection function can determine if an attempted connection is valid or not, i.e. abort creating a new edge */
3535
export type ValidConnectionFunc = (
3636
connection: Connection,
37-
elements: { edges: GraphEdge[]; sourceNode: GraphNode; targetNode: GraphNode },
37+
elements: { edges: GraphEdge[]; nodes: GraphNode[]; sourceNode: GraphNode; targetNode: GraphNode },
3838
) => boolean
3939

4040
export type HandleConnectableFunc = (node: GraphNode, connectedEdges: GraphEdge[]) => boolean

packages/core/src/utils/handle.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -151,6 +151,7 @@ export function isValidHandle(
151151
isValidConnection: ValidConnectionFunc,
152152
doc: Document | ShadowRoot,
153153
edges: GraphEdge[],
154+
nodes: GraphNode[],
154155
findNode: Actions['findNode'],
155156
) {
156157
const isTarget = fromType === 'target'
@@ -201,6 +202,7 @@ export function isValidHandle(
201202
if (isValid) {
202203
result.isValid = isValidConnection(connection, {
203204
edges,
205+
nodes,
204206
sourceNode: findNode(connection.source)!,
205207
targetNode: findNode(connection.target)!,
206208
})

0 commit comments

Comments
 (0)