This commit is contained in:
Emma781227
2026-06-26 11:26:45 +02:00
parent 1cf2a24ede
commit 2d25c91c55
14 changed files with 540 additions and 165 deletions

View File

@@ -0,0 +1,17 @@
import { Navigate } from 'react-router-dom'
export default function ProtectedRoute({ children, roles }) {
const token = localStorage.getItem('token')
const user = JSON.parse(localStorage.getItem('user') || 'null')
if (!token || !user) {
return <Navigate to="/connexion" replace />
}
if (roles && !roles.includes(user.role)) {
const redirects = { ADMIN: '/admin', EMPLOYEE: '/employe', CLIENT: '/mes-gains' }
return <Navigate to={redirects[user.role] || '/connexion'} replace />
}
return children
}