import { Route, Routes } from "react-router-dom"; import FirstTimeAdminSetup from "./components/FirstTimeAdminSetup"; import Layout from "./components/Layout"; import LogoProvider from "./components/LogoProvider"; import ProtectedRoute from "./components/ProtectedRoute"; import SettingsLayout from "./components/SettingsLayout"; import { isAuthPhase } from "./constants/authPhases"; import { AuthProvider, useAuth } from "./contexts/AuthContext"; import { ThemeProvider } from "./contexts/ThemeContext"; import { UpdateNotificationProvider } from "./contexts/UpdateNotificationContext"; import Dashboard from "./pages/Dashboard"; import HostDetail from "./pages/HostDetail"; import Hosts from "./pages/Hosts"; import Login from "./pages/Login"; import PackageDetail from "./pages/PackageDetail"; import Packages from "./pages/Packages"; import Profile from "./pages/Profile"; import Repositories from "./pages/Repositories"; import RepositoryDetail from "./pages/RepositoryDetail"; import AlertChannels from "./pages/settings/AlertChannels"; import Integrations from "./pages/settings/Integrations"; import Notifications from "./pages/settings/Notifications"; import PatchManagement from "./pages/settings/PatchManagement"; import SettingsAgentConfig from "./pages/settings/SettingsAgentConfig"; import SettingsHostGroups from "./pages/settings/SettingsHostGroups"; import SettingsServerConfig from "./pages/settings/SettingsServerConfig"; import SettingsUsers from "./pages/settings/SettingsUsers"; function AppRoutes() { const { needsFirstTimeSetup, authPhase, isAuthenticated } = useAuth(); const isAuth = isAuthenticated(); // Call the function to get boolean value // Show loading while checking setup or initialising if ( isAuthPhase.initialising(authPhase) || isAuthPhase.checkingSetup(authPhase) ) { return (

Checking system status...

); } // Show first-time setup if no admin users exist if (needsFirstTimeSetup && !isAuth) { return ; } return ( } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> ); } function App() { return ( ); } export default App;