Refactor code
[arvados.git] / src / views-components / context-menu / action-sets / root-project-action-set.ts
1 // Copyright (C) The Arvados Authors. All rights reserved.
2 //
3 // SPDX-License-Identifier: AGPL-3.0
4
5 import { reset } from "redux-form";
6
7 import { ContextMenuActionSet } from "../context-menu-action-set";
8 import { projectActions } from "~/store/project/project-action";
9 import { collectionCreateActions } from "~/store/collections/creator/collection-creator-action";
10 import { PROJECT_CREATE_DIALOG } from "../../dialog-create/dialog-project-create";
11 import { COLLECTION_CREATE_DIALOG } from "../../dialog-create/dialog-collection-create";
12 import { NewProjectIcon, CollectionIcon } from "~/components/icon/icon";
13
14 export const rootProjectActionSet: ContextMenuActionSet =  [[
15     {
16         icon: NewProjectIcon,
17         name: "New project",
18         execute: (dispatch, resource) => {
19             dispatch(reset(PROJECT_CREATE_DIALOG));
20             dispatch(projectActions.OPEN_PROJECT_CREATOR({ ownerUuid: resource.uuid }));
21         }
22     },
23     {
24         icon: CollectionIcon,
25         name: "New Collection",
26         execute: (dispatch, resource) => {
27             dispatch(reset(COLLECTION_CREATE_DIALOG));
28             dispatch(collectionCreateActions.OPEN_COLLECTION_CREATOR({ ownerUuid: resource.uuid }));
29         }
30     }
31 ]];