From b503bc0bef0e856f660ceb7dc73cf37ea3ac934a Mon Sep 17 00:00:00 2001 From: Vladislav Syrochkin Date: Tue, 22 Jul 2025 08:08:15 +0500 Subject: [PATCH] feat(client): init store for nodes --- client/src/store/nodeStore.ts | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 client/src/store/nodeStore.ts diff --git a/client/src/store/nodeStore.ts b/client/src/store/nodeStore.ts new file mode 100644 index 0000000..a929861 --- /dev/null +++ b/client/src/store/nodeStore.ts @@ -0,0 +1,25 @@ +import { Edge, Node } from "@xyflow/react"; +import { create } from "zustand"; +import { devtools } from "zustand/middleware"; + +type NodeStoreState = { + node: Node; + edge: Edge; + loading: boolean; +}; + +type NodeStoreActions = { + addNode: (node: Node) => void; + addEdge: (edge: Edge) => void; + removeNode: (nodeId: string) => void; + removeEdge: (edgeId: string) => void; +}; + +type NodeStore = NodeStoreState & NodeStoreActions; + +export const useNodeStore = create()( + devtools((set) => ({ + nodes: [], + edges: [], + })) +);