import { ReactNode } from 'react' import { Navigate } from 'react-router-dom' import { useAuthStore } from '@/store/authStore' import LoadingSpinner from './LoadingSpinner' interface ProtectedRouteProps { children: ReactNode requireAdmin?: boolean } export default function ProtectedRoute({ children, requireAdmin = false }: ProtectedRouteProps) { const { user, loading } = useAuthStore() if (loading) { return (
) } if (!user) { return } if (requireAdmin && !user.isAdmin) { return } return <>{children} }