18 lines
482 B
TypeScript
18 lines
482 B
TypeScript
|
|
import useAuthority from '@/utils/hooks/useAuthority'
|
||
|
|
import type { CommonProps } from '@/proxy/common'
|
||
|
|
|
||
|
|
interface AuthorityCheckProps extends CommonProps {
|
||
|
|
userAuthority: string[]
|
||
|
|
authority: string[]
|
||
|
|
}
|
||
|
|
|
||
|
|
const AuthorityCheck = (props: AuthorityCheckProps) => {
|
||
|
|
const { userAuthority = [], authority = [], children } = props
|
||
|
|
|
||
|
|
const roleMatched = useAuthority(userAuthority, authority)
|
||
|
|
|
||
|
|
return <>{roleMatched ? children : null}</>
|
||
|
|
}
|
||
|
|
|
||
|
|
export default AuthorityCheck
|