Update item icon and type rendering accoring to item type
authorMichal Klobukowski <michal.klobukowski@contractors.roche.com>
Wed, 4 Jul 2018 12:52:31 +0000 (14:52 +0200)
committerMichal Klobukowski <michal.klobukowski@contractors.roche.com>
Wed, 4 Jul 2018 12:52:31 +0000 (14:52 +0200)
Feature #13703

Arvados-DCO-1.1-Signed-off-by: Michal Klobukowski <michal.klobukowski@contractors.roche.com>

src/views/project-panel/project-panel.tsx

index ff3dd9c8dd0876c1eed17d1490130e7e01d4ecc8..8d779d46afbc7be010c2c52fdf11645dcc832b0c 100644 (file)
@@ -9,11 +9,10 @@ import { formatDate, formatFileSize } from '../../common/formatters';
 import DataExplorer from "../../views-components/data-explorer/data-explorer";
 import { ContextMenuAction } from '../../components/context-menu/context-menu';
 import { DispatchProp, connect } from 'react-redux';
-import actions from "../../store/data-explorer/data-explorer-action";
 import { DataColumns } from '../../components/data-table/data-table';
-import { ResourceKind } from "../../models/resource";
 import { RouteComponentProps } from 'react-router';
 import { RootState } from '../../store/store';
+import { ResourceKind } from '../../models/kinds';
 
 export const PROJECT_PANEL_ID = "projectPanel";
 
@@ -90,10 +89,13 @@ const renderName = (item: ProjectPanelItem) =>
 
 const renderIcon = (item: ProjectPanelItem) => {
     switch (item.kind) {
-        case ResourceKind.PROJECT:
+        case ResourceKind.Project:
             return <i className="fas fa-folder fa-lg" />;
-        case ResourceKind.COLLECTION:
-            return <i className="fas fa-th fa-lg" />;
+        case ResourceKind.Collection:
+            return <i className="fas fa-archive fa-lg" />;
+        case ResourceKind.Process:
+        case ResourceKind.Workflow:
+            return <i className="fas fa-cogs fa-lg" />;
         default:
             return <i />;
     }
@@ -114,10 +116,26 @@ const renderOwner = (owner: string) =>
         {owner}
     </Typography>;
 
-const renderType = (type: string) =>
-    <Typography noWrap>
-        {type}
+const getItemTypeLabel = (type: string) => {
+    switch(type){
+        case ResourceKind.Collection:
+            return "Data collection";
+        case ResourceKind.Project:
+            return "Project";
+        case ResourceKind.Process: 
+            return "Process";
+        case ResourceKind.Workflow:
+            return "Workflow";
+        default:
+            return "Unknown";
+    }
+};
+
+const renderType = (type: string) => {
+    return <Typography noWrap>
+        {getItemTypeLabel(type)}
     </Typography>;
+};
 
 const renderStatus = (item: ProjectPanelItem) =>
     <Typography noWrap align="center">