Restric order and filters arguments of favorite list
[arvados-workbench2.git] / src / components / details-panel-factory / items / process-item.tsx
index ebbebb9058917d6adb1f1dcb9eafca18951c32cb..215c5312d20a636523d661f92029a742db195972 100644 (file)
@@ -3,38 +3,43 @@
 // SPDX-License-Identifier: AGPL-3.0
 
 import * as React from 'react';
-import { DetailsPanelResource } from "./../details-panel-factory";
-import IconBase, { IconTypes } from '../../icon/icon';
+import { ProcessIcon } from '../../icon/icon';
 import Attribute from '../../attribute/attribute';
-import { AbstractItem } from './abstract-item';
+import AbstractItem from './abstract-item';
+import { ProcessResource } from '../../../models/process';
+import { formatDate } from '../../../common/formatters';
+import { ResourceKind } from '../../../models/resource';
+import { resourceLabel } from '../../../common/labels';
 
-export default class ProcessItem extends AbstractItem {
-    
-    constructor(item: DetailsPanelResource) {
-        super(item);
-    }
+export default class ProcessItem extends AbstractItem<ProcessResource> {
 
-    getIcon(): IconTypes {
-        return IconTypes.PROCESS;
+    getIcon(className?: string){
+        return <ProcessIcon className={className} />;
     }
 
-    buildDetails(): React.ReactElement<any> {
+    buildDetails() {
         return <div>
-            <Attribute label='Type' value='Data Collection' />
+            <Attribute label='Type' value={resourceLabel(ResourceKind.Process)} />
             <Attribute label='Size' value='---' />
-            <Attribute label="Location">
-                <IconBase icon={IconTypes.FOLDER} />
-                Process
-            </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='Number of files' value='20' />
-            <Attribute label='Content size' value='54 MB' />
-            <Attribute label='Collection UUID' link='http://www.google.pl' value='nfnz05wp63ibf8w' />
-            <Attribute label='Content address' link='http://www.google.pl' value='nfnz05wp63ibf8w' />
-            <Attribute label='Creator' value='Chrystian' />
-            <Attribute label='Used by' value='---' />
+            <Attribute label='Owner' value={this.item.ownerUuid} />
+
+            {/* Missing attr */}
+            <Attribute label='Status' value={this.item.state} />
+            <Attribute label='Last modified' value={formatDate(this.item.modifiedAt)} />
+            
+            {/* Missing attrs */}
+            <Attribute label='Started at' value={formatDate(this.item.createdAt)} />
+            <Attribute label='Finished at' value={formatDate(this.item.expiresAt)} />
+
+            {/* Links but we dont have view */}
+            <Attribute label='Outputs' link={this.item.outputPath} value={this.item.outputPath} />
+            <Attribute label='UUID' link={this.item.uuid} value={this.item.uuid} />
+            <Attribute label='Container UUID' link={this.item.containerUuid} value={this.item.containerUuid} />
+            
+            <Attribute label='Priority' value={this.item.priority} />
+            <Attribute label='Runtime Constraints' value={this.item.runtimeConstraints} />
+            {/* Link but we dont have view */}
+            <Attribute label='Docker Image locator' link={this.item.containerImage} value={this.item.containerImage} />
         </div>;
     }
 }
\ No newline at end of file