1 // Copyright (C) The Arvados Authors. All rights reserved.
3 // SPDX-License-Identifier: AGPL-3.0
5 import { ContextMenuActionSet } from "views-components/context-menu/context-menu-action-set";
6 import { MoveToIcon, Link } from "components/icon/icon";
7 import { openMoveProjectDialog } from "store/projects/project-move-actions";
8 import { ToggleTrashAction } from "views-components/context-menu/actions/trash-action";
9 import { toggleProjectTrashed } from "store/trash/trash-actions";
10 import { copyToClipboardAction } from "store/open-in-new-tab/open-in-new-tab.actions";
12 export const msCopyToClipboardMenuAction = {
14 name: "Copy to clipboard",
15 execute: (dispatch, resources) => {
16 dispatch(copyToClipboardAction(resources));
20 export const msMoveToAction = {
23 execute: (dispatch, resource) => {
24 dispatch(openMoveProjectDialog(resource[0]));
28 export const msToggleTrashAction = {
29 component: ToggleTrashAction,
30 name: "ToggleTrashAction",
31 execute: (dispatch, resources) => {
32 for (const resource of resources) {
33 dispatch(toggleProjectTrashed(resource.uuid, resource.ownerUuid, resource.isTrashed!!, resources.length > 1));
38 export const msProjectActionSet: ContextMenuActionSet = [[msCopyToClipboardMenuAction, msMoveToAction, msToggleTrashAction]];