// Sidebar.jsx
'use strict';
const { useState } = React;
const NAV = [
{ id:'dashboard', label:'Dashboard', icon:'LayoutDashboard' },
{ id:'os', label:'Ordens de Serviço', icon:'FileText' },
{ id:'clientes', label:'Clientes', icon:'Users' },
{ id:'agenda', label:'Agenda', icon:'Calendar' },
{ id:'servicos', label:'Serviços', icon:'Wrench' },
{ id:'financeiro', label:'Financeiro', icon:'DollarSign' },
{ id:'relatorios', label:'Relatórios', icon:'BarChart2' },
{ id:'configuracoes',label:'Configurações', icon:'Settings' },
];
function Sidebar({ page, setPage, user, onLogout, mobileOpen, onMobileClose }) {
const goTo = (id) => { setPage(id); onMobileClose(); };
const inner = (
{/* Decorative blobs */}
{/* Logo (com safe-area-top pra notch quando rodando como PWA) */}
{/* Nav */}
{/* User (com safe-area-bottom pra home indicator do iOS) */}
{user?.name?.split(' ').map(w => w[0]).slice(0,2).join('') || 'AD'}
{user?.name || 'Administrador'}
{user?.email || 'demo@juflow.com'}
);
return (
<>
{/* Desktop sidebar */}
{/* Mobile overlay */}
{mobileOpen && (
)}
>
);
}
Object.assign(window, { Sidebar });