"use client"; import { useRouter } from "next/navigation"; import { useEffect } from "react"; import { useAuth } from "@/context/AuthContext"; import LoadingSpinner from "./LoadingSpinner"; export default function ProtectedRoute({ children, }: { children: React.ReactNode; }) { const { authState } = useAuth(); const router = useRouter(); useEffect(() => { if (!authState.isLoading && !authState.isAuthenticated) { router.push("/login"); } }, [authState.isAuthenticated, authState.isLoading, router]); if (authState.isLoading) { return ; } return authState.isAuthenticated ? children : null; }