Cleared of the stuff the EnCoach team wanted changed

This commit is contained in:
Tiago Ribeiro
2024-10-28 14:40:26 +00:00
parent 0becd295b0
commit fa0c502467
34 changed files with 166 additions and 107 deletions

View File

@@ -2,7 +2,7 @@ import { EntityWithRoles } from "@/interfaces/entity";
import { User } from "@/interfaces/user";
import { RolePermission } from "@/resources/entityPermissions";
import { mapBy } from "@/utils";
import { doesEntityAllow, findAllowedEntities } from "@/utils/permissions";
import { doesEntityAllow, findAllowedEntities, findAllowedEntitiesSomePermissions } from "@/utils/permissions";
import { useMemo, useState } from "react";
export const useAllowedEntities = (user: User, entities: EntityWithRoles[], permission: RolePermission) => {
@@ -10,6 +10,11 @@ export const useAllowedEntities = (user: User, entities: EntityWithRoles[], perm
return allowedEntityIds
}
export const useAllowedEntitiesSomePermissions = (user: User, entities: EntityWithRoles[], permissions: RolePermission[]) => {
const allowedEntityIds = useMemo(() => findAllowedEntitiesSomePermissions(user, entities, permissions), [user, entities, permissions])
return allowedEntityIds
}
export const useEntityPermission = (user: User, entity: EntityWithRoles, permission: RolePermission) => {
const isAllowed = useMemo(() => doesEntityAllow(user, entity, permission), [user, entity, permission])
return isAllowed