diff --git a/src/hooks/useEdges.ts b/src/hooks/useEdges.ts new file mode 100644 index 00000000..eb2fa464 --- /dev/null +++ b/src/hooks/useEdges.ts @@ -0,0 +1,12 @@ +import { useStore } from '../store'; +import { Edge, ReactFlowState } from '../types'; + +const edgesSelector = (state: ReactFlowState) => state.edges; + +function useEdges(): Edge[] { + const edges = useStore(edgesSelector); + + return edges; +} + +export default useEdges; diff --git a/src/hooks/useNodes.ts b/src/hooks/useNodes.ts new file mode 100644 index 00000000..8a728a2d --- /dev/null +++ b/src/hooks/useNodes.ts @@ -0,0 +1,12 @@ +import { useStore } from '../store'; +import { Node, ReactFlowState } from '../types'; + +const nodesSelector = (state: ReactFlowState) => Array.from(state.nodeInternals.values()); + +function useNodes(): Node[] { + const nodes = useStore(nodesSelector); + + return nodes; +} + +export default useNodes;