feat(core): add nodes to isValidConnection args

This commit is contained in:
braks
2023-11-08 08:27:12 +01:00
committed by Braks
parent 75cb0c9b1e
commit c1603b2d58
3 changed files with 6 additions and 1 deletions
@@ -57,6 +57,7 @@ export function useHandle({
emits, emits,
viewport, viewport,
edges, edges,
nodes,
isValidConnection: isValidConnectionProp, isValidConnection: isValidConnectionProp,
} = useVueFlow() } = useVueFlow()
@@ -152,6 +153,7 @@ export function useHandle({
isValidConnectionHandler, isValidConnectionHandler,
doc, doc,
edges.value, edges.value,
nodes.value,
findNode, findNode,
), ),
) )
@@ -278,6 +280,7 @@ export function useHandle({
isValidConnectionHandler, isValidConnectionHandler,
doc, doc,
edges.value, edges.value,
nodes.value,
findNode, findNode,
) )
+1 -1
View File
@@ -34,7 +34,7 @@ export interface ConnectingHandle {
/** A valid connection function can determine if an attempted connection is valid or not, i.e. abort creating a new edge */ /** A valid connection function can determine if an attempted connection is valid or not, i.e. abort creating a new edge */
export type ValidConnectionFunc = ( export type ValidConnectionFunc = (
connection: Connection, connection: Connection,
elements: { edges: GraphEdge[]; sourceNode: GraphNode; targetNode: GraphNode }, elements: { edges: GraphEdge[]; nodes: GraphNode[]; sourceNode: GraphNode; targetNode: GraphNode },
) => boolean ) => boolean
export type HandleConnectableFunc = (node: GraphNode, connectedEdges: GraphEdge[]) => boolean export type HandleConnectableFunc = (node: GraphNode, connectedEdges: GraphEdge[]) => boolean
+2
View File
@@ -151,6 +151,7 @@ export function isValidHandle(
isValidConnection: ValidConnectionFunc, isValidConnection: ValidConnectionFunc,
doc: Document | ShadowRoot, doc: Document | ShadowRoot,
edges: GraphEdge[], edges: GraphEdge[],
nodes: GraphNode[],
findNode: Actions['findNode'], findNode: Actions['findNode'],
) { ) {
const isTarget = fromType === 'target' const isTarget = fromType === 'target'
@@ -201,6 +202,7 @@ export function isValidHandle(
if (isValid) { if (isValid) {
result.isValid = isValidConnection(connection, { result.isValid = isValidConnection(connection, {
edges, edges,
nodes,
sourceNode: findNode(connection.source)!, sourceNode: findNode(connection.source)!,
targetNode: findNode(connection.target)!, targetNode: findNode(connection.target)!,
}) })