refactor(core): allow passing single element to add actions

Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
This commit is contained in:
braks
2023-05-11 15:33:42 +02:00
committed by Braks
parent d9f8cf49d2
commit ca9eda98dd
2 changed files with 11 additions and 4 deletions
+4 -2
View File
@@ -413,7 +413,8 @@ export function useActions(
}
const addNodes: Actions['addNodes'] = (nodes) => {
const nextNodes = nodes instanceof Function ? nodes(state.nodes) : nodes
let nextNodes = nodes instanceof Function ? nodes(state.nodes) : nodes
nextNodes = Array.isArray(nextNodes) ? nextNodes : [nextNodes]
const graphNodes = createGraphNodes(nextNodes, state.nodes, findNode, state.hooks.error.trigger)
@@ -425,7 +426,8 @@ export function useActions(
}
const addEdges: Actions['addEdges'] = (params) => {
const nextEdges = params instanceof Function ? params(state.edges) : params
let nextEdges = params instanceof Function ? params(state.edges) : params
nextEdges = Array.isArray(nextEdges) ? nextEdges : [nextEdges]
const validEdges = state.isValidConnection
? nextEdges.filter((edge) =>
+7 -2
View File
@@ -150,7 +150,7 @@ export type SetNodes = (nodes: Node[] | ((nodes: GraphNode[]) => Node[])) => voi
export type SetEdges = (edges: Edge[] | ((edges: GraphEdge[]) => Edge[])) => void
export type AddNodes = (nodes: Node[] | ((nodes: GraphNode[]) => Node[])) => void
export type AddNodes = (nodes: Node | Node[] | ((nodes: GraphNode[]) => Node | Node[])) => void
export type RemoveNodes = (
nodes: (Node[] | string[]) | ((nodes: GraphNode[]) => Node[] | string[]),
@@ -159,7 +159,12 @@ export type RemoveNodes = (
export type RemoveEdges = (edges: (Edge[] | string[]) | ((edges: GraphEdge[]) => Edge[] | string[])) => void
export type AddEdges = (edgesOrConnections: (Edge | Connection)[] | ((edges: GraphEdge[]) => (Edge | Connection)[])) => void
export type AddEdges = (
edgesOrConnections:
| (Edge | Connection)
| (Edge | Connection)[]
| ((edges: GraphEdge[]) => (Edge | Connection) | (Edge | Connection)[]),
) => void
export type UpdateEdge = (oldEdge: GraphEdge, newConnection: Connection, shouldReplaceId?: boolean) => GraphEdge | false