/* eslint-disable */
function Sidebar({ active, onNav }) {
  const items = [
    { id: 'dashboard',  icon: 'layout-dashboard', label: 'Visão geral' },
    { id: 'orcamentos', icon: 'file-text',        label: 'Orçamentos' },
    { id: 'projetos',   icon: 'clipboard-list',   label: 'Projetos' },
    { id: 'producao',   icon: 'hammer',           label: 'Produção' },
    { id: 'estoque',    icon: 'package',          label: 'Estoque' },
    { id: 'clientes',   icon: 'users',            label: 'Clientes' },
    { id: 'financeiro', icon: 'wallet',           label: 'Financeiro' },
  ];
  return (
    <aside className="mp-sidebar">
      <div className="mp-sidebar__brand">
        <img src="assets/logos/marceneiropro-logo-color.svg" alt="MarceneiroPRO" />
      </div>
      <nav className="mp-sidebar__nav">
        {items.map(it => (
          <button
            key={it.id}
            className={`mp-sidebar__item ${active === it.id ? 'is-active' : ''}`}
            onClick={() => onNav && onNav(it.id)}>
            <i data-lucide={it.icon}></i>
            <span>{it.label}</span>
          </button>
        ))}
      </nav>
      <div className="mp-sidebar__footer">
        <button className="mp-sidebar__item">
          <i data-lucide="settings"></i><span>Ajustes</span>
        </button>
        <div className="mp-sidebar__pro">
          <span className="mp-sidebar__pro-badge">PRO</span>
          <div style={{flex: 1}}>
            <div className="mp-sidebar__pro-title">Desbloqueie o PRO</div>
            <div className="mp-sidebar__pro-sub">Plano de corte, terceirizados e mais.</div>
            <button className="mp-sidebar__pro-cta">Fazer upgrade</button>
          </div>
        </div>
      </div>
    </aside>
  );
}

function TopBar({ title, subtitle, ctaLabel, onCta, secondary }) {
  return (
    <header className="mp-topbar">
      <div>
        <div className="mp-topbar__title">{title}</div>
        {subtitle && <div className="mp-topbar__sub">{subtitle}</div>}
      </div>
      <div className="mp-topbar__right">
        <div className="mp-search">
          <i data-lucide="search"></i>
          <input placeholder="Buscar clientes, orçamentos, projetos…" />
        </div>
        <button className="mp-icon-btn" aria-label="Notificações">
          <i data-lucide="bell"></i>
          <span className="mp-notif-dot"></span>
        </button>
        {secondary && (
          <div className="mp-topbar__actions-group">
            {secondary.map((s, i) => (
              <button key={i} className="mp-btn mp-btn--ghost" onClick={s.onClick}>
                <i data-lucide={s.icon}></i>{s.label}
              </button>
            ))}
          </div>
        )}
        {ctaLabel && (
          <button className="mp-btn mp-btn--primary" onClick={onCta}>
            <i data-lucide="plus"></i>{ctaLabel}
          </button>
        )}
        <div className="mp-avatar">CF</div>
      </div>
    </header>
  );
}

window.Sidebar = Sidebar;
window.TopBar = TopBar;
