Creation dialog with redux-form validation
[arvados-workbench2.git] / src / components / details-panel-factory / items / collection-item.tsx
1 // Copyright (C) The Arvados Authors. All rights reserved.
2 //
3 // SPDX-License-Identifier: AGPL-3.0
4
5 import * as React from 'react';
6 import { IconTypes } from '../../icon/icon';
7 import Attribute from '../../attribute/attribute';
8 import AbstractItem from './abstract-item';
9 import { CollectionResource } from '../../../models/collection';
10 import { formatDate } from '../../../common/formatters';
11
12 export default class CollectionItem extends AbstractItem<CollectionResource> {
13
14     getIcon(): IconTypes {
15         return IconTypes.COLLECTION;
16     }
17
18     buildDetails(): React.ReactElement<any> {
19         return <div>
20            <Attribute label='Type' value='Data Collection' />
21             <Attribute label='Size' value='---' />
22             <Attribute label='Owner' value={this.item.ownerUuid} />
23             <Attribute label='Last modified' value={formatDate(this.item.modifiedAt)} />
24             <Attribute label='Created at' value={formatDate(this.item.createdAt)} />
25             {/* Links but we dont have view */}
26             <Attribute label='Collection UUID' link={this.item.uuid} value={this.item.uuid} />
27             <Attribute label='Content address' link={this.item.portableDataHash} value={this.item.portableDataHash} />
28             {/* Missing attrs */}
29             <Attribute label='Number of files' value='20' />
30             <Attribute label='Content size' value='54 MB' />
31         </div>;
32     }
33 }