/** * dashboard-client/src/components/TabBar.tsx — tab navigation with Advanced collapse. * * PRIMARY_TABS are always visible. The remaining tabs collapse behind an * "Advanced" toggle button. */ import React, { useState } from "react"; import type { TabId } from "../App"; export interface TabBarProps { primaryTabs: Array<{ id: TabId; label: string }>; advancedTabs: Array<{ id: TabId; label: string }>; advancedTabIds: ReadonlySet; active: TabId; onTabChange: (id: TabId) => void; } export function TabBar({ primaryTabs, advancedTabs, advancedTabIds, active, onTabChange, }: TabBarProps): React.ReactElement { const [advancedOpen, setAdvancedOpen] = useState( () => advancedTabIds.has(active), // start open if an advanced tab is active ); return ( ); }