From 6db8c100ba6c513b060f4592a2473ac9980f0679 Mon Sep 17 00:00:00 2001 From: = Date: Tue, 8 Oct 2024 00:01:04 +0530 Subject: [PATCH] fix: resolved fixes for permission changes --- frontend/src/hooks/api/roles/queries.tsx | 2 +- .../ProjectRoleModifySection.utils.ts | 4 ++-- .../components/SecretPermissionConditions.tsx | 2 ++ .../views/SecretMainPage/SecretMainPage.tsx | 9 +++++---- .../SecretListView/SecretDetaiSidebar.tsx | 20 +++++++++++-------- 5 files changed, 22 insertions(+), 15 deletions(-) diff --git a/frontend/src/hooks/api/roles/queries.tsx b/frontend/src/hooks/api/roles/queries.tsx index 288fdf396..063ebd88b 100644 --- a/frontend/src/hooks/api/roles/queries.tsx +++ b/frontend/src/hooks/api/roles/queries.tsx @@ -153,7 +153,7 @@ export const useGetUserProjectPermissions = ({ workspaceId }: TGetUserProjectPer return (entity) => { const rulesStrippedOfWildcard = omit( rules, - Object.keys(entity).filter((el) => entity[el].includes("*")) + Object.keys(entity).filter((el) => entity[el]?.includes("*")) ); const baseMatcher = conditionsMatcher(rulesStrippedOfWildcard); return baseMatcher(entity); diff --git a/frontend/src/views/Project/RolePage/components/RolePermissionsSection/ProjectRoleModifySection.utils.ts b/frontend/src/views/Project/RolePage/components/RolePermissionsSection/ProjectRoleModifySection.utils.ts index d800ddf6b..03a56db36 100644 --- a/frontend/src/views/Project/RolePage/components/RolePermissionsSection/ProjectRoleModifySection.utils.ts +++ b/frontend/src/views/Project/RolePage/components/RolePermissionsSection/ProjectRoleModifySection.utils.ts @@ -337,7 +337,7 @@ export const PROJECT_PERMISSION_OBJECT: TProjectPermissionObject = { ] }, [ProjectPermissionSub.SecretImports]: { - title: "Secret Folders", + title: "Secret Imports", actions: [ { label: "Read", value: "read" }, { label: "Create", value: "create" }, @@ -346,7 +346,7 @@ export const PROJECT_PERMISSION_OBJECT: TProjectPermissionObject = { ] }, [ProjectPermissionSub.DynamicSecrets]: { - title: "Secret Folders", + title: "Dynamic Secrets", actions: [ { label: "Read", value: "read" }, { label: "Create", value: "create" }, diff --git a/frontend/src/views/Project/RolePage/components/RolePermissionsSection/components/SecretPermissionConditions.tsx b/frontend/src/views/Project/RolePage/components/RolePermissionsSection/components/SecretPermissionConditions.tsx index 38f60cc71..a6f94de90 100644 --- a/frontend/src/views/Project/RolePage/components/RolePermissionsSection/components/SecretPermissionConditions.tsx +++ b/frontend/src/views/Project/RolePage/components/RolePermissionsSection/components/SecretPermissionConditions.tsx @@ -57,6 +57,8 @@ export const SecretPermissionConditions = ({ position = 0, isDisabled }: Props) > Environment Slug Secret Path + Secret Name + Secret Tags )} diff --git a/frontend/src/views/SecretMainPage/SecretMainPage.tsx b/frontend/src/views/SecretMainPage/SecretMainPage.tsx index 0ace79777..ea348f083 100644 --- a/frontend/src/views/SecretMainPage/SecretMainPage.tsx +++ b/frontend/src/views/SecretMainPage/SecretMainPage.tsx @@ -86,6 +86,7 @@ export const SecretMainPage = () => { secretTags: ["*"] }) ); + const canReadSecretImports = permission.can( ProjectPermissionActions.Read, subject(ProjectPermissionSub.SecretImports, { environment, secretPath }) @@ -377,7 +378,7 @@ export const SecretMainPage = () => {
Value
)} - {canReadSecretImports && imports?.length && ( + {canReadSecretImports && Boolean(imports?.length) && ( { importedSecrets={importedSecrets} /> )} - {folders?.length && ( + {Boolean(folders?.length) && ( { onNavigateToFolder={handleResetFilter} /> )} - {canReadDynamicSecret && dynamicSecrets?.length && ( + {canReadDynamicSecret && Boolean(dynamicSecrets?.length) && ( { dynamicSecrets={dynamicSecrets} /> )} - {canReadSecret && secrets?.length && ( + {canReadSecret && Boolean(secrets?.length) && ( >( (prev, curr) => ({ ...prev, [curr.id]: true }), @@ -102,7 +105,7 @@ export const SecretDetailSidebar = ({ subject(ProjectPermissionSub.Secrets, { environment, secretPath, - secretName: secret.key, + secretName: secretKey, secretTags: selectTagSlugs }) ); @@ -112,7 +115,7 @@ export const SecretDetailSidebar = ({ subject(ProjectPermissionSub.Secrets, { environment, secretPath, - secretName: secret.key, + secretName: secretKey, secretTags: selectTagSlugs }) ) && cannotEditSecret; @@ -209,7 +212,7 @@ export const SecretDetailSidebar = ({ a={subject(ProjectPermissionSub.Secrets, { environment, secretPath, - secretName: secret.key, + secretName: secretKey, secretTags: selectTagSlugs })} > @@ -241,7 +244,7 @@ export const SecretDetailSidebar = ({ a={subject(ProjectPermissionSub.Secrets, { environment, secretPath, - secretName: secret.key, + secretName: secretKey, secretTags: selectTagSlugs })} > @@ -302,7 +305,7 @@ export const SecretDetailSidebar = ({ a={subject(ProjectPermissionSub.Secrets, { environment, secretPath, - secretName: secret.key, + secretName: secretKey, secretTags: selectTagSlugs })} > @@ -394,6 +397,7 @@ export const SecretDetailSidebar = ({ variant="outline_bg" leftIcon={} onClick={() => setCreateReminderFormOpen.on()} + isDisabled={cannotEditSecret} > Create Reminder @@ -418,7 +422,7 @@ export const SecretDetailSidebar = ({ a={subject(ProjectPermissionSub.Secrets, { environment, secretPath, - secretName: secret.key, + secretName: secretKey, secretTags: selectTagSlugs })} > @@ -485,7 +489,7 @@ export const SecretDetailSidebar = ({ a={subject(ProjectPermissionSub.Secrets, { environment, secretPath, - secretName: secret.key, + secretName: secretKey, secretTags: selectTagSlugs })} > @@ -505,7 +509,7 @@ export const SecretDetailSidebar = ({ a={subject(ProjectPermissionSub.Secrets, { environment, secretPath, - secretName: secret.key, + secretName: secretKey, secretTags: selectTagSlugs })} >