import { Routes, Route, Navigate } from 'react-router-dom' import { CssBaseline, ThemeProvider } from '@mui/material' import { darkTheme } from './theme/theme' import { useAuthStore } from './store/authStore' import AppLayout from './components/AppLayout' import LoginPage from './pages/LoginPage' import MfaSetupPage from './pages/MfaSetupPage' import HostsPage from './pages/HostsPage' import HostDetailPage from './pages/HostDetailPage' import GroupsPage from './pages/GroupsPage' import UsersPage from './pages/UsersPage' import DashboardPage from './pages/DashboardPage' import PatchDeploymentPage from './pages/PatchDeploymentPage' import JobsPage from './pages/JobsPage' import MaintenanceWindowsPage from './pages/MaintenanceWindowsPage' import CertificatesPage from './pages/CertificatesPage' import ReportsPage from './pages/ReportsPage' import SettingsPage from './pages/SettingsPage' function RequireAuth({ children }: { children: React.ReactNode }) { const isAuthenticated = useAuthStore((s) => s.isAuthenticated) return isAuthenticated ? <>{children} : } function App() { return ( {/* Public */} } /> {/* Protected — wrapped in AppLayout with sidebar navigation */} }> } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> ) } export default App