'use client' import { useEffect } from 'react' import { useRouter } from 'next/navigation' import { useAuth } from '@/hooks/useAuth' interface ProtectedRouteProps { children: React.ReactNode requiredUserType?: string } export default function ProtectedRoute({ children, requiredUserType }: ProtectedRouteProps) { const { isAuthenticated, userType, checkAuth } = useAuth() const router = useRouter() useEffect(() => { checkAuth() }, [checkAuth]) useEffect(() => { if (!isAuthenticated) { console.log('Usuário não autenticado, redirecionando para login...') router.push('/login') } else if (requiredUserType && userType !== requiredUserType) { console.log(`Tipo de usuário incorreto. Esperado: ${requiredUserType}, Atual: ${userType}`) router.push('/login') } else { console.log('Usuário autenticado!') } }, [isAuthenticated, userType, requiredUserType, router]) if (!isAuthenticated || (requiredUserType && userType !== requiredUserType)) { return (

Redirecionando para login...

) } return <>{children} }