import React from 'react'; import { Navigate, Outlet } from 'react-router-dom'; import { useAuthStore } from '@/store/authStore'; import ForbiddenPage from '@/pages/errors/ForbiddenPage'; import { Skeleton } from '@/components/ui/skeleton'; interface Props { allowedRoles?: string[]; } const ProtectedRoute: React.FC = ({ allowedRoles }) => { const { isAuthenticated, isInitialized, user } = useAuthStore(); if (!isInitialized) { return (
); } if (!isAuthenticated) { return ; } if (allowedRoles && user && !allowedRoles.includes(user.role)) { return ; } return ; }; export default ProtectedRoute;