import { AlertTriangle, Briefcase, Crown, Layers, MapPin, Radar, RefreshCw, ShieldAlert, ShieldCheck, Target, TrendingUp, Users, } from 'lucide-react' import { useCommandCenter } from '../lib/queries' import { Badge, Bar, Panel, Stat } from '../components/ui' import { Gauge } from '../components/Gauge' import { bandColor, num, stateColor } from '../lib/format' import type { CCRecommendation } from '../lib/types' function money(v: string | null | undefined): string { if (!v) return 'n/a' const n = Number(v) if (!Number.isFinite(n)) return 'n/a' if (n >= 1e9) return `$${(n / 1e9).toFixed(2)}B` if (n >= 1e6) return `$${(n / 1e6).toFixed(1)}M` if (n >= 1e3) return `$${(n / 1e3).toFixed(0)}K` return `$${n}` } const riskColor: Record = { high: 'var(--color-risk)', medium: 'var(--color-warn)', low: 'var(--color-ok)', } const sevColor: Record = { high: 'var(--color-risk)', critical: 'var(--color-risk)', medium: 'var(--color-warn)', warning: 'var(--color-warn)', low: 'var(--color-blue-soft)', info: 'var(--color-blue-soft)', } export function CommandCenter() { const { data: d, isLoading, refetch, isFetching } = useCommandCenter() if (isLoading || !d) { return Aggregating mission readiness… } const mr = d.mission_readiness const ci = d.clearance_intelligence return (
{/* header */}

Workforce Command Center™

Can we staff this mission today? · as of {d.as_of}
{/* SECTION: banner */}
} /> } /> } /> } /> 0 ? 'var(--color-warn)' : undefined} icon={} /> 0 ? 'var(--color-risk)' : undefined} icon={} />
{/* LEFT: opportunities + clearance */}
{d.active_opportunities.map((o) => (
{o.name}
{o.customer_agency} · {money(o.value)}
{o.staffing_risk}
{num(o.readiness_score).toFixed(0)}%
))}
{ci.inventory_by_level.map((l) => { const max = Math.max(...ci.inventory_by_level.map((x) => x.total), 1) return (
{l.label} {l.total.toLocaleString()} · {l.available} avail
) })}
{ci.inventory_by_poly.map((p) => ( {p.label} {p.total} ))}
{[ ['Now', ci.availability_windows.now], ['30d', ci.availability_windows.d30], ['60d', ci.availability_windows.d60], ['90d', ci.availability_windows.d90], ].map(([k, v]) => (
{(v as number).toLocaleString()}
{k as string}
))}
{(ci.expiring.due_90 > 0 || ci.expiring.expired > 0) && (
{ci.expiring.expired} expired · {ci.expiring.due_90} expiring ≤90d
)}
{/* CENTER: mission readiness + labor category */}
{mr.drivers.map((dr) => (
{dr.label} {num(dr.pct).toFixed(0)}%
))}
{d.labor_category_coverage.map((c) => (
{c.labor_category} {c.filled}/{c.demanded} ·{' '} {num(c.coverage).toFixed(0)}%
))}
{/* RIGHT: staffing gaps + proposal readiness */}
{d.staffing_gaps.length === 0 ? (

Fully staffed against current demand.

) : (
{d.staffing_gaps.map((g) => (
{g.headline} {g.blocks_key_personnel && ( KP )}
{g.value_at_risk ? `${money(g.value_at_risk)} at risk · ` : ''} {g.impacted_opportunities.slice(0, 2).join(', ')}
))}
)}
{[ ['Ready', d.proposal_readiness.ready, 'var(--color-ok)'], ['At Risk', d.proposal_readiness.at_risk, 'var(--color-warn)'], ['KP Missing', d.proposal_readiness.key_personnel_missing, 'var(--color-risk)'], ['LCAT Missing', d.proposal_readiness.labor_categories_missing, 'var(--color-warn)'], ].map(([k, v, c]) => (
{v as number}
{k as string}
))}
{/* ROW: win impact + heat map + recommendations */}
{d.win_impact.high_impact_count}
high-impact candidates
    {d.win_impact.top.slice(0, 5).map((c) => (
  • {c.full_name} {c.clearance_level === 'ts_sci' ? 'TS/SCI' : c.clearance_level} · {c.years_experience}y
  • ))}
{d.heat_map.slice(0, 8).map((m) => { const max = Math.max(...d.heat_map.map((x) => x.total), 1) return (
{m.metro} {m.total}
) })}
    {d.ai_recommendations.map((r: CCRecommendation, i) => (
  • {r.message}
  • ))}
{/* Executive Action Center */}
{d.action_center.open_opportunities_without_slate} opps without a slate ·{' '} {d.action_center.requirements_unscreened} requirements unscreened
) }