From 2f53f965f3038c6d7f3a258da6c7a071daae42b0 Mon Sep 17 00:00:00 2001 From: Lisa Knox Date: Tue, 5 Dec 2023 11:18:33 -0500 Subject: [PATCH] 21128: wrote basic process menu Arvados-DCO-1.1-Signed-off-by: Lisa Knox --- .../ms-toolbar-action-filters.ts | 8 ++-- .../multiselect-toolbar/ms-menu-actions.ts | 2 + .../ms-process-action-set.ts | 37 ++++++++++++++++--- 3 files changed, 38 insertions(+), 9 deletions(-) diff --git a/src/components/multiselect-toolbar/ms-toolbar-action-filters.ts b/src/components/multiselect-toolbar/ms-toolbar-action-filters.ts index 01eba20050..af8a52a9cf 100644 --- a/src/components/multiselect-toolbar/ms-toolbar-action-filters.ts +++ b/src/components/multiselect-toolbar/ms-toolbar-action-filters.ts @@ -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)], diff --git a/src/views-components/multiselect-toolbar/ms-menu-actions.ts b/src/views-components/multiselect-toolbar/ms-menu-actions.ts index 7e338406d5..b94209972c 100644 --- a/src/views-components/multiselect-toolbar/ms-menu-actions.ts +++ b/src/views-components/multiselect-toolbar/ms-menu-actions.ts @@ -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', diff --git a/src/views-components/multiselect-toolbar/ms-process-action-set.ts b/src/views-components/multiselect-toolbar/ms-process-action-set.ts index f8ab66d90b..467da89973 100644 --- a/src/views-components/multiselect-toolbar/ms-process-action-set.ts +++ b/src/views-components/multiselect-toolbar/ms-process-action-set.ts @@ -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(navigateToOutput(resources[0].outputUuid)); + } + }, +} + +const msEditProcess: MultiSelectMenuAction = { + name: MultiSelectMenuActionNames.EDIT_PROCESS, + icon: RenameIcon, + hasAlts: false, + isForMulti: false, + execute: (dispatch, resources) => { + dispatch(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 ]); -- 2.30.2