/* =====================================================
   MÓDULO: SIDEBAR - SINAGEM
   =====================================================

   Lógica específica da navegação lateral.

   FUNÇÕES:
   - Expandir/colapsar menu
   - Destaque de item ativo
   - Toggle mobile
   ===================================================== */

Sinagem.Sidebar = Sinagem.Sidebar || {};

/**
 * Definir item ativo na sidebar
 */
Sinagem.Sidebar.setActiveItem = function() {
    const currentPath = window.location.pathname;

    // Remover active de todos
    document.querySelectorAll('#sidebar-wrapper .list-group-item').forEach(item => {
        item.classList.remove('active');
    });

    // Ativar o item da rota atual
    const activeLinks = document.querySelectorAll(`#sidebar-wrapper a[href="${currentPath}"]`);
    activeLinks.forEach(link => {
        link.classList.add('active');

        // Expandir accordion se necessário
        const accordionItem = link.closest('.accordion-item');
        if (accordionItem) {
            const collapse = accordionItem.querySelector('.accordion-collapse');
            if (collapse) {
                collapse.classList.add('show');
                const button = accordionItem.querySelector('.accordion-button');
                if (button) {
                    button.classList.remove('collapsed');
                    button.setAttribute('aria-expanded', 'true');
                }
            }
        }
    });
};

/**
 * Toggle de uma seção do accordion
 */
Sinagem.Sidebar.toggleSection = function(sectionId) {
    const button = document.querySelector(`[data-bs-target="#${sectionId}"]`);
    if (button) {
        button.click();
    }
};

/**
 * Navegar para uma seção
 */
Sinagem.Sidebar.navigateTo = function(routeName) {
    // Implementar com rotas nomeadas do Laravel quando necessário
    console.log('Navegando para:', routeName);
};

console.log('📱 Módulo Sidebar carregado');
