Face-Recognition/app/layouts/components/acl/CanViewNavLink.tsx
2024-04-16 16:48:06 +07:00

26 lines
562 B
TypeScript

// ** React Imports
import { ReactNode, useContext } from 'react'
// ** Component Imports
import { AbilityContext } from 'app/layouts/components/acl/Can'
// ** Types
import { NavLink } from 'src/@core/layouts/types'
interface Props {
navLink?: NavLink
children: ReactNode
}
const CanViewNavLink = (props: Props) => {
// ** Props
const { children, navLink } = props
// ** Hook
const ability = useContext(AbilityContext)
return ability && ability.can(navLink?.action, navLink?.subject) ? <>{children}</> : null
}
export default CanViewNavLink