import { QueryClient, QueryClientProvider } from '@tanstack/react-query'; import { BrowserRouter, Navigate, Route, Routes } from 'react-router-dom'; import { Layout } from '@/components/Layout'; import { RequireAdmin } from '@/components/RequireAdmin'; import { RequireAuth } from '@/components/RequireAuth'; import { AdminGroupsPage } from '@/pages/AdminGroupsPage'; import { AdminInvitationsPage } from '@/pages/AdminInvitationsPage'; import { AdminUsersPage } from '@/pages/AdminUsersPage'; import { HomePage } from '@/pages/HomePage'; import { LoginPage } from '@/pages/LoginPage'; import { ProfilePage } from '@/pages/ProfilePage'; import { RegisterPage } from '@/pages/RegisterPage'; import { SetupPage } from '@/pages/SetupPage'; import { AuthContext, useProvideAuth } from '@/lib/auth'; const queryClient = new QueryClient({ defaultOptions: { queries: { retry: false, refetchOnWindowFocus: false, staleTime: 30_000, }, }, }); function AuthProvider({ children }: { children: React.ReactNode }) { const auth = useProvideAuth(); return {children}; } function App() { return ( }> } /> } /> } /> {/* Home page stays public — it's an ops dashboard, not sensitive. */} } /> } /> } /> } /> } /> } /> ); } export default App;