diff --git a/frontend/src/component/admin/roles/RoleForm/RolePermissionCategories/RolePermissionCategories.tsx b/frontend/src/component/admin/roles/RoleForm/RolePermissionCategories/RolePermissionCategories.tsx index b4ef56a24a..0fbe05ea79 100644 --- a/frontend/src/component/admin/roles/RoleForm/RolePermissionCategories/RolePermissionCategories.tsx +++ b/frontend/src/component/admin/roles/RoleForm/RolePermissionCategories/RolePermissionCategories.tsx @@ -18,6 +18,7 @@ import { } from 'utils/permissions'; import { RolePermissionCategory } from './RolePermissionCategory'; import { useMemo } from 'react'; +import { useUiFlag } from 'hooks/useUiFlag'; interface IPermissionCategoriesProps { type: PredefinedRoleType; @@ -40,6 +41,8 @@ export const RolePermissionCategories = ({ revalidateOnFocus: false, }); + const releasePlansEnabled = useUiFlag('releasePlans'); + const isProjectRole = PROJECT_ROLE_TYPES.includes(type); const categories = useMemo( @@ -76,31 +79,40 @@ export const RolePermissionCategories = ({ return useMemo( () => ( <> - {categories.map(({ label, type, permissions }) => ( - - ) : type === ENVIRONMENT_PERMISSION_TYPE ? ( - - ) : ( - - ) - } - permissions={permissions} - checkedPermissions={checkedPermissions} - onPermissionChange={(permission: IPermission) => - onPermissionChange(permission) - } - onCheckAll={() => onCheckAll(permissions)} - /> - ))} + {categories + .filter( + ({ label }) => + releasePlansEnabled || + label !== 'Release plan templates', + ) + .map(({ label, type, permissions }) => ( + + ) : type === ENVIRONMENT_PERMISSION_TYPE ? ( + + ) : ( + + ) + } + permissions={permissions} + checkedPermissions={checkedPermissions} + onPermissionChange={(permission: IPermission) => + onPermissionChange(permission) + } + onCheckAll={() => onCheckAll(permissions)} + /> + ))} ), [categories, checkedPermissions],