2025-10-16 11:38:51 +05:30
|
|
|
import { create } from "zustand";
|
|
|
|
|
import { immer } from "zustand/middleware/immer";
|
|
|
|
|
|
2025-12-20 09:43:28 +05:30
|
|
|
interface PanelPosition {
|
|
|
|
|
x: number;
|
|
|
|
|
y: number;
|
|
|
|
|
}
|
|
|
|
|
|
2025-10-16 11:38:51 +05:30
|
|
|
interface VisualizationState {
|
2025-12-20 09:43:28 +05:30
|
|
|
editorPosition: PanelPosition | null;
|
|
|
|
|
setEditorPosition: (position: PanelPosition) => void;
|
2025-10-16 11:38:51 +05:30
|
|
|
}
|
|
|
|
|
|
|
|
|
|
export const useVisualizationStore = create<VisualizationState>()(
|
|
|
|
|
immer((set) => ({
|
2025-12-20 09:43:28 +05:30
|
|
|
editorPosition: null,
|
|
|
|
|
setEditorPosition: (position) =>
|
|
|
|
|
set((state) => {
|
|
|
|
|
state.editorPosition = position;
|
|
|
|
|
}),
|
2025-10-16 11:38:51 +05:30
|
|
|
}))
|
|
|
|
|
);
|