ui-move-to-popup-without-side-panel
[arvados-workbench2.git] / src / views-components / context-menu / action-sets / project-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 { projectActions } from "../../../store/project/project-action";
7 import { NewProjectIcon, MoveToIcon } from "../../../components/icon/icon";
8 import { ToggleFavoriteAction } from "../actions/favorite-action";
9 import { toggleFavorite } from "../../../store/favorites/favorites-actions";
10 import { favoritePanelActions } from "../../../store/favorite-panel/favorite-panel-action";
11 import { openMoveToDialog } from "../../move-to-dialog/move-to-dialog";
12
13 export const projectActionSet: ContextMenuActionSet = [[{
14     icon: NewProjectIcon,
15     name: "New project",
16     execute: (dispatch, resource) => {
17         dispatch(projectActions.OPEN_PROJECT_CREATOR({ ownerUuid: resource.uuid }));
18     }
19 }, {
20     component: ToggleFavoriteAction,
21     execute: (dispatch, resource) => {
22         dispatch<any>(toggleFavorite(resource)).then(() => {
23             dispatch<any>(favoritePanelActions.REQUEST_ITEMS());
24         });
25     }
26 }, {
27     icon: MoveToIcon,
28     name: "Move to",
29     execute: (dispatch) => {
30         dispatch<any>(openMoveToDialog());
31     }
32 },]];