import { BrowserRouter as Router, Routes, Route, Navigate } from 'react-router-dom'; import { Toaster } from 'react-hot-toast'; import { AuthProvider } from '@/app/providers/AuthContext'; import { ProtectedRoute } from '@/shared/components/ProtectedRoute'; import { LoginPage } from '@/pages/auth/LoginPage'; import { RegisterPage } from '@/pages/auth/RegisterPage'; import { ForgotPasswordPage } from '@/pages/auth/ForgotPasswordPage'; import DashboardComplete from '@/apps/student/pages/DashboardComplete'; import { MyProgressPage } from '@/pages/MyProgressPage'; import { ModuleDetailsPage } from '@/pages/ModuleDetailsPage'; import { AchievementsPage } from '@/pages/AchievementsPage'; import { LeaderboardPage } from '@/pages/LeaderboardPage'; import PasswordResetPage from '@/apps/student/pages/PasswordResetPage'; import EmailVerificationPage from '@/apps/student/pages/EmailVerificationPage'; import SettingsPage from '@/apps/student/pages/SettingsPage'; import MissionsPage from '@/apps/student/pages/MissionsPage'; import ExercisePage from '@/apps/student/pages/ExercisePage'; import NotFoundPage from '@/apps/student/pages/NotFoundPage'; import FriendsPage from '@/apps/student/pages/FriendsPage'; import ShopPage from '@/apps/student/pages/ShopPage'; import InventoryPage from '@/apps/student/pages/InventoryPage'; import GuildsPage from '@/apps/student/pages/GuildsPage'; import ModuleDetailPage from '@/apps/student/pages/ModuleDetailPage'; import EnhancedProfilePage from '@/apps/student/pages/EnhancedProfilePage'; import { NotificationPreferencesPage } from '@/apps/student/pages/NotificationPreferencesPage'; import { DeviceManagementSection } from '@/apps/student/pages/DeviceManagementSection'; import NotificationsPage from '@/apps/student/pages/NotificationsPage'; import AssignmentsPage from '@/apps/student/pages/AssignmentsPage'; // Teacher Portal Pages import TeacherDashboardPage from '@/apps/teacher/pages/TeacherDashboardPage'; import TeacherAlertsPage from '@/apps/teacher/pages/TeacherAlertsPage'; import TeacherAnalyticsPage from '@/apps/teacher/pages/TeacherAnalyticsPage'; import TeacherAssignmentsPage from '@/apps/teacher/pages/TeacherAssignmentsPage'; import TeacherCommunicationPage from '@/apps/teacher/pages/TeacherCommunicationPage'; import TeacherContentPage from '@/apps/teacher/pages/TeacherContentPage'; import TeacherGamificationPage from '@/apps/teacher/pages/TeacherGamificationPage'; import TeacherMonitoringPage from '@/apps/teacher/pages/TeacherMonitoringPage'; import TeacherProgressPage from '@/apps/teacher/pages/TeacherProgressPage'; import TeacherReportsPage from '@/apps/teacher/pages/TeacherReportsPage'; // FASE 6A: TeacherResourcesPage removido - ruta redirigida a dashboard // import TeacherResourcesPage from '@/apps/teacher/pages/TeacherResourcesPage'; import TeacherClassesPage from '@/apps/teacher/pages/TeacherClassesPage'; import TeacherStudentsPage from '@/apps/teacher/pages/TeacherStudentsPage'; import TeacherExerciseResponsesPage from '@/apps/teacher/pages/TeacherExerciseResponsesPage'; import TeacherSettingsPage from '@/apps/teacher/pages/TeacherSettingsPage'; import { ReviewPanelPage } from '@/apps/teacher/pages/ReviewPanel'; // Admin Portal Pages import AdminDashboardPage from '@/apps/admin/pages/AdminDashboardPage'; import AdminInstitutionsPage from '@/apps/admin/pages/AdminInstitutionsPage'; import AdminUsersPage from '@/apps/admin/pages/AdminUsersPage'; import AdminRolesPage from '@/apps/admin/pages/AdminRolesPage'; import AdminContentPage from '@/apps/admin/pages/AdminContentPage'; import AdminGamificationPage from '@/apps/admin/pages/AdminGamificationPage'; import AdminMonitoringPage from '@/apps/admin/pages/AdminMonitoringPage'; import AdminAdvancedPage from '@/apps/admin/pages/AdminAdvancedPage'; import AdminReportsPage from '@/apps/admin/pages/AdminReportsPage'; import AdminSettingsPage from '@/apps/admin/pages/AdminSettingsPage'; import AdminAlertsPage from '@/apps/admin/pages/AdminAlertsPage'; import AdminAnalyticsPage from '@/apps/admin/pages/AdminAnalyticsPage'; import AdminProgressPage from '@/apps/admin/pages/AdminProgressPage'; import AdminClassroomTeacherPage from '@/apps/admin/pages/AdminClassroomTeacherPage'; import AdminAssignmentsPage from '@/apps/admin/pages/AdminAssignmentsPage'; /** * App Component * Main application component with routing and authentication * * Routes: * - / : Redirects to /dashboard * - /dashboard : Protected dashboard page * - /progress : User progress page * - /progress/modules/:moduleId : Module details page * - /achievements : Achievements page with filtering and claiming * - /leaderboard : Leaderboard page with global/school/classroom tabs * * TODO: Add more routes: * - /register : Registration page * - /exercises/:exerciseId/player : Exercise player page * - /missions : Missions page * - /learning : Learning page * - /profile : User profile page * - /settings : Settings page */ function App() { return ( {/* Public routes */} } /> } /> } /> } /> } /> {/* Root redirect */} } /> {/* ===== STUDENT PORTAL ===== */} {/* Dashboard (protected) */} } /> {/* ===== TEACHER PORTAL ===== */} } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> {/* FASE 6A: /teacher/resources redirige a dashboard (placeholder sin funcionalidad) */} } /> } /> } /> } /> {/* Manual Review Panel for Modules 4 & 5 */} } /> {/* ===== ADMIN PORTAL ===== */} } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> {/* Progress Pages (protected) */} } /> } /> {/* Achievements Page (protected) */} } /> {/* Leaderboard Page (protected) */} } /> {/* Exercise Player */} } /> {/* Missions Page */} } /> {/* Student Assignments Page (P1-002) */} } /> {/* Module Detail Page */} } /> {/* Profile Pages */} } /> {/* Settings Page */} } /> {/* Notifications Center */} } /> {/* Notification Settings */} } /> } /> {/* Social Features */} } /> } /> {/* Shop & Inventory */} } /> } /> {/* 404 - Not Found */} } /> ); } export default App;