@livewireStyles @php($config = \App\Models\Configuracao::atual()) {{-- Logo "de marca" pro canto do painel gerencial: usa a logo da empresa se tiver sido cadastrada, senão cai pra logo da câmara mesmo. --}} @php($logoTopo = $config->logo_empresa_path ?? $config->logo_path) {{-- Consulta única e leve (status já é indexado, ver migration de sessoes) — só pra decidir se mostra o indicador "AO VIVO", nada pesado. Calculada aqui (não dentro do @if de permissão) pra poder ser reaproveitada tanto no menu desktop quanto no menu mobile sem duplicar a consulta/lógica. --}} @php($haSessaoAtivaAgora = \App\Models\Sessao::where('status', 'ativa')->exists()) {{-- Itens do menu administrativo — ÚNICA lista, usada tanto no menu desktop quanto no off-canvas mobile (ver body abaixo), pra nunca divergir uma da outra. Cada item: rota nomeada, módulo exigido (null = sempre visível pra qualquer operador logado), ícone Font Awesome já usado no projeto, e classe do botão desktop. --}} @php($menuItens = [ ['modulo' => null, 'rota' => 'admin.dashboard', 'label' => 'Painel', 'icone' => 'fa-house', 'classe' => 'btn round', 'ativo' => 'admin.dashboard'], ['modulo' => 'sessoes', 'rota' => 'admin.central-sessao', 'label' => 'Central da Sessão', 'icone' => 'fa-gauge-high', 'classe' => 'btn round', 'aoVivo' => true, 'ativo' => 'admin.central-sessao'], ['modulo' => 'sessoes', 'rota' => 'admin.sessoes.create', 'label' => 'Sessão', 'icone' => 'fa-calendar-plus', 'classe' => 'btn primary round', 'ativo' => 'admin.sessoes.*'], ['modulo' => 'materias', 'rota' => 'admin.materias.index', 'label' => 'Matérias', 'icone' => 'fa-file-lines', 'classe' => 'btn primary round', 'ativo' => 'admin.materias.*'], ['modulo' => 'usuarios', 'rota' => 'admin.usuarios.index', 'label' => 'Usuários', 'icone' => 'fa-users', 'classe' => 'btn primary round', 'ativo' => 'admin.usuarios.*'], ['modulo' => 'legislaturas', 'rota' => 'admin.legislaturas.index', 'label' => 'Legislaturas', 'icone' => 'fa-landmark', 'classe' => 'btn round', 'ativo' => 'admin.legislaturas*'], ['modulo' => 'comissoes', 'rota' => 'admin.comissoes.index', 'label' => 'Comissões', 'icone' => 'fa-people-group', 'classe' => 'btn round', 'ativo' => 'admin.comissoes.*'], ['modulo' => 'cadastros', 'rota' => 'admin.cadastros.index', 'label' => 'Cadastros', 'icone' => 'fa-list-check', 'classe' => 'btn round', 'ativo' => 'admin.cadastros.*'], ['modulo' => 'protocolo', 'rota' => 'admin.protocolos.index', 'label' => 'Protocolo', 'icone' => 'fa-inbox', 'classe' => 'btn round', 'ativo' => 'admin.protocolos.*'], ['modulo' => 'leis', 'rota' => 'admin.leis.index', 'label' => 'Leis', 'icone' => 'fa-scroll', 'classe' => 'btn round', 'ativo' => 'admin.leis.*'], ['modulo' => 'atas', 'rota' => 'admin.atas.index', 'label' => 'Atas', 'icone' => 'fa-book', 'classe' => 'btn round', 'ativo' => 'admin.atas.*'], ['modulo' => 'relatorios', 'rota' => 'admin.relatorios.index', 'label' => 'Relatórios', 'icone' => 'fa-chart-line', 'classe' => 'btn round', 'ativo' => 'admin.relatorios*'], ['modulo' => 'configuracoes', 'rota' => 'admin.configuracoes.edit', 'label' => 'Configurações', 'icone' => 'fa-gear', 'classe' => 'btn round', 'ativo' => 'admin.configuracoes*'], ])
@if($logoTopo) Logo @endif {{ $config->nome_camara }}
{{-- Só aparece abaixo do breakpoint mobile (ver CSS .admin-menu-toggle) — nunca simultaneamente com .nav-actions. Estado (mobileMenuOpen) vem do x-data no , compartilhado com o overlay/painel abaixo — por isso este botão não declara x-data próprio. --}}
{{-- ===== Menu mobile (hambúrguer / off-canvas) ===== Estado (mobileMenuOpen) mora no (ver abaixo) pra ser compartilhado entre o botão ☰ acima, o overlay e o painel — sem isso cada um teria sua própria cópia do estado e nada abriria/ fecharia em conjunto. Mesma lista $menuItens do desktop, nunca duplicada. --}}
@if(session('sucesso'))
{{ session('sucesso') }}
@endif @if($errors->any())
@endif {{ $slot }}
@livewireScripts