[ARVADOS-WORKBENCH2] updated: 1.1.4-447-gc3b3bdb

Git user git at public.curoverse.com
Mon Jul 30 10:48:27 EDT 2018


Summary of changes:
 src/index.tsx                                      |  4 +++
 .../collection-panel-files.ts                      | 18 ++++++++++--
 .../action-sets/collection-files-action-set.ts     | 33 ++++++++++++++++++++++
 .../collection-files-item-action-set.ts            | 27 ++++++++++++++++++
 src/views-components/context-menu/context-menu.tsx |  4 ++-
 src/views/workbench/workbench.tsx                  |  6 +---
 6 files changed, 84 insertions(+), 8 deletions(-)
 create mode 100644 src/views-components/context-menu/action-sets/collection-files-action-set.ts
 create mode 100644 src/views-components/context-menu/action-sets/collection-files-item-action-set.ts

       via  c3b3bdb39e8e0a8ec7368f06a95450a0ef5e572e (commit)
      from  b79348f1be6a2dce8ceede8bd4c2906fc1098e2b (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.


commit c3b3bdb39e8e0a8ec7368f06a95450a0ef5e572e
Author: Michal Klobukowski <michal.klobukowski at contractors.roche.com>
Date:   Mon Jul 30 16:48:11 2018 +0200

    Init collection-files context menus
    
    Feature #13855
    
    Arvados-DCO-1.1-Signed-off-by: Michal Klobukowski <michal.klobukowski at contractors.roche.com>

diff --git a/src/index.tsx b/src/index.tsx
index 77d5763..64ff705 100644
--- a/src/index.tsx
+++ b/src/index.tsx
@@ -24,11 +24,15 @@ import { rootProjectActionSet } from "./views-components/context-menu/action-set
 import { projectActionSet } from "./views-components/context-menu/action-sets/project-action-set";
 import { resourceActionSet } from './views-components/context-menu/action-sets/resource-action-set';
 import { favoriteActionSet } from "./views-components/context-menu/action-sets/favorite-action-set";
+import { collectionFilesActionSet } from './views-components/context-menu/action-sets/collection-files-action-set';
+import { collectionFilesItemActionSet } from './views-components/context-menu/action-sets/collection-files-item-action-set';
 
 addMenuActionSet(ContextMenuKind.ROOT_PROJECT, rootProjectActionSet);
 addMenuActionSet(ContextMenuKind.PROJECT, projectActionSet);
 addMenuActionSet(ContextMenuKind.RESOURCE, resourceActionSet);
 addMenuActionSet(ContextMenuKind.FAVORITE, favoriteActionSet);
+addMenuActionSet(ContextMenuKind.COLLECTION_FILES, collectionFilesActionSet);
+addMenuActionSet(ContextMenuKind.COLLECTION_FILES_ITEM, collectionFilesItemActionSet);
 
 fetchConfig()
     .then(config => {
diff --git a/src/views-components/collection-panel-files/collection-panel-files.ts b/src/views-components/collection-panel-files/collection-panel-files.ts
index a95bcac..86953a0 100644
--- a/src/views-components/collection-panel-files/collection-panel-files.ts
+++ b/src/views-components/collection-panel-files/collection-panel-files.ts
@@ -10,6 +10,8 @@ import { CollectionPanelFile } from "../../store/collection-panel/collection-pan
 import { FileTreeData } from "../../components/file-tree/file-tree-data";
 import { Dispatch } from "redux";
 import { collectionPanelFilesAction } from "../../store/collection-panel/collection-panel-files/collection-panel-files-actions";
+import { contextMenuActions } from "../../store/context-menu/context-menu-actions";
+import { ContextMenuKind } from "../context-menu/context-menu";
 
 const mapStateToProps = (state: RootState): Pick<CollectionPanelFilesProps, "items"> => ({
     items: state.collectionPanelFiles
@@ -17,9 +19,21 @@ const mapStateToProps = (state: RootState): Pick<CollectionPanelFilesProps, "ite
         .map(fileToTreeItem(state.collectionPanelFiles))
 });
 
-const mapDispatchToProps = (dispatch: Dispatch): Pick<CollectionPanelFilesProps, 'onCollapseToggle' | 'onSelectionToggle'> => ({
+const mapDispatchToProps = (dispatch: Dispatch): Pick<CollectionPanelFilesProps, 'onCollapseToggle' | 'onSelectionToggle' | 'onItemMenuOpen' | 'onOptionsMenuOpen'> => ({
     onCollapseToggle: (id) => dispatch(collectionPanelFilesAction.TOGGLE_COLLECTION_FILE_COLLAPSE({ id })),
-    onSelectionToggle: (event, item) => dispatch(collectionPanelFilesAction.TOGGLE_COLLECTION_FILE_SELECTION({id: item.id})),
+    onSelectionToggle: (event, item) => dispatch(collectionPanelFilesAction.TOGGLE_COLLECTION_FILE_SELECTION({ id: item.id })),
+    onItemMenuOpen: (event, item) => {
+        event.preventDefault();
+        dispatch(contextMenuActions.OPEN_CONTEXT_MENU({
+            position: { x: event.clientX, y: event.clientY },
+            resource: { kind: ContextMenuKind.COLLECTION_FILES_ITEM, name: item.data.name, uuid: item.id }
+        }));
+    },
+    onOptionsMenuOpen: (event) =>
+        dispatch(contextMenuActions.OPEN_CONTEXT_MENU({
+            position: { x: event.clientX, y: event.clientY },
+            resource: { kind: ContextMenuKind.COLLECTION_FILES, name: '', uuid: '' }
+        }))
 });
 
 
diff --git a/src/views-components/context-menu/action-sets/collection-files-action-set.ts b/src/views-components/context-menu/action-sets/collection-files-action-set.ts
new file mode 100644
index 0000000..1e183d5
--- /dev/null
+++ b/src/views-components/context-menu/action-sets/collection-files-action-set.ts
@@ -0,0 +1,33 @@
+// Copyright (C) The Arvados Authors. All rights reserved.
+//
+// SPDX-License-Identifier: AGPL-3.0
+
+import { ContextMenuActionSet } from "../context-menu-action-set";
+
+
+export const collectionFilesActionSet: ContextMenuActionSet = [[{
+    name: "Select all",
+    execute: (dispatch, resource) => {
+        return;
+    }
+},{
+    name: "Unselect all",
+    execute: (dispatch, resource) => {
+        return;
+    }
+},{
+    name: "Remove selected",
+    execute: (dispatch, resource) => {
+        return;
+    }
+},{
+    name: "Download selected",
+    execute: (dispatch, resource) => {
+        return;
+    }
+},{
+    name: "Create a new collection with selected",
+    execute: (dispatch, resource) => {
+        return;
+    }
+}]];
diff --git a/src/views-components/context-menu/action-sets/collection-files-item-action-set.ts b/src/views-components/context-menu/action-sets/collection-files-item-action-set.ts
new file mode 100644
index 0000000..5e84276
--- /dev/null
+++ b/src/views-components/context-menu/action-sets/collection-files-item-action-set.ts
@@ -0,0 +1,27 @@
+// Copyright (C) The Arvados Authors. All rights reserved.
+//
+// SPDX-License-Identifier: AGPL-3.0
+
+import { ContextMenuActionSet } from "../context-menu-action-set";
+import { RenameIcon, DownloadIcon, RemoveIcon } from "../../../components/icon/icon";
+
+
+export const collectionFilesItemActionSet: ContextMenuActionSet = [[{
+    name: "Rename",
+    icon: RenameIcon,
+    execute: (dispatch, resource) => {
+        return;
+    }
+},{
+    name: "Download",
+    icon: DownloadIcon,
+    execute: (dispatch, resource) => {
+        return;
+    }
+},{
+    name: "Remove",
+    icon: RemoveIcon,
+    execute: (dispatch, resource) => {
+        return;
+    }
+}]];
diff --git a/src/views-components/context-menu/context-menu.tsx b/src/views-components/context-menu/context-menu.tsx
index 5b1049c..20ed669 100644
--- a/src/views-components/context-menu/context-menu.tsx
+++ b/src/views-components/context-menu/context-menu.tsx
@@ -59,5 +59,7 @@ export enum ContextMenuKind {
     ROOT_PROJECT = "RootProject",
     PROJECT = "Project",
     RESOURCE = "Resource",
-    FAVORITE = "Favorite"
+    FAVORITE = "Favorite",
+    COLLECTION_FILES = "CollectionFiles",
+    COLLECTION_FILES_ITEM = "CollectionFilesItem",
 }
diff --git a/src/views/workbench/workbench.tsx b/src/views/workbench/workbench.tsx
index ac9b06c..34030f1 100644
--- a/src/views/workbench/workbench.tsx
+++ b/src/views/workbench/workbench.tsx
@@ -213,11 +213,7 @@ export const Workbench = withStyles(styles)(
                                 <Switch>
                                     <Route path="/projects/:id" render={this.renderProjectPanel} />
                                     <Route path="/favorites" render={this.renderFavoritePanel} />
-                                    <Route path="/" render={() => 
-                                    <CollectionPanelFiles 
-                                        onItemMenuOpen={console.log}
-                                        onOptionsMenuOpen={console.log}
-                                        />} />
+                                    <Route path="/" render={() => <CollectionPanelFiles />} />
                                 </Switch>
                             </div>
                             {user && <DetailsPanel />}

-----------------------------------------------------------------------


hooks/post-receive
-- 




More information about the arvados-commits mailing list