21128: fixed navToOutput and circular deps Arvados-DCO-1.1-Signed-off-by: Lisa Knox...
[arvados-workbench2.git] / src / views-components / multiselect-toolbar / ms-process-action-set.ts
index f8ab66d90b4ad74d67a08aac7ff1464abffb852f..a5a4f0fba558e7e7cdcd69e72382a704380e10c3 100644 (file)
@@ -2,11 +2,14 @@
 //
 // SPDX-License-Identifier: AGPL-3.0
 
-import { MoveToIcon, RemoveIcon, ReRunProcessIcon } from "components/icon/icon";
+import { MoveToIcon, RemoveIcon, ReRunProcessIcon, OutputIcon, RenameIcon } from "components/icon/icon";
 import { openMoveProcessDialog } from "store/processes/process-move-actions";
 import { openCopyProcessDialog } from "store/processes/process-copy-actions";
 import { openRemoveProcessDialog } from "store/processes/processes-actions";
-import { MultiSelectMenuAction, MultiSelectMenuActionSet, MultiSelectMenuActionNames } from "./ms-menu-actions";
+import { MultiSelectMenuAction, MultiSelectMenuActionSet, msCommonActionSet } from "./ms-menu-actions";
+import { MultiSelectMenuActionNames } from "views-components/multiselect-toolbar/ms-menu-actions";
+import { openProcessUpdateDialog } from "store/processes/process-update-actions";
+import { msNavigateToOutput } from "store/multiselect/multiselect-actions";
 
 const msCopyAndRerunProcess: MultiSelectMenuAction = {
     name: MultiSelectMenuActionNames.COPY_AND_RERUN_PROCESS,
@@ -40,14 +43,39 @@ const msMoveTo: MultiSelectMenuAction = {
     },
 }
 
+const msViewOutputs: MultiSelectMenuAction = {
+    name: MultiSelectMenuActionNames.OUTPUTS,
+    icon: OutputIcon,
+    hasAlts: false,
+    isForMulti: false,
+    execute: (dispatch, resources) => {
+                if (resources[0]) {
+            dispatch<any>(msNavigateToOutput(resources[0]));
+        }
+    },
+}
+
+const msEditProcess: MultiSelectMenuAction = {
+    name: MultiSelectMenuActionNames.EDIT_PROCESS,
+    icon: RenameIcon,
+    hasAlts: false,
+    isForMulti: false,
+    execute: (dispatch, resources) => {
+        dispatch<any>(openProcessUpdateDialog(resources[0]));
+    },
+}
+
 export const msProcessActionSet: MultiSelectMenuActionSet = [
     [
+        ...msCommonActionSet,
         msCopyAndRerunProcess,
         msRemoveProcess,
-        msMoveTo
+        msMoveTo,
+        msViewOutputs,
+        msEditProcess
     ]
 ];
 
-const { MOVE_TO, REMOVE, COPY_AND_RERUN_PROCESS } = MultiSelectMenuActionNames
+const { MOVE_TO, REMOVE, COPY_AND_RERUN_PROCESS, ADD_TO_FAVORITES, OPEN_IN_NEW_TAB, VIEW_DETAILS, API_DETAILS, SHARE, ADD_TO_PUBLIC_FAVORITES, OUTPUTS, EDIT_PROCESS } = MultiSelectMenuActionNames
 
-export const processResourceMSActionsFilter = new Set([MOVE_TO, REMOVE, COPY_AND_RERUN_PROCESS ]);
+export const msCommonProcessActionFilter = new Set([MOVE_TO, REMOVE, COPY_AND_RERUN_PROCESS, ADD_TO_FAVORITES, OPEN_IN_NEW_TAB, VIEW_DETAILS, API_DETAILS, SHARE, ADD_TO_PUBLIC_FAVORITES, OUTPUTS, EDIT_PROCESS ]);