X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/75fbb4eabf0da2fceebf8196bec769e4cbc6547b..7786e414318b20123a5435ea0f6403ffe95bccf7:/services/workbench2/src/views-components/multiselect-toolbar/ms-workflow-action-set.ts diff --git a/services/workbench2/src/views-components/multiselect-toolbar/ms-workflow-action-set.ts b/services/workbench2/src/views-components/multiselect-toolbar/ms-workflow-action-set.ts index ab819df225..124981aa17 100644 --- a/services/workbench2/src/views-components/multiselect-toolbar/ms-workflow-action-set.ts +++ b/services/workbench2/src/views-components/multiselect-toolbar/ms-workflow-action-set.ts @@ -2,13 +2,15 @@ // // SPDX-License-Identifier: AGPL-3.0 -import { openRunProcess, deleteWorkflow } from 'store/workflow-panel/workflow-panel-actions'; -import { StartIcon, TrashIcon, Link } from 'components/icon/icon'; +import { openRunProcess, openRemoveWorkflowDialog } from 'store/workflow-panel/workflow-panel-actions'; +import { StartIcon, DeleteForever, Link } from 'components/icon/icon'; import { MultiSelectMenuAction, MultiSelectMenuActionSet, msCommonActionSet } from './ms-menu-actions'; -import { MultiSelectMenuActionNames } from "views-components/multiselect-toolbar/ms-menu-actions"; +import { ContextMenuActionNames } from 'views-components/context-menu/context-menu-action-set'; import { copyToClipboardAction } from 'store/open-in-new-tab/open-in-new-tab.actions'; +import { openSharingDialog } from 'store/sharing-dialog/sharing-dialog-actions'; +import { ShareIcon } from 'components/icon/icon'; -const { OPEN_IN_NEW_TAB, COPY_TO_CLIPBOARD, VIEW_DETAILS, API_DETAILS, RUN_WORKFLOW, DELETE_WORKFLOW } = MultiSelectMenuActionNames; +const { OPEN_IN_NEW_TAB, COPY_LINK_TO_CLIPBOARD, VIEW_DETAILS, API_DETAILS, RUN_WORKFLOW, DELETE_WORKFLOW, SHARE } = ContextMenuActionNames; const msRunWorkflow: MultiSelectMenuAction = { name: RUN_WORKFLOW, @@ -22,16 +24,18 @@ const msRunWorkflow: MultiSelectMenuAction = { const msDeleteWorkflow: MultiSelectMenuAction = { name: DELETE_WORKFLOW, - icon: TrashIcon, + icon: DeleteForever, hasAlts: false, - isForMulti: false, + isForMulti: true, execute: (dispatch, resources) => { - dispatch(deleteWorkflow(resources[0].uuid, resources[0].ownerUuid)); + for (const resource of [...resources]){ + dispatch(openRemoveWorkflowDialog(resource, resources.length)); + } }, }; const msCopyToClipboardMenuAction: MultiSelectMenuAction = { - name: COPY_TO_CLIPBOARD, + name: COPY_LINK_TO_CLIPBOARD, icon: Link, hasAlts: false, isForMulti: false, @@ -40,7 +44,17 @@ const msCopyToClipboardMenuAction: MultiSelectMenuAction = { }, }; -export const msWorkflowActionSet: MultiSelectMenuActionSet = [[...msCommonActionSet, msRunWorkflow, msDeleteWorkflow, msCopyToClipboardMenuAction]]; +const msShareAction: MultiSelectMenuAction = { + name: SHARE, + icon: ShareIcon, + hasAlts: false, + isForMulti: false, + execute: (dispatch, resources) => { + dispatch(openSharingDialog(resources[0].uuid)); + }, +}; + +export const msWorkflowActionSet: MultiSelectMenuActionSet = [[...msCommonActionSet, msRunWorkflow, msDeleteWorkflow, msCopyToClipboardMenuAction, msShareAction]]; -export const msReadOnlyWorkflowActionFilter = new Set([OPEN_IN_NEW_TAB, COPY_TO_CLIPBOARD, VIEW_DETAILS, API_DETAILS, RUN_WORKFLOW ]); -export const msWorkflowActionFilter = new Set([OPEN_IN_NEW_TAB, COPY_TO_CLIPBOARD, VIEW_DETAILS, API_DETAILS, RUN_WORKFLOW, DELETE_WORKFLOW]); +export const msReadOnlyWorkflowActionFilter = new Set([OPEN_IN_NEW_TAB, COPY_LINK_TO_CLIPBOARD, VIEW_DETAILS, API_DETAILS, RUN_WORKFLOW ]); +export const msWorkflowActionFilter = new Set([OPEN_IN_NEW_TAB, COPY_LINK_TO_CLIPBOARD, VIEW_DETAILS, API_DETAILS, RUN_WORKFLOW, DELETE_WORKFLOW]);