mirror of
https://git.v0id.ovh/n3wt-innov/n3wt-school.git
synced 2026-01-29 07:53:23 +00:00
25 lines
704 B
JavaScript
25 lines
704 B
JavaScript
import React, { useEffect } from 'react';
|
|
import { useRouter } from 'next/navigation';
|
|
import { useSession } from 'next-auth/react';
|
|
import Loader from '@/components/Loader'; // Importez le composant Loader
|
|
import { FE_USERS_LOGIN_URL } from '@/utils/Url';
|
|
|
|
const ProtectedRoute = ({ children }) => {
|
|
const { data: session, status } = useSession({
|
|
required: true,
|
|
onUnauthenticated() {
|
|
router.push(`${FE_USERS_LOGIN_URL}`);
|
|
}
|
|
});
|
|
const router = useRouter();
|
|
|
|
// Ne vérifier que si le statut est définitif
|
|
if (status === 'loading') {
|
|
return <Loader />;
|
|
}
|
|
|
|
// Autoriser l'affichage si authentifié
|
|
return session ? children : null;
|
|
};
|
|
|
|
export default ProtectedRoute; |