
* WIP add new configuration menu * Add missing permissions * Changed filtering to one based on arrays of permissions * Add hasAnyPermissions and hasAllPermissions functions * Simplify getConfigMenuItemsPermissions function * Simplify routing logic
12 lines
568 B
TypeScript
12 lines
568 B
TypeScript
import { User } from "@saleor/fragments/types/User";
|
|
|
|
import { PermissionEnum } from "../types/globalTypes";
|
|
|
|
export const hasPermission = (permission: PermissionEnum, user: User) =>
|
|
user.userPermissions.map(perm => perm.code).includes(permission);
|
|
|
|
export const hasAnyPermissions = (permissions: PermissionEnum[], user: User) =>
|
|
permissions?.some(permission => hasPermission(permission, user)) || false;
|
|
|
|
export const hasAllPermissions = (permissions: PermissionEnum[], user: User) =>
|
|
permissions?.every(permission => hasPermission(permission, user)) || false;
|