import { lazy, Suspense } from 'react' import { Routes, Route, Navigate } from 'react-router-dom' import { AuthProvider } from './context/AuthContext' import { ThemeProvider } from './context/ThemeContext' import { ProtectedRoute, GuestRoute } from './components/shared/ProtectedRoute' import Spinner from './components/shared/Spinner' import AdminDashboard from './pages/AdminDashboard' import Dashboard from './pages/Dashboard' const LoginPage = lazy(() => import('./pages/Login')) const RegisterPage = lazy(() => import('./pages/Register')) const ForgotPassword = lazy(() => import('./pages/ForgotPassword')) const ResetPassword = lazy(() => import('./pages/ResetPassword')) const PendingPage = lazy(() => import('./pages/Pending')) const AdminUsers = lazy(() => import('./pages/AdminUsers')) const AdminTests = lazy(() => import('./pages/AdminTests')) const AdminTestDetail = lazy(() => import('./pages/AdminTestDetail')) const TestsPage = lazy(() => import('./pages/Tests')) const TestEngine = lazy(() => import('./pages/TestEngine')) const Result = lazy(() => import('./pages/Result')) const MyResults = lazy(() => import('./pages/MyResults')) const Leaderboard = lazy(() => import('./pages/Leaderboard')) const Bookmarks = lazy(() => import('./pages/Bookmarks')) export default function App() { return (
}> {/* Public */} } /> } /> } /> } /> } /> {/* Admin */} } /> } /> } /> } /> {/* Aspirant */} } /> } /> } /> } /> } /> } /> } /> } />
) }