21128: wrote basic process menu Arvados-DCO-1.1-Signed-off-by: Lisa Knox <lisa.knox...
authorLisa Knox <lisaknox83@gmail.com>
Tue, 5 Dec 2023 16:18:33 +0000 (11:18 -0500)
committerLisa Knox <lisaknox83@gmail.com>
Tue, 5 Dec 2023 16:18:33 +0000 (11:18 -0500)
src/components/multiselect-toolbar/ms-toolbar-action-filters.ts
src/views-components/multiselect-toolbar/ms-menu-actions.ts
src/views-components/multiselect-toolbar/ms-process-action-set.ts

index 01eba20050cf9de4603f1290bb10099aa7bfdb92..af8a52a9cfeb391a54f988f8c788e52eaac69a6e 100644 (file)
@@ -11,7 +11,7 @@ import {
     msFilterGroupActionFilter,
     msFrozenProjectActionFilter,
 } from 'views-components/multiselect-toolbar/ms-project-action-set';
-import { msProcessActionSet, processResourceMSActionsFilter } from 'views-components/multiselect-toolbar/ms-process-action-set';
+import { msProcessActionSet, msCommonProcessActionFilter } from 'views-components/multiselect-toolbar/ms-process-action-set';
 import { msWorkflowActionSet, msWorkflowActionFilter, msReadOnlyWorkflowActionFilter } from 'views-components/multiselect-toolbar/ms-workflow-action-set';
 import { ResourceKind } from 'models/resource';
 
@@ -74,9 +74,9 @@ export const multiselectActionsFilters: TMultiselectActionsFilters = {
     [READONLY_COLLECTION]: [msCollectionActionSet, msReadOnlyCollectionActionFilter],
     [ResourceKind.COLLECTION]: [msCollectionActionSet, msCommonCollectionActionFilter],
     [COLLECTION_ADMIN]: [msCollectionActionSet, allActionNames(msCollectionActionSet)],
-    [PROCESS]: [msProcessActionSet, processResourceMSActionsFilter],
-    [ResourceKind.PROCESS]: [msProcessActionSet, processResourceMSActionsFilter],
-    [PROCESS_ADMIN]: [msProcessActionSet, processResourceMSActionsFilter],
+    [PROCESS]: [msProcessActionSet, msCommonProcessActionFilter],
+    [ResourceKind.PROCESS]: [msProcessActionSet, msCommonProcessActionFilter],
+    [PROCESS_ADMIN]: [msProcessActionSet, msCommonProcessActionFilter],
     [PROJECT]: [msProjectActionSet, msCommonProjectActionFilter],
     [ResourceKind.PROJECT]: [msProjectActionSet, msCommonProjectActionFilter],
     [PROJECT_ADMIN]: [msProjectActionSet, allActionNames(msProjectActionSet)],
index 7e338406d5bc0ee3abecc3186eb0101f979ddd3c..b94209972cffbaf3f5fddc3267aee9d846336786 100644 (file)
@@ -29,12 +29,14 @@ export enum MultiSelectMenuActionNames {
     DELETE_WORKFLOW = 'Delete Worflow',
     EDIT_COLLECTION = 'Edit collection',
     EDIT_PROJECT = 'Edit project',
+    EDIT_PROCESS = 'Edit process',
     FREEZE_PROJECT = 'Freeze Project',
     MAKE_A_COPY = 'Make a copy',
     MOVE_TO = 'Move to',
     NEW_PROJECT = 'New project',
     OPEN_IN_NEW_TAB = 'Open in new tab',
     OPEN_W_3RD_PARTY_CLIENT = 'Open with 3rd party client',
+    OUTPUTS = 'Outputs',
     REMOVE = 'Remove',
     RUN_WORKFLOW = 'Run Workflow',
     SHARE = 'Share',
index f8ab66d90b4ad74d67a08aac7ff1464abffb852f..467da89973eeb57e4ff6f84fbb12e5a8e1e068b8 100644 (file)
@@ -2,11 +2,13 @@
 //
 // 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, MultiSelectMenuActionNames, msCommonActionSet } from "./ms-menu-actions";
+import { navigateToOutput } from "store/process-panel/process-panel-actions";
+import { openProcessUpdateDialog } from "store/processes/process-update-actions";
 
 const msCopyAndRerunProcess: MultiSelectMenuAction = {
     name: MultiSelectMenuActionNames.COPY_AND_RERUN_PROCESS,
@@ -40,14 +42,39 @@ const msMoveTo: MultiSelectMenuAction = {
     },
 }
 
+const msViewOutputs: MultiSelectMenuAction = {
+    name: MultiSelectMenuActionNames.OUTPUTS,
+    icon: OutputIcon,
+    hasAlts: false,
+    isForMulti: false,
+    execute: (dispatch, resources) => {
+        if (resources[0].outputUuid) {
+            dispatch<any>(navigateToOutput(resources[0].outputUuid));
+        }
+    },
+}
+
+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 ]);