Skip to content

Commit ce9a51d

Browse files
committed
chore(core): update find action types
Signed-off-by: braks <[email protected]>
1 parent 93bed0d commit ce9a51d

File tree

1 file changed

+12
-6
lines changed

1 file changed

+12
-6
lines changed

packages/core/src/store/actions.ts

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -63,28 +63,34 @@ export function useActions(
6363
state.hooks.updateNodeInternals.trigger(updateIds)
6464
}
6565

66-
const findNode: Actions['findNode'] = (id) => {
66+
const findNode: Actions['findNode'] = <T extends GraphNode = GraphNode>(id) => {
6767
if (!id) {
6868
return
6969
}
7070

71+
let node
7172
if (state.nodes && !nodeIds.value.length) {
72-
return state.nodes.find((node) => node.id === id)
73+
node = state.nodes.find((node) => node.id === id)
74+
} else {
75+
node = state.nodes[nodeIds.value.indexOf(id)]
7376
}
7477

75-
return state.nodes[nodeIds.value.indexOf(id)]
78+
return node as T | undefined
7679
}
7780

78-
const findEdge: Actions['findEdge'] = (id) => {
81+
const findEdge: Actions['findEdge'] = <T extends GraphEdge = GraphEdge>(id) => {
7982
if (!id) {
8083
return
8184
}
8285

86+
let edge
8387
if (state.edges && !edgeIds.value.length) {
84-
return state.edges.find((edge) => edge.id === id)
88+
edge = state.edges.find((edge) => edge.id === id)
89+
} else {
90+
edge = state.edges[edgeIds.value.indexOf(id)]
8591
}
8692

87-
return state.edges[edgeIds.value.indexOf(id)]
93+
return edge as T | undefined
8894
}
8995

9096
const updateNodePositions: Actions['updateNodePositions'] = (dragItems, changed, dragging) => {

0 commit comments

Comments
 (0)