import { useEditorStore } from '@/stores/editorStore'; import { useAIStore } from '@/stores/aiStore'; import { useWebSocket } from '@/hooks/useWebSocket'; import { cn } from '@/lib/utils'; import { Tooltip, TooltipTrigger, TooltipContent, TooltipProvider } from '@/components/ui/tooltip'; const agents = ['security', 'performance', 'style', 'documentation'] as const; export default function StatusBar() { const activeFilePath = useEditorStore((s) => s.activeFilePath); const activeFile = useEditorStore((s) => activeFilePath ? s.openFiles[activeFilePath] : null); const agentRunning = useAIStore((s) => s.agentRunning); const { isConnected } = useWebSocket(); return (
{/* Left */}
{activeFile && ( {activeFile.language} )} main
{/* Center — Agent status dots */}
{agents.map((agent) => { const running = agentRunning[agent]; return ( {agent} agent: {running ? 'running' : 'idle'} ); })}
{/* Right */}
{activeFile && ( Ln {activeFile.cursorPosition.lineNumber}, Col {activeFile.cursorPosition.column} )} UTF-8 ASI-1
); }