Files
zui/frontend/src/app/canvas/canvasStore.index.ts
2026-03-20 00:04:46 +01:00

45 lines
1.1 KiB
TypeScript

/**
* Canvas store: centralized state + commands + selectors.
* Entry point for store usage.
*/
export {
getCanvasStore,
dispatchCanvasCommand,
useCanvasStore,
useCanvasStoreDispatch,
canvasStore,
} from './canvasStore'
export type { CanvasStore, CanvasCommand } from './canvasStore'
export { initialCanvasStore, canvasStoreReducer } from './canvasStore.reducer'
export type { CanvasStore as CanvasStoreState, PathSlice, UISlice, GraphSlice, ConnectionFrom } from './canvasStore.types'
export {
selectGraph,
selectPath,
selectUI,
selectNodes,
selectEdges,
selectPathNodeIds,
selectPathActiveSegmentNodeIds,
selectConnectionStatusForEdge,
selectPathRoleForNode,
selectRenamingNodeId,
selectFullscreenNodeId,
selectConnectionFrom,
// Fine-grained selectors
selectNodeById,
selectNodesById,
selectNodesByType,
selectNodeIdsByType,
selectEdgesBySource,
selectEdgesByTarget,
selectEdgesForNode,
selectNodeCount,
selectEdgeCount,
selectHasNode,
selectHasEdge,
// SVG detection
isSvgContent,
} from './canvasStore.selectors'
export type { ConnectionPathRole } from './canvasStore.selectors'