import { Routes, Route, Navigate } from "react-router"; import { useAuth } from "@/hooks/useAuth"; import AppLayout from "@/components/AppLayout"; import Login from "./pages/Login"; import NotFound from "./pages/NotFound"; import Dashboard from "./pages/Dashboard"; import MapPage from "./pages/MapPage"; import RecipientsPage from "./pages/RecipientsPage"; import PlacesOfWorshipPage from "./pages/PlacesOfWorshipPage"; import VerificationPage from "./pages/VerificationPage"; import UsersPage from "./pages/UsersPage"; import SettingsPage from "./pages/SettingsPage"; function ProtectedRoute({ children, adminOnly }: { children: React.ReactNode; adminOnly?: boolean }) { const { user, isLoading } = useAuth(); if (isLoading) { return (
); } if (!user) { return ; } if (adminOnly && user.role !== "admin") { return ; } return {children}; } export default function App() { return ( } /> } /> } /> } /> } /> } /> } /> } /> } /> ); }