From bad934de48303cbac6d3dea43e15328134f5775b Mon Sep 17 00:00:00 2001 From: Carlos Monastyrski Date: Wed, 13 Aug 2025 16:13:38 -0700 Subject: [PATCH 1/3] Improve delete folder message --- .../components/SelectionPanel/SelectionPanel.tsx | 13 +++++++++++++ .../components/FolderListView/FolderListView.tsx | 8 +++++++- 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/frontend/src/pages/secret-manager/OverviewPage/components/SelectionPanel/SelectionPanel.tsx b/frontend/src/pages/secret-manager/OverviewPage/components/SelectionPanel/SelectionPanel.tsx index 26a64f8a5..73aa359e5 100644 --- a/frontend/src/pages/secret-manager/OverviewPage/components/SelectionPanel/SelectionPanel.tsx +++ b/frontend/src/pages/secret-manager/OverviewPage/components/SelectionPanel/SelectionPanel.tsx @@ -10,6 +10,7 @@ import { ProjectPermissionActions, ProjectPermissionSub, useProjectPermission, + useSubscription, useWorkspace } from "@app/context"; import { ProjectPermissionSecretActions } from "@app/context/ProjectPermissionContext/types"; @@ -51,6 +52,7 @@ export const SelectionPanel = ({ usedBySecretSyncs = [] }: Props) => { const { permission } = useProjectPermission(); + const { subscription } = useSubscription(); const { handlePopUpOpen, handlePopUpToggle, handlePopUpClose, popUp } = usePopUp([ "bulkDeleteEntries", @@ -101,6 +103,16 @@ export const SelectionPanel = ({ return "Do you want to delete the selected folders across environments?"; }; + const getDeleteModalSubTitle = () => { + if (selectedFolderCount > 0) { + if (subscription?.pitRecovery) { + return "This folder and all its contents will be removed. You can reverse this action by rolling back to a previous commit."; + } + return "This folder and all its contents will be removed. Rolling back to a previous commit isn't available on your current plan. Upgrade to enable this feature."; + } + return undefined; + }; + const handleBulkDelete = async () => { let processedEntries = 0; @@ -279,6 +291,7 @@ export const SelectionPanel = ({ isOpen={popUp.bulkDeleteEntries.isOpen} deleteKey="delete" title={getDeleteModalTitle()} + subTitle={getDeleteModalSubTitle()} onChange={(isOpen) => handlePopUpToggle("bulkDeleteEntries", isOpen)} onDeleteApproved={handleBulkDelete} formContent={ diff --git a/frontend/src/pages/secret-manager/SecretDashboardPage/components/FolderListView/FolderListView.tsx b/frontend/src/pages/secret-manager/SecretDashboardPage/components/FolderListView/FolderListView.tsx index ff6066c90..9b8c9ccaa 100644 --- a/frontend/src/pages/secret-manager/SecretDashboardPage/components/FolderListView/FolderListView.tsx +++ b/frontend/src/pages/secret-manager/SecretDashboardPage/components/FolderListView/FolderListView.tsx @@ -16,7 +16,7 @@ import { ProjectPermissionCan } from "@app/components/permissions"; import { DeleteActionModal, IconButton, Modal, ModalContent } from "@app/components/v2"; import { Tooltip } from "@app/components/v2/Tooltip/Tooltip"; import { ROUTE_PATHS } from "@app/const/routes"; -import { ProjectPermissionActions, ProjectPermissionSub } from "@app/context"; +import { ProjectPermissionActions, ProjectPermissionSub, useSubscription } from "@app/context"; import { usePopUp } from "@app/hooks"; import { useDeleteFolder, useUpdateFolder } from "@app/hooks/api"; import { PendingAction, TSecretFolder } from "@app/hooks/api/secretFolders/types"; @@ -54,6 +54,7 @@ export const FolderListView = ({ from: ROUTE_PATHS.SecretManager.SecretDashboardPage.id, select: (el) => el.secretPath }); + const { subscription } = useSubscription(); const { mutateAsync: updateFolder } = useUpdateFolder(); const { mutateAsync: deleteFolder } = useDeleteFolder(); @@ -319,6 +320,11 @@ export const FolderListView = ({ isOpen={popUp.deleteFolder.isOpen} deleteKey={(popUp.deleteFolder?.data as TSecretFolder)?.name} title="Do you want to delete this folder?" + subTitle={`This folder and all its contents will be removed. ${ + subscription?.pitRecovery + ? "You can reverse this action by rolling back to a previous commit." + : "Rolling back to a previous commit isn't available on your current plan. Upgrade to enable this feature." + }`} onChange={(isOpen) => handlePopUpToggle("deleteFolder", isOpen)} onDeleteApproved={handleFolderDelete} /> From 4d06d5cbb01a93cda57d3588247a70bd164541f2 Mon Sep 17 00:00:00 2001 From: Carlos Monastyrski Date: Wed, 13 Aug 2025 17:09:53 -0700 Subject: [PATCH 2/3] Fix wording on message --- .../OverviewPage/components/SelectionPanel/SelectionPanel.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/frontend/src/pages/secret-manager/OverviewPage/components/SelectionPanel/SelectionPanel.tsx b/frontend/src/pages/secret-manager/OverviewPage/components/SelectionPanel/SelectionPanel.tsx index 73aa359e5..f91c296a3 100644 --- a/frontend/src/pages/secret-manager/OverviewPage/components/SelectionPanel/SelectionPanel.tsx +++ b/frontend/src/pages/secret-manager/OverviewPage/components/SelectionPanel/SelectionPanel.tsx @@ -106,9 +106,9 @@ export const SelectionPanel = ({ const getDeleteModalSubTitle = () => { if (selectedFolderCount > 0) { if (subscription?.pitRecovery) { - return "This folder and all its contents will be removed. You can reverse this action by rolling back to a previous commit."; + return "All selected folders and all its contents will be removed. You can reverse this action by rolling back to a previous commit."; } - return "This folder and all its contents will be removed. Rolling back to a previous commit isn't available on your current plan. Upgrade to enable this feature."; + return "All selected folders and all its contents will be removed. Rolling back to a previous commit isn't available on your current plan. Upgrade to enable this feature."; } return undefined; }; From 12558e8614fa7f10bff36d98b326069bec7eb3b0 Mon Sep 17 00:00:00 2001 From: Carlos Monastyrski Date: Wed, 13 Aug 2025 18:16:37 -0700 Subject: [PATCH 3/3] Fix wording on message --- .../OverviewPage/components/SelectionPanel/SelectionPanel.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/frontend/src/pages/secret-manager/OverviewPage/components/SelectionPanel/SelectionPanel.tsx b/frontend/src/pages/secret-manager/OverviewPage/components/SelectionPanel/SelectionPanel.tsx index f91c296a3..11ee3def8 100644 --- a/frontend/src/pages/secret-manager/OverviewPage/components/SelectionPanel/SelectionPanel.tsx +++ b/frontend/src/pages/secret-manager/OverviewPage/components/SelectionPanel/SelectionPanel.tsx @@ -106,9 +106,9 @@ export const SelectionPanel = ({ const getDeleteModalSubTitle = () => { if (selectedFolderCount > 0) { if (subscription?.pitRecovery) { - return "All selected folders and all its contents will be removed. You can reverse this action by rolling back to a previous commit."; + return "All selected folders and their contents will be removed. You can reverse this action by rolling back to a previous commit."; } - return "All selected folders and all its contents will be removed. Rolling back to a previous commit isn't available on your current plan. Upgrade to enable this feature."; + return "All selected folders and their contents will be removed. Rolling back to a previous commit isn't available on your current plan. Upgrade to enable this feature."; } return undefined; };