diff --git a/packages/client/src/store/ContextOptionsStore.js b/packages/client/src/store/ContextOptionsStore.js index b378b54663..f981fff1c2 100644 --- a/packages/client/src/store/ContextOptionsStore.js +++ b/packages/client/src/store/ContextOptionsStore.js @@ -374,7 +374,44 @@ class ContextOptionsStore { this.mediaViewerDataStore.setMediaViewerData({ visible: true, id: itemId }); }; + onClickDeleteSelectedFolder = (t) => { + const { setIsFolderActions, setDeleteDialogVisible } = this.dialogsStore; + const { confirmDelete } = this.settingsStore; + const { deleteAction } = this.filesActionsStore; + const { id: selectedFolderId } = this.selectedFolderStore; + const { + isThirdPartySelection, + getFolderInfo, + setBufferSelection, + } = this.filesStore; + + setIsFolderActions(true); + + if (confirmDelete || isThirdPartySelection) { + getFolderInfo(selectedFolderId).then((data) => { + setBufferSelection(data); + setDeleteDialogVisible(true); + }); + } else { + const translations = { + deleteOperation: t("Translations:DeleteOperation"), + deleteFromTrash: t("Translations:DeleteFromTrash"), + deleteSelectedElem: t("Translations:DeleteSelectedElem"), + FolderRemoved: t("Files:FolderRemoved"), + }; + + deleteAction(translations, [selectedFolderId], true).catch((err) => + toastr.error(err) + ); + } + }; + onClickDelete = (item, t) => { + if (item.id === this.selectedFolderStore.id) { + this.onClickDeleteSelectedFolder(t); + return; + } + const { setRemoveItem, setDeleteThirdPartyDialogVisible, @@ -382,6 +419,7 @@ class ContextOptionsStore { const { id, title, providerKey, rootFolderId, isFolder, isRoom } = item; + console.log(providerKey, id, rootFolderId); const isRootThirdPartyFolder = providerKey && id === rootFolderId; if (isRootThirdPartyFolder) { @@ -399,10 +437,6 @@ class ContextOptionsStore { successRemoveRooms: t("Files:RoomsRemoved"), }; - if (id === this.selectedFolderStore.id) { - console.log("needToMove"); - } - this.filesActionsStore.deleteItemAction( id, translations,