import { Switch, Route, Router as WouterRouter, useLocation } from "wouter"; import { AuthProvider, useAuth } from "@/context/AuthContext"; import Login from "@/pages/Login"; import Signup from "@/pages/Signup"; import ForgotPassword from "@/pages/ForgotPassword"; import ResetPassword from "@/pages/ResetPassword"; import { QueryClient, QueryClientProvider } from "@tanstack/react-query"; import { Toaster } from "@/components/ui/toaster"; import { Toaster as SonnerToaster } from "@/components/ui/sonner"; import { TooltipProvider } from "@/components/ui/tooltip"; import { ThemeProvider } from "@/components/theme-provider"; import { Layout } from "@/components/layout"; import NotFound from "@/pages/not-found"; import Dashboard from "@/pages/dashboard"; import Projects from "@/pages/projects"; import ProjectDetail from "@/pages/project-detail"; import Clients from "@/pages/clients"; import Briefs from "@/pages/briefs"; import Kanban from "@/pages/kanban"; const queryClient = new QueryClient(); function ProtectedRoute({ component: Component, ...rest }: any) { const { session, isLoading } = useAuth(); const [, setLocation] = useLocation(); if (isLoading) { return
Loading...
; } if (!session) { setLocation("/login"); return null; } return ( ); } function Router() { return ( ); } function App() { return ( ); } export default App;