diff --git a/frontend/src/pages/project/RoleDetailsBySlugPage/components/NewPermissionRule.tsx b/frontend/src/pages/project/RoleDetailsBySlugPage/components/NewPermissionRule.tsx index ac7978ab6..9fc87830a 100644 --- a/frontend/src/pages/project/RoleDetailsBySlugPage/components/NewPermissionRule.tsx +++ b/frontend/src/pages/project/RoleDetailsBySlugPage/components/NewPermissionRule.tsx @@ -12,11 +12,14 @@ import { SelectItem } from "@app/components/v2"; import { ProjectPermissionSub } from "@app/context"; +import { useGetProjectTypeFromRoute } from "@app/hooks"; +import { ProjectType } from "@app/hooks/api/workspace/types"; import { isConditionalSubjects, PROJECT_PERMISSION_OBJECT, projectRoleFormSchema, + ProjectTypePermissionSubjects, TFormSchema } from "./ProjectRoleModifySection.utils"; @@ -37,12 +40,14 @@ export const NewPermissionRule = ({ onClose }: Props) => { .extend({ type: z.nativeEnum(ProjectPermissionSub) }) ), defaultValues: { - type: ProjectPermissionSub.Secrets + type: ProjectPermissionSub.Project } }); const selectedSubject = form.watch("type"); + const projectType = useGetProjectTypeFromRoute(); + return (
{ onValueChange={(e) => onChange(e)} className="w-full" > - {Object.keys(PROJECT_PERMISSION_OBJECT).map((subject) => ( - - {PROJECT_PERMISSION_OBJECT[subject as ProjectPermissionSub].title} - - ))} + {Object.keys(PROJECT_PERMISSION_OBJECT) + .filter( + (subject) => + ProjectTypePermissionSubjects[projectType ?? ProjectType.SecretManager][ + subject as ProjectPermissionSub + ] + ) + .map((subject) => ( + + {PROJECT_PERMISSION_OBJECT[subject as ProjectPermissionSub].title} + + ))} )}