import React, {useEffect, useContext, useState} from 'react'
import {useNavigate, useParams,useSearchParams, Outlet} from 'react-router-dom'
import AuthContext from '../../context/auth-context'
import {Role} from "../../models/EgovUser";

function RoleProtection() {
    const {currentUser} = useContext(AuthContext)
const [searchParams] =  useSearchParams();

    const activeRole = searchParams.get('activeRole');
    const [stall,setStall] = useState(false)
    const navigate = useNavigate()

    useEffect(() => {
        // @ts-ignore
        if (!activeRole || !currentUser?.roles.includes(activeRole)) {
            navigate('/404')
        }
        setStall(true)
    }, [])
    return (
        <>
            {
                stall && <Outlet/>
            }
        </>
    )
}

export default RoleProtection
