21621: Add unit test for json copy to clipboard
[arvados.git] / services / workbench2 / src / store / trash / trash-actions.ts
index 62b669220e68e2e6d3089f878f7fe4e73f29b962..c7c3186c0f17b2e7f5e6a62f7bf43cbbec6788dd 100644 (file)
@@ -8,11 +8,13 @@ import { ServiceRepository } from "services/services";
 import { snackbarActions, SnackbarKind } from "store/snackbar/snackbar-actions";
 import { trashPanelActions } from "store/trash-panel/trash-panel-action";
 import { activateSidePanelTreeItem, loadSidePanelTreeProjects } from "store/side-panel-tree/side-panel-tree-actions";
-import { projectPanelActions } from "store/project-panel/project-panel-action-bind";
+import { projectPanelDataActions } from "store/project-panel/project-panel-action-bind";
 import { sharedWithMePanelActions } from "store/shared-with-me-panel/shared-with-me-panel-actions";
 import { ResourceKind } from "models/resource";
 import { navigateTo, navigateToTrash } from "store/navigation/navigation-action";
 import { matchCollectionRoute, matchSharedWithMeRoute } from "routes/routes";
+import { ContextMenuActionNames } from "views-components/context-menu/context-menu-action-set";
+import { addDisabledButton } from "store/multiselect/multiselect-actions";
 
 export const toggleProjectTrashed =
     (uuid: string, ownerUuid: string, isTrashed: boolean, isMulti: boolean) =>
@@ -20,11 +22,12 @@ export const toggleProjectTrashed =
             let errorMessage = "";
             let successMessage = "";
             let untrashedResource;
+            dispatch<any>(addDisabledButton(ContextMenuActionNames.MOVE_TO_TRASH))
             try {
                 if (isTrashed) {
                     errorMessage = "Could not restore project from trash";
                     successMessage = "Restored project from trash";
-                    untrashedResource = await services.groupsService.untrash(uuid);
+                     untrashedResource = await services.groupsService.untrash(uuid);
                     dispatch<any>(isMulti || !untrashedResource ? navigateToTrash : navigateTo(uuid));
                     dispatch<any>(activateSidePanelTreeItem(uuid));
                 } else {
@@ -42,7 +45,7 @@ export const toggleProjectTrashed =
                     }
                 }
                 if (untrashedResource) {
-                    dispatch(
+                        dispatch(
                         snackbarActions.OPEN_SNACKBAR({
                             message: successMessage,
                             hideDuration: 2000,
@@ -74,6 +77,7 @@ export const toggleCollectionTrashed =
         async (dispatch: Dispatch, getState: () => RootState, services: ServiceRepository): Promise<any> => {
             let errorMessage = "";
             let successMessage = "";
+            dispatch<any>(addDisabledButton(ContextMenuActionNames.MOVE_TO_TRASH))
             try {
                 if (isTrashed) {
                     const { location } = getState().router;
@@ -88,7 +92,7 @@ export const toggleCollectionTrashed =
                     errorMessage = "Could not move collection to trash";
                     successMessage = "Added to trash";
                     await services.collectionService.trash(uuid);
-                    dispatch(projectPanelActions.REQUEST_ITEMS());
+                    dispatch(projectPanelDataActions.REQUEST_ITEMS());
                 }
                 dispatch(
                     snackbarActions.OPEN_SNACKBAR({