erp-platform/ui/src/utils/hooks/usePermission.ts
Sedat ÖZTÜRK e1a9562b22 init project
2025-05-06 09:45:49 +03:00

32 lines
732 B
TypeScript

import { useStoreState } from '@/store'
const usePermission = () => {
const grantedPolicies = useStoreState((state) => state.abpConfig?.config?.auth.grantedPolicies)
const checkPermissions = (permissionsToCheck: string[] = []) => {
return permissionsToCheck?.length
? grantedPolicies
? permissionsToCheck.every((p) => p === '' || grantedPolicies[p] === true)
: false
: true
}
const checkPermission = (permissionToCheck?: string) => {
if (!permissionToCheck) {
return true
}
if (!grantedPolicies) {
return false
}
return grantedPolicies[permissionToCheck] === true
}
return {
checkPermission,
checkPermissions,
}
}
export { usePermission }