UNPKG

@delove/reaflow

Version:

Node-based Visualizations for React

53 lines (52 loc) 1.7 kB
import { EdgeData, NodeData, PortData } from '../types'; /** * Helper function for upserting a node in a edge. */ export declare function upsertNode(nodes: NodeData[], edges: EdgeData[], edge: EdgeData, newNode: NodeData): { nodes: NodeData<any>[]; edges: EdgeData<any>[]; }; /** * Helper function for removing a node between edges and * linking the children. */ export declare function removeAndUpsertNodes(nodes: NodeData[], edges: EdgeData[], removeNodes: NodeData | NodeData[], onNodeLinkCheck?: (newNodes: NodeData[], newEdges: EdgeData[], from: NodeData, to: NodeData, port?: PortData) => undefined | boolean): { edges: EdgeData<any>[]; nodes: NodeData<any>[]; }; /** * Helper function to remove a node and its related edges. */ export declare function removeNode(nodes: NodeData[], edges: EdgeData[], removeNodes: string | string[]): { nodes: any[]; edges: any[]; }; /** * Helper function to remove a node's related edges. */ export declare function removeEdgesFromNode(nodeId: string, edges: EdgeData[]): EdgeData<any>[]; /** * Remove edge(s) */ export declare function removeEdge(edges: EdgeData[], edge: EdgeData | EdgeData[]): EdgeData<any>[]; /** * Create an edge given 2 nodes. */ export declare function createEdgeFromNodes(fromNode: NodeData, toNode: NodeData): { id: string; from: string; to: string; parent: string; }; /** * Add a node and optional edge. */ export declare function addNodeAndEdge(nodes: NodeData[], edges: EdgeData[], node: NodeData, toNode?: NodeData): { nodes: NodeData<any>[]; edges: (EdgeData<any> | { id: string; from: string; to: string; parent: string; })[]; };