mirror of
https://github.com/awatertrevi/infisical.git
synced 2026-10-08 14:28:20 +00:00
misc: added handling for no changes made
This commit is contained in:
@@ -52,6 +52,8 @@ export const SelectionPanel = ({ getFolderByNameAndEnv, getSecretByKey, secretPa
|
|||||||
);
|
);
|
||||||
|
|
||||||
const handleBulkDelete = async () => {
|
const handleBulkDelete = async () => {
|
||||||
|
let processedEntries = 0;
|
||||||
|
|
||||||
const promises = userAvailableEnvs.map(async (env) => {
|
const promises = userAvailableEnvs.map(async (env) => {
|
||||||
// additional check: ensure that bulk delete is only executed on envs that user has access to
|
// additional check: ensure that bulk delete is only executed on envs that user has access to
|
||||||
if (
|
if (
|
||||||
@@ -67,6 +69,7 @@ export const SelectionPanel = ({ getFolderByNameAndEnv, getSecretByKey, secretPa
|
|||||||
Object.keys(selectedEntries.folder).map(async (folderName) => {
|
Object.keys(selectedEntries.folder).map(async (folderName) => {
|
||||||
const folder = getFolderByNameAndEnv(folderName, env.slug);
|
const folder = getFolderByNameAndEnv(folderName, env.slug);
|
||||||
if (folder) {
|
if (folder) {
|
||||||
|
processedEntries += 1;
|
||||||
await deleteFolder({
|
await deleteFolder({
|
||||||
folderId: folder?.id,
|
folderId: folder?.id,
|
||||||
path: secretPath,
|
path: secretPath,
|
||||||
@@ -95,6 +98,7 @@ export const SelectionPanel = ({ getFolderByNameAndEnv, getSecretByKey, secretPa
|
|||||||
);
|
);
|
||||||
|
|
||||||
if (secretsToDelete.length > 0) {
|
if (secretsToDelete.length > 0) {
|
||||||
|
processedEntries += secretsToDelete.length;
|
||||||
await deleteBatchSecretV3({
|
await deleteBatchSecretV3({
|
||||||
secretPath,
|
secretPath,
|
||||||
workspaceId,
|
workspaceId,
|
||||||
@@ -106,7 +110,13 @@ export const SelectionPanel = ({ getFolderByNameAndEnv, getSecretByKey, secretPa
|
|||||||
|
|
||||||
const results = await Promise.allSettled(promises);
|
const results = await Promise.allSettled(promises);
|
||||||
const areEntriesDeleted = results.some((result) => result.status === "fulfilled");
|
const areEntriesDeleted = results.some((result) => result.status === "fulfilled");
|
||||||
if (areEntriesDeleted) {
|
if (processedEntries === 0) {
|
||||||
|
handlePopUpClose("bulkDeleteEntries");
|
||||||
|
createNotification({
|
||||||
|
type: "info",
|
||||||
|
text: "No changes have been made. Ensure that you have sufficient access."
|
||||||
|
});
|
||||||
|
} else if (areEntriesDeleted) {
|
||||||
handlePopUpClose("bulkDeleteEntries");
|
handlePopUpClose("bulkDeleteEntries");
|
||||||
resetSelectedEntries();
|
resetSelectedEntries();
|
||||||
createNotification({
|
createNotification({
|
||||||
|
|||||||
Reference in New Issue
Block a user