/** * Supera Glia - Tab Turmas (Wrapper com Sub-abas) * @module tabs/turmas/TurmasTab * * Esta é a tab principal que agrupa: * - Grade de Horários * - Alertas de Aulas * - Reposições */ (function() { 'use strict'; SuperaGlia.initTurmasTab = function() { const { useState } = SuperaGlia.hooks; const { Icon, AlertasTab, GradeTab, ReposicoesTab } = SuperaGlia; SuperaGlia.TurmasTab = ({ dados, carregarDados }) => { const [subTab, setSubTab] = useState('grade'); const tabs = [ { id: 'grade', label: 'Grade de Horários', icon: 'grid-3x3' }, { id: 'alertas', label: 'Alertas de Aulas', icon: 'bell' }, { id: 'reposicoes', label: 'Reposições', icon: 'calendar-clock' } ]; return React.createElement('div', { className: 'space-y-4' }, // Navegação das sub-abas React.createElement('div', { className: 'flex gap-2 bg-white rounded-xl p-2 shadow-sm border border-gray-100' }, tabs.map(tab => React.createElement('button', { key: tab.id, onClick: () => setSubTab(tab.id), className: `flex items-center gap-2 px-4 py-2.5 rounded-lg text-sm font-medium transition-all ${ subTab === tab.id ? 'bg-orange-500 text-white shadow-md' : 'text-gray-600 hover:bg-gray-100' }` }, React.createElement(Icon, { name: tab.icon, className: 'w-4 h-4' }), tab.label )) ), // Conteúdo da sub-aba subTab === 'grade' && React.createElement(GradeTab, { dados, carregarDados }), subTab === 'alertas' && React.createElement(AlertasTab), subTab === 'reposicoes' && React.createElement(ReposicoesTab, { dados }) ); }; }; })();