saleor-dashboard/src/auth/misc.ts
Patryk Andrzejewski 1d2eeb7592
Strict mode plugin (#3778)
* Stric mode plugin

* Update command
2023-06-21 11:28:00 +02:00

15 lines
581 B
TypeScript

// @ts-strict-ignore
import { PermissionEnum, UserFragment } from "@dashboard/graphql";
export const hasPermission = (permission: PermissionEnum, user: UserFragment) =>
user.userPermissions.map(perm => perm.code).includes(permission);
export const hasAnyPermissions = (
permissions: PermissionEnum[],
user: UserFragment,
) => permissions?.some(permission => hasPermission(permission, user)) || false;
export const hasAllPermissions = (
permissions: PermissionEnum[],
user: UserFragment,
) => permissions?.every(permission => hasPermission(permission, user)) || false;