version column up
authorLisa Knox <lisaknox83@gmail.com>
Mon, 28 Nov 2022 20:54:50 +0000 (15:54 -0500)
committerLisa Knox <lisaknox83@gmail.com>
Mon, 28 Nov 2022 20:55:55 +0000 (15:55 -0500)
Arvados-DCO-1.1-Signed-off-by: Lisa Knox <lisa.knox@curii.com>

src/views-components/data-explorer/renderers.tsx
src/views/project-panel/project-panel.tsx

index 9c0bccb06f0fb810805522d2e8ab163244d2152d..c01e3918a7c7d2534438b02092e935cde415b276 100644 (file)
@@ -738,16 +738,26 @@ const renderMetadata = (metadata:any) => {
 export const ResourceMetadata = connect(
     (state: RootState, props: { uuid: string }) => {
         const resource = getResource<CollectionResource>(props.uuid)(state.resources);
-        const metadata = resource && Object.keys(resource.properties).length ? {...resource.properties} : {}
+        const metadata = resource && Object.keys(resource.properties).length ? resource.properties : {}
         if(resource && resource.portableDataHash) metadata['Portable Data Hash'] = resource.portableDataHash
         return { properties: metadata };
     })((props: { properties: string }) => renderMetadata(props.properties));
-    
+
+const renderVersion = (version: number) =>{
+    return <Typography>{version ?? '-'}</Typography>
+}
+
+export const ResourceVersion = connect(
+    (state: RootState, props: { uuid: string }) => {
+        const resource = getResource<CollectionResource>(props.uuid)(state.resources);
+        return { version: resource ? resource.version: '' };
+    })((props: { version: number }) => renderVersion(props.version));
+
 const renderDescription = (description: string)=>{
     const truncatedDescription = description ? description.slice(0, 18) + '...' : '-'
     return <Typography title={description}>{truncatedDescription}</Typography>;
 }
-    
+
 export const ResourceDescription = connect(
     (state: RootState, props: { uuid: string }) => {
         const resource = getResource<GroupContentsResource>(props.uuid)(state.resources);
index ef9fdc9e19350c3bd666b2a12c491874454d62e2..0ba61893c1240500c082030d397e580ce9994c6c 100644 (file)
@@ -25,6 +25,7 @@ import {
     ResourceType,
     ResourceUUID,
     ResourceMetadata,
+    ResourceVersion,
     ResourceDescription,
     ResourceOwnerWithName
 } from 'views-components/data-explorer/renderers';
@@ -76,7 +77,8 @@ export enum ProjectPanelColumnNames {
     TRASH_AT = "Trash at",
     DELETE_AT = "Delete at",
     DESCRIPTION = "Description",
-    METADATA = "Metadata"
+    METADATA = "Metadata",
+    VERSION = "Version"
 }
 
 export interface ProjectPanelFilter extends DataTableFilterItem {
@@ -130,7 +132,7 @@ export const projectPanelColumns: DataColumns<string> = [
     },
     {
         name: ProjectPanelColumnNames.METADATA,
-        selected: true,
+        selected: false,
         configurable: true,
         filters: createTree(),
         render: uuid => <ResourceMetadata uuid={uuid}/>
@@ -172,6 +174,13 @@ export const projectPanelColumns: DataColumns<string> = [
         configurable: true,
         filters: createTree(),
         render: uuid =><ResourceDescription uuid={uuid}/>
+    },
+    {
+        name: ProjectPanelColumnNames.VERSION,
+        selected: false,
+        configurable: true,
+        filters: createTree(),
+        render: uuid =><ResourceVersion uuid={uuid}/>
     }
 ];