import React from 'react'; import { LayoutDashboard, ShoppingCart, Layers, Clock, BarChart3, Settings as SettingsIcon, Sparkles, PackagePlus, Coins, Cpu, Database, RefreshCw, } from 'lucide-react'; import { useApp } from '../../context/AppContext'; import { formatCurrency } from '../../utils/calculations'; export const TopHeader: React.FC = () => { const { currentTab, inventory, projects, dbSyncStatus, setShowNewProjectModal, setShowNewInventoryModal, authSession, setShowAuthModal, } = useApp(); // Quick topbar calculations const totalStockValuation = inventory.reduce( (acc, item) => acc + item.quantityInStock * (item.unitPurchasePrice + (item.shippingCostShare || 0) + (item.taxImportShare || 0)), 0 ); const activeProjectsCount = projects.filter( (p) => p.status === 'in_progress' || p.status === 'qc_testing' ).length; const getPageInfo = () => { switch (currentTab) { case 'dashboard': return { title: 'Tableau de Bord & Finances', subtitle: 'Vue d\'ensemble des performances, graphiques et pipeline d\'atelier', icon: LayoutDashboard, iconColor: 'text-pink-400', }; case 'purchases': return { title: 'Achats & Gestion des Stocks', subtitle: 'Consoles donneuses, écrans IPS, coques, composants et alertes de stock', icon: ShoppingCart, iconColor: 'text-cyan-400', }; case 'projects': return { title: 'Centre de Dépenses Projets', subtitle: 'Nomenclature pièces (BOM), temps d\'atelier, coût de revient et certificats', icon: Layers, iconColor: 'text-purple-400', }; case 'timetracker': return { title: 'Chronomètre d\'Atelier & Main d\'Œuvre', subtitle: 'Chronométrage des sessions de modding et valorisation horaire en direct', icon: Clock, iconColor: 'text-amber-400', }; case 'analytics': return { title: 'Rentabilité & Simulateur de Prix', subtitle: 'Calculateur de marge nette, point mort (break-even) et analyse par console', icon: BarChart3, iconColor: 'text-emerald-400', }; case 'settings': return { title: 'Paramètres & Sauvegardes', subtitle: 'Identité de l\'atelier, taux horaire par défaut, thèmes et connexion NoCodeBackend', icon: SettingsIcon, iconColor: 'text-slate-300', }; default: return { title: 'uwuFinances', subtitle: 'Console Modding Studio Hub', icon: LayoutDashboard, iconColor: 'text-pink-400', }; } }; const pageInfo = getPageInfo(); const Icon = pageInfo.icon; return (
{/* Page Title & Breadcrumb */}

{pageInfo.title}

{pageInfo.subtitle}

{/* Right Stats & Quick Actions */}
{/* User Profile & JWT Button */} {/* Cloud Database Status indicator */} {/* Quick Inventory Stock Valuation badge */}
Stock valorisé: {formatCurrency(totalStockValuation)}
{/* Active Projects badge */}
En cours: {activeProjectsCount} projet{activeProjectsCount > 1 ? 's' : ''}
{/* Quick Add Part */} {/* Quick New Project */}
); };