/** * Router configuration */ import { BrowserRouter, Routes, Route, Navigate } from 'react-router-dom'; import { Login } from './pages/Login'; import { AdminLayout } from './pages/admin/AdminLayout'; import { Dashboard } from './pages/admin/Dashboard'; import { CelestialBodies } from './pages/admin/CelestialBodies'; import { StarSystems } from './pages/admin/StarSystems'; import { StaticData } from './pages/admin/StaticData'; import { Users } from './pages/admin/Users'; import { NASADownload } from './pages/admin/NASADownload'; import { SystemSettings } from './pages/admin/SystemSettings'; import { Tasks } from './pages/admin/Tasks'; import { auth } from './utils/auth'; import { ToastProvider } from './contexts/ToastContext'; import App from './App'; // Protected Route wrapper function ProtectedRoute({ children }: { children: React.ReactNode }) { if (!auth.isLoggedIn()) { return ; } return <>{children}; } export function Router() { return ( {/* Public routes */} } /> {/* Main app (3D visualization) */} } /> {/* Admin routes (protected) */} } > } /> } /> } /> } /> } /> } /> } /> } /> } /> {/* Fallback */} } /> ); }