1 // Copyright (C) The Arvados Authors. All rights reserved.
3 // SPDX-License-Identifier: AGPL-3.0
5 import { Dispatch } from "redux";
6 import { ContextMenuItem } from "components/context-menu/context-menu";
7 import { ContextMenuResource } from "store/context-menu/context-menu-actions";
9 export enum ContextMenuActionNames {
10 ACCOUNT_SETTINGS = 'Account settings',
11 ACTIVATE_USER = 'Activate user',
12 ADD_TO_FAVORITES = 'Add to favorites',
13 ADD_TO_PUBLIC_FAVORITES = 'Add to public favorites',
14 ATTRIBUTES = 'Attributes',
15 API_DETAILS = 'API Details',
17 COPY_AND_RERUN_PROCESS = 'Copy and re-run process',
18 COPY_ITEM_INTO_EXISTING_COLLECTION = 'Copy item into existing collection',
19 COPY_ITEM_INTO_NEW_COLLECTION = 'Copy item into new collection',
20 COPY_SELECTED_INTO_EXISTING_COLLECTION = 'Copy selected into existing collection',
21 COPY_SELECTED_INTO_SEPARATE_COLLECTIONS = 'Copy selected into separate collections',
22 COPY_SELECTED_INTO_NEW_COLLECTION = 'Copy selected into new collection',
23 COPY_LINK_TO_CLIPBOARD = 'Copy link to clipboard',
24 COPY_UUID_LINK_TO_CLIPBOARD = 'Copy link to clipboard (uuid)',
25 COPY_PDH_LINK_TO_CLIPBOARD = 'Copy link to clipboard (pdh)',
26 COPY_CWL_LINK_TO_CLIPBOARD = 'Copy link to clipboard (cwl)',
27 DEACTIVATE_USER = 'Deactivate user',
28 DELETE_WORKFLOW = 'Delete Workflow',
30 DOWNLOAD = 'Download',
31 EDIT_COLLECTION = 'Edit collection',
32 EDIT_PROCESS = 'Edit process',
33 EDIT_PROJECT = 'Edit project',
34 FREEZE_PROJECT = 'Freeze project',
35 HOME_PROJECT = 'Home project',
36 LOGIN_AS_USER = 'Login as user',
37 MAKE_A_COPY = 'Make a copy',
39 MOVE_ITEM_INTO_EXISTING_COLLECTION = 'Move item into existing collection',
40 MOVE_ITEM_INTO_NEW_COLLECTION = 'Move item into new collection',
41 MOVE_SELECTED_INTO_EXISTING_COLLECTION = 'Move selected into existing collection',
42 MOVE_SELECTED_INTO_NEW_COLLECTION = 'Move selected into new collection',
43 MOVE_SELECTED_INTO_SEPARATE_COLLECTIONS = 'Move selected into separate collections',
45 MOVE_TO_TRASH = 'Move to trash',
46 NEW_COLLECTION = 'New collection',
47 NEW_PROJECT = 'New project',
48 OPEN_IN_NEW_TAB = 'Open in new tab',
49 OPEN_WITH_3RD_PARTY_CLIENT = 'Open with 3rd party client',
51 PROVENANCE_GRAPH = 'Provenance graph',
54 REMOVE_SELECTED = 'Remove selected',
57 RESTORE_VERSION = 'Restore version',
58 RUN_WORKFLOW = 'Run Workflow',
59 SELECT_ALL = 'Select all',
60 SETUP_USER = 'Setup user',
62 UNSELECT_ALL = 'Unselect all',
63 USER_ACCOUNT = 'User account',
64 VIEW_DETAILS = 'View details',
68 export interface ContextMenuAction extends ContextMenuItem {
69 execute(dispatch: Dispatch, resources: ContextMenuResource[], state?: any): void;
72 export type ContextMenuActionSet = Array<Array<ContextMenuAction>>;