Merge branch 'master'
[arvados-workbench2.git] / src / views-components / file-remove-dialog / multiple-files-remove-dialog.ts
index 1362de6b8ac424c479c460674cb1eb43fe5996a7..03dae1dd8bc719b3b5062f0eec22aee855c150b3 100644 (file)
@@ -4,34 +4,17 @@
 
 import { Dispatch } from "redux";
 import { connect } from "react-redux";
+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 } from "~/store/dialog/with-dialog";
-import { dialogActions } from "~/store/dialog/dialog-actions";
-import { snackbarActions } from "~/store/snackbar/snackbar-actions";
+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));
+    .map(connect(undefined, mapDispatchToProps))
+    .map(withDialog(MULTIPLE_FILES_REMOVE_DIALOG));