Merge branch 'master' into 16812-token-appears-in-the-download-URL
[arvados-workbench2.git] / src / views-components / context-menu / action-sets / collection-files-item-action-set.ts
1 // Copyright (C) The Arvados Authors. All rights reserved.
2 //
3 // SPDX-License-Identifier: AGPL-3.0
4
5 import { ContextMenuActionSet } from "../context-menu-action-set";
6 import { RemoveIcon, RenameIcon } from "~/components/icon/icon";
7 import { DownloadCollectionFileAction } from "../actions/download-collection-file-action";
8 import { openFileRemoveDialog, openRenameFileDialog } from '~/store/collection-panel/collection-panel-files/collection-panel-files-actions';
9 import { CollectionFileViewerAction } from '~/views-components/context-menu/actions/collection-file-viewer-action';
10 import { CollectionCopyToClipboardAction } from "../actions/collection-copy-to-clipboard-action";
11
12 export const readOnlyCollectionFilesItemActionSet: ContextMenuActionSet = [[
13     {
14         component: DownloadCollectionFileAction,
15         execute: () => { return; }
16     },
17     {
18         component: CollectionFileViewerAction,
19         execute: () => { return; },
20     },
21     {
22         component: CollectionCopyToClipboardAction,
23         execute: () => { return; },
24     }
25 ]];
26
27 export const collectionFilesItemActionSet: ContextMenuActionSet = readOnlyCollectionFilesItemActionSet.concat([[
28     {
29         name: "Rename",
30         icon: RenameIcon,
31         execute: (dispatch, resource) => {
32             dispatch<any>(openRenameFileDialog({ name: resource.name, id: resource.uuid }));
33         }
34     },
35     {
36         name: "Remove",
37         icon: RemoveIcon,
38         execute: (dispatch, resource) => {
39             dispatch<any>(openFileRemoveDialog(resource.uuid));
40         }
41     }
42 ]]);