Fix menu items permissions logic (#1932)

This commit is contained in:
Tomasz Magulski 2022-03-17 10:28:12 +01:00 committed by GitHub
parent f5d79c3135
commit e4d160c453
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -244,11 +244,14 @@ function useMenuStructure(
}
];
const isMenuItemPermitted = (menuItem: FilterableMenuItem) =>
!menuItem.permissions ||
(user?.userPermissions || []).some(permission =>
menuItem.permissions.includes(permission.code)
const isMenuItemPermitted = (menuItem: FilterableMenuItem) => {
const userPermissions = (user?.userPermissions || []).map(
permission => permission.code
);
return (menuItem.permissions || []).every(permission =>
userPermissions.includes(permission)
);
};
const getFilteredMenuItems = (menuItems: FilterableMenuItem[]) =>
menuItems.filter(isMenuItemPermitted);