import { StrictMode } from "react"; import { createRoot } from "react-dom/client"; import { QueryClient, QueryClientProvider } from "@tanstack/react-query"; import { BrowserRouter, Routes, Route } from "react-router-dom"; import { ThemeProvider } from "./ThemeProvider"; import { AuthProvider } from "./contexts/AuthContext"; import { AdminAuthProvider } from "./contexts/AdminAuthContext"; import { ProtectedRoute } from "./components/ProtectedRoute"; import { AdminProtectedRoute } from "./components/AdminProtectedRoute"; import { AppBootGate } from "./components/AppBootGate"; import FullscreenManager from "./components/FullscreenManager"; import NotFoundPage from "./components/NotFoundPage"; import "./index.css"; import App from "./App.jsx"; import Login from "./pages/Login"; import ForgotPassword from "./pages/ForgotPassword"; import Schools from "./pages/Schools"; import AdminLogin from "./pages/admin/AdminLogin"; import AdminForgotPassword from "./pages/admin/AdminForgotPassword"; import PublicFormPage from "./pages/PublicFormPage"; import Decrypt from "./pages/Decrypt"; import LandingPage from "./pages/LandingPage"; import { registerNotificationServiceWorker } from "./services/notificationService"; import { registerFirebaseMessagingServiceWorker } from "./services/firebaseMessaging"; import { LocalizationProvider } from '@mui/x-date-pickers/LocalizationProvider'; import { AdapterDayjs } from '@mui/x-date-pickers/AdapterDayjs'; const queryClient = new QueryClient(); createRoot(document.getElementById("root")).render( {/* Public Landing Page - All content consolidated here */} } /> {/* Public Auth Pages */} } /> } /> } /> } /> {/* Admins Authentication */} } /> } /> {/* Admin Protected Routes */} } /> } /> {/* Protected App Routes */} } /> } /> } /> {/* 404 - Catch all */} } /> , ); registerNotificationServiceWorker().catch((error) => { console.warn("Notification service worker registration failed:", error); }); registerFirebaseMessagingServiceWorker().catch((error) => { console.warn("Firebase messaging service worker registration failed:", error); });