import React, { lazy, Suspense } from "react"; import { SiteWrapper, SuspenseLoader } from "components"; import { useAuthState, useLocaleState, useHealthState, UserProvider, } from "context"; import { BrowserRouter, Switch, Route } from "react-router-dom"; const AccessLists = lazy(() => import("pages/AccessLists")); const AuditLog = lazy(() => import("pages/AuditLog")); const Certificates = lazy(() => import("pages/Certificates")); const Dashboard = lazy(() => import("pages/Dashboard")); const Hosts = lazy(() => import("pages/Hosts")); const Login = lazy(() => import("pages/Login")); const Settings = lazy(() => import("pages/Settings")); const Setup = lazy(() => import("pages/Setup")); const Users = lazy(() => import("pages/Users")); function Router() { const { health } = useHealthState(); const { authenticated } = useAuthState(); const { locale } = useLocaleState(); const Spinner = ; if (health.loading) { return Spinner; } if (health.healthy && !health.setup) { return ( ); } if (!authenticated) { return ( ); } return ( ); } export default Router;