File size: 548 Bytes
b24b684 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | import { Box, CircularProgress } from "@mui/material";
import { Navigate, Outlet } from "react-router-dom";
import { useAuth } from "./AuthContext";
export default function ProtectedRoute() {
const { user, loading } = useAuth();
if (loading) {
return (
<Box
sx={{
height: "100vh",
display: "grid",
placeItems: "center",
}}
>
<CircularProgress />
</Box>
);
}
if (!user) return <Navigate to="/login" replace />;
return <Outlet />;
}
|