template-monorepo/frontend/src/components/AdminRoute.tsx

11 lines
377 B
TypeScript

import { Navigate, Outlet } from 'react-router-dom';
import { useAuth } from '../context/AuthContext';
export function AdminRoute() {
const { ready, token, isAdmin } = useAuth();
if (!ready) return <p className="loading"></p>;
if (!token) return <Navigate to="/login" replace />;
if (!isAdmin) return <Navigate to="/app" replace />;
return <Outlet />;
}