import { Routes, Route } from 'react-router-dom'; import { FlowCanvas } from './components/Canvas/FlowCanvas'; import { PathSelector } from './components/Sidebar/PathSelector'; import { StepList } from './components/Sidebar/StepList'; import { SidebarFooter } from './components/Sidebar/SidebarFooter'; import { PlaybackBar } from './components/Controls/PlaybackBar'; import { TopNavBar } from './components/Navigation/TopNavBar'; import { RightPanel } from './components/DetailPanel/RightPanel'; import { RulesLegendPanel } from './components/Reference/RulesLegendPanel'; import { CommandPalette } from './components/shared/CommandPalette'; import { SystemLogsTerminal } from './components/Logs/SystemLogsTerminal'; import { SubPathDetailPage } from './pages/SubPathDetailPage'; import { RoleSelectPage } from './pages/RoleSelectPage'; import { StakeholderDocPage } from './pages/StakeholderDocPage'; import { usePlayback } from './hooks/usePlayback'; import { useFlowStore } from './store/useFlowStore'; import { Icon } from './components/shared/Icon'; const railStyle = { borderColor: 'var(--color-border-default)', background: 'var(--color-bg-primary)', }; function Dashboard() { usePlayback(); const isLogsPanelOpen = useFlowStore((s) => s.isLogsPanelOpen); const isLeftPanelOpen = useFlowStore((s) => s.isLeftPanelOpen); const isRightPanelOpen = useFlowStore((s) => s.isRightPanelOpen); const toggleLeftPanel = useFlowStore((s) => s.toggleLeftPanel); const toggleRightPanel = useFlowStore((s) => s.toggleRightPanel); return (
{/* Left Sidebar (collapsible — collapse to widen the canvas) */} {isLeftPanelOpen ? ( ) : (
)} {/* Main Canvas Area */}
{/* Canvas */}
{/* System Logs (collapsible) */} {isLogsPanelOpen && (
)} {/* Playback Controls */}
{/* Right Detail Panel (collapsible — collapse to widen the canvas) */} {isRightPanelOpen ? ( ) : (
)}
); } function App() { return (
} /> } /> } /> } />
); } export default App;