Merge branch 'master' into 13990-collection-files-service-based-on-webdav
[arvados-workbench2.git] / src / views-components / file-remove-dialog / multiple-files-remove-dialog.ts
index 8810e23a9128a1ed933c37d698f680b68300edf6..03dae1dd8bc719b3b5062f0eec22aee855c150b3 100644 (file)
@@ -4,34 +4,17 @@
 
 import { Dispatch } from "redux";
 import { connect } from "react-redux";
-import { ConfirmationDialog } from "../../components/confirmation-dialog/confirmation-dialog";
-import { withDialog } from "../../store/dialog/with-dialog";
-import { dialogActions } from "../../store/dialog/dialog-actions";
-import { snackbarActions } from "../../store/snackbar/snackbar-actions";
+import { MULTIPLE_FILES_REMOVE_DIALOG, removeCollectionsSelectedFiles } from "../../store/collection-panel/collection-panel-files/collection-panel-files-actions";
+import { ConfirmationDialog } from "~/components/confirmation-dialog/confirmation-dialog";
+import { withDialog, WithDialogProps } from "~/store/dialog/with-dialog";
 
-const MULTIPLE_FILES_REMOVE_DIALOG = 'multipleFilesRemoveDialog';
-
-const mapDispatchToProps = (dispatch: Dispatch) => ({
+const mapDispatchToProps = (dispatch: Dispatch, props: WithDialogProps<any>) => ({
     onConfirm: () => {
-        // TODO: dispatch action that removes multiple files
-        dispatch(dialogActions.CLOSE_DIALOG({ id: MULTIPLE_FILES_REMOVE_DIALOG }));
-        dispatch(snackbarActions.OPEN_SNACKBAR({message: 'Removing files...', hideDuration: 2000}));
-        setTimeout(() => {
-            dispatch(snackbarActions.OPEN_SNACKBAR({message: 'Files removed.', hideDuration: 2000}));
-        }, 1000);
+        props.closeDialog();
+        dispatch<any>(removeCollectionsSelectedFiles());
     }
 });
 
-export const openMultipleFilesRemoveDialog = () =>
-    dialogActions.OPEN_DIALOG({
-        id: MULTIPLE_FILES_REMOVE_DIALOG,
-        data: {
-            title: 'Removing files',
-            text: 'Are you sure you want to remove selected files?',
-            confirmButtonLabel: 'Remove'
-        }
-    });
-
 export const [MultipleFilesRemoveDialog] = [ConfirmationDialog]
-    .map(withDialog(MULTIPLE_FILES_REMOVE_DIALOG))
-    .map(connect(undefined, mapDispatchToProps));
\ No newline at end of file
+    .map(connect(undefined, mapDispatchToProps))
+    .map(withDialog(MULTIPLE_FILES_REMOVE_DIALOG));