Files
stack/apps/web/src/components/mission-control/MissionControlPanel.tsx
Jason Woltje 631ba499e3
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
feat(web): MS23-P2-002 OrchestratorPanel SSE stream component
2026-03-07 14:14:57 -06:00

28 lines
758 B
TypeScript

"use client";
import { OrchestratorPanel } from "@/components/mission-control/OrchestratorPanel";
interface MissionControlPanelProps {
panels: readonly string[];
panelSessionIds?: readonly (string | undefined)[];
}
export function MissionControlPanel({
panels,
panelSessionIds,
}: MissionControlPanelProps): React.JSX.Element {
return (
<div className="grid h-full min-h-0 auto-rows-fr grid-cols-1 gap-4 overflow-y-auto pr-1 md:grid-cols-2">
{panels.map((panelId, index) => {
const sessionId = panelSessionIds?.[index];
if (sessionId === undefined) {
return <OrchestratorPanel key={panelId} />;
}
return <OrchestratorPanel key={panelId} sessionId={sessionId} />;
})}
</div>
);
}