import React from 'react'; import { Navigate, useLocation } from 'react-router-dom'; import { useAuth } from '@/contexts/AuthContext'; interface ProtectedRouteProps { children: React.ReactNode; requiredRole?: 'admin' | 'user'; } const ProtectedRoute = ({ children, requiredRole = 'user' }: ProtectedRouteProps) => { const { isAuthenticated, user, isLoading } = useAuth(); const location = useLocation(); if (isLoading) { return (
); } if (!isAuthenticated) { return ; } if (requiredRole === 'admin' && user?.role !== 'admin') { return ; } return <>{children}; }; export default ProtectedRoute;