container uuid column up
[arvados-workbench2.git] / src / views / project-panel / project-panel.tsx
index c2cc8f3c4b6ea17b40318c1936d720c16c905980..880ff3f2908f8e93538a101c4ca59240a41828cd 100644 (file)
@@ -17,10 +17,20 @@ import { SortDirection } from 'components/data-table/data-column';
 import { ResourceKind, Resource } from 'models/resource';
 import {
     ResourceFileSize,
-    ResourceLastModifiedDate,
+    ResourceFileCount,
     ResourceCreatedAtDate,
+    ResourceLastModifiedDate,
+    ResourceTrashDate,
+    ResourceDeleteDate,
     ProcessStatus,
     ResourceType,
+    ResourceUUID,
+    ResourceProcessUuid,
+    ResourceProcessState,
+    ResourceParentProcess,
+    ResourcePortableDataHash,
+    ResourceVersion,
+    ResourceDescription,
     ResourceOwnerWithName
 } from 'views-components/data-explorer/renderers';
 import { ProjectIcon } from 'components/icon/icon';
@@ -65,9 +75,18 @@ export enum ProjectPanelColumnNames {
     TYPE = "Type",
     OWNER = "Owner",
     FILE_SIZE = "File size",
-    LAST_MODIFIED = "Last modified",
+    FILE_COUNT = "File count",
     UUID = "UUID",
-    CREATED_AT = "Created"
+    STATE = 'State',
+    CONTAINER_UUID = "Container UUID",
+    PARENT_PROCESS = 'Parent process',
+    CREATED_AT = "Date created",
+    LAST_MODIFIED = "Last modified",
+    TRASH_AT = "Trash at",
+    DELETE_AT = "Delete at",
+    DESCRIPTION = "Description",
+    PORTABLE_DATA_HASH = "Portable Data Hash",
+    VERSION = "Version"
 }
 
 export interface ProjectPanelFilter extends DataTableFilterItem {
@@ -84,7 +103,7 @@ export const projectPanelColumns: DataColumns<string> = [
         render: uuid => <ResourceName uuid={uuid} />
     },
     {
-        name: "Status",
+        name: ProjectPanelColumnNames.STATUS,
         selected: true,
         configurable: true,
         mutuallyExclusiveFilters: true,
@@ -107,33 +126,99 @@ export const projectPanelColumns: DataColumns<string> = [
     },
     {
         name: ProjectPanelColumnNames.FILE_SIZE,
-        selected: true,
+        selected: false,
         configurable: true,
         filters: createTree(),
         render: uuid => <ResourceFileSize uuid={uuid} />
     },
     {
-        name: ProjectPanelColumnNames.LAST_MODIFIED,
-        selected: true,
+        name: ProjectPanelColumnNames.FILE_COUNT,
+        selected: false,
         configurable: true,
-        sortDirection: SortDirection.DESC,
         filters: createTree(),
-        render: uuid => <ResourceLastModifiedDate uuid={uuid} />
+        render: uuid =><ResourceFileCount uuid={uuid}/>
     },
     {
         name: ProjectPanelColumnNames.UUID,
+        selected: false,
+        configurable: true,
+        filters: createTree(),
+        render: uuid => <ResourceUUID uuid={uuid}/>
+    },
+    {
+        name: ProjectPanelColumnNames.CONTAINER_UUID,
+        selected: false,
+        configurable: true,
+        filters: createTree(),
+        render: uuid => <ResourceProcessUuid uuid={uuid}/>
+    },
+    {
+        name: ProjectPanelColumnNames.STATE,
         selected: true,
         configurable: true,
         filters: createTree(),
-        render: uuid =><>{uuid}</>
+        render: uuid => <ResourceProcessState uuid={uuid}/>
+    },
+    {
+        name: ProjectPanelColumnNames.PARENT_PROCESS,
+        selected: false,
+        configurable: true,
+        filters: createTree(),
+        render: uuid => <ResourceParentProcess uuid={uuid}/>
+    },
+    {
+        name: ProjectPanelColumnNames.PORTABLE_DATA_HASH,
+        selected: false,
+        configurable: true,
+        filters: createTree(),
+        render: uuid => <ResourcePortableDataHash uuid={uuid}/>
     },
     {
         name: ProjectPanelColumnNames.CREATED_AT,
-        selected: true,
+        selected: false,
         configurable: true,
         filters: createTree(),
         render: uuid =><ResourceCreatedAtDate uuid={uuid}/>
+    },
+    {
+        name: ProjectPanelColumnNames.LAST_MODIFIED,
+        selected: false,
+        configurable: true,
+        sortDirection: SortDirection.DESC,
+        filters: createTree(),
+        render: uuid => <ResourceLastModifiedDate uuid={uuid} />
+    },
+    {
+        name: ProjectPanelColumnNames.TRASH_AT,
+        selected: false,
+        configurable: true,
+        sortDirection: SortDirection.DESC,
+        filters: createTree(),
+        render: uuid => <ResourceTrashDate uuid={uuid} />
+    },
+    {
+        name: ProjectPanelColumnNames.DELETE_AT,
+        selected: false,
+        configurable: true,
+        sortDirection: SortDirection.DESC,
+        filters: createTree(),
+        render: uuid => <ResourceDeleteDate uuid={uuid} />
+    },
+    {
+        name: ProjectPanelColumnNames.DESCRIPTION,
+        selected: false,
+        configurable: true,
+        filters: createTree(),
+        render: uuid =><ResourceDescription uuid={uuid}/>
+    },
+    {
+        name: ProjectPanelColumnNames.VERSION,
+        selected: false,
+        configurable: true,
+        filters: createTree(),
+        render: uuid =><ResourceVersion uuid={uuid}/>
     }
+    
 ];
 
 export const PROJECT_PANEL_ID = "projectPanel";