From e4d160c453a3a27a6cce1f2aba2c0cd526dbb688 Mon Sep 17 00:00:00 2001 From: Tomasz Magulski Date: Thu, 17 Mar 2022 10:28:12 +0100 Subject: [PATCH] Fix menu items permissions logic (#1932) --- src/components/AppLayout/menuStructure.ts | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/components/AppLayout/menuStructure.ts b/src/components/AppLayout/menuStructure.ts index a56d650d1..067e5d485 100644 --- a/src/components/AppLayout/menuStructure.ts +++ b/src/components/AppLayout/menuStructure.ts @@ -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);