add all icons to icon component, refactor code and change icons
[arvados.git] / src / components / details-panel-factory / items / project-item.tsx
index c4ccd2add7410db389f6f9c331cc967b23b79baa..6d8ad04ea453dd95f36ca3a2c7272f9fe6f77643 100644 (file)
@@ -3,29 +3,31 @@
 // SPDX-License-Identifier: AGPL-3.0
 
 import * as React from 'react';
-import IconBase, { IconTypes } from '../../icon/icon';
+import { ProjectIcon } from '../../icon/icon';
 import Attribute from '../../attribute/attribute';
 import AbstractItem from './abstract-item';
 import { ProjectResource } from '../../../models/project';
+import { formatDate } from '../../../common/formatters';
+import { ResourceKind } from '../../../models/resource';
+import { resourceLabel } from '../../../common/labels';
 
 export default class ProjectItem extends AbstractItem<ProjectResource> {
 
-    getIcon(): IconTypes {
-        return IconTypes.PROJECT;
+    getIcon(className?: string): React.ReactElement<any> {
+        return ProjectIcon(className);
     }
 
     buildDetails(): React.ReactElement<any> {
         return <div>
-            <Attribute label='Type' value='Project' />
+            <Attribute label='Type' value={resourceLabel(ResourceKind.Project)} />
+            {/* Missing attr */}
             <Attribute label='Size' value='---' />
-            <Attribute label="Location">
-                <IconBase icon={IconTypes.FOLDER} />
-                Projects
-                </Attribute>
-            <Attribute label='Owner' value='me' />
-            <Attribute label='Last modified' value='5:25 PM 5/23/2018' />
-            <Attribute label='Created at' value='1:25 PM 5/23/2018' />
+            <Attribute label='Owner' value={this.item.ownerUuid} />
+            <Attribute label='Last modified' value={formatDate(this.item.modifiedAt)} />
+            <Attribute label='Created at' value={formatDate(this.item.createdAt)} />
+            {/* Missing attr */}
             <Attribute label='File size' value='1.4 GB' />
+            <Attribute label='Description' value={this.item.description} />
         </div>;
     }
 }
\ No newline at end of file