import React, { useState, useEffect } from 'react'; const API_BASE = import.meta.env.VITE_API_URL || 'http://localhost:8000'; export default function CommandHeader() { const [stats, setStats] = useState({ psiStatus: 'GREEN', psiScore: 0.041, wmapeLift: 24.3, mcpTools: 35, connected: true, }); useEffect(() => { const fetchStats = async () => { try { const res = await fetch(`${API_BASE}/api/analytics/summary`); if (res.ok) { const data = await res.json(); setStats(prev => ({ ...prev, connected: true, })); } } catch { // Keeps fallback } }; fetchStats(); const interval = setInterval(fetchStats, 30000); return () => clearInterval(interval); }, []); return (
{/* Brand Badge */}
HYPERFLOW OPERATING SYSTEM
{/* Live Stat Badges */}
PSI DRIFT
{stats.psiStatus} ({stats.psiScore})
WMAPE LIFT +{stats.wmapeLift}%
SWIGGY MCP {stats.mcpTools} Tools
STATUS {stats.connected ? 'Connected' : 'Offline'}
); } const styles = { header: { height: 60, background: 'rgba(10, 9, 13, 0.8)', backdropFilter: 'blur(16px)', borderBottom: '1px solid var(--bg-border)', display: 'flex', alignItems: 'center', justifyContent: 'space-between', padding: '0 24px', flexShrink: 0, zIndex: 20, }, brandGroup: { display: 'flex', alignItems: 'center', gap: 12, }, logoPill: { display: 'flex', alignItems: 'center', gap: 8, padding: '6px 14px', background: 'rgba(255, 51, 102, 0.08)', border: '1px solid rgba(255, 51, 102, 0.25)', borderRadius: 'var(--radius-pill)', fontFamily: 'var(--font-sans)', fontSize: 11, fontWeight: 700, color: 'var(--accent-coral-pink)', letterSpacing: '0.08em', }, logoDot: { width: 6, height: 6, borderRadius: '50%', background: 'var(--accent-coral)', boxShadow: '0 0 8px var(--accent-coral)', }, statGroup: { display: 'flex', alignItems: 'center', gap: 12, }, statCard: { display: 'flex', alignItems: 'center', gap: 8, padding: '6px 14px', background: 'rgba(18, 16, 23, 0.7)', border: '1px solid var(--bg-border)', borderRadius: 'var(--radius-pill)', fontFamily: 'var(--font-sans)', fontSize: 12, }, statLabel: { fontSize: 10, fontWeight: 700, color: 'var(--text-muted)', letterSpacing: '0.06em', }, valGroup: { display: 'flex', alignItems: 'center', gap: 5, }, dotGreen: { width: 6, height: 6, borderRadius: '50%', background: 'var(--accent-emerald)', boxShadow: '0 0 6px var(--accent-emerald)', }, statSub: { fontSize: 11, color: 'var(--text-secondary)', }, };