From 26b80e09cd64d5bb5b40bc7872aff397d9cc80ea Mon Sep 17 00:00:00 2001 From: Jules Laplace Date: Wed, 6 Jun 2018 22:45:25 +0200 Subject: play frames --- app/client/dataset/dataset.component.js | 114 +++++++++++++++++++------------- 1 file changed, 67 insertions(+), 47 deletions(-) (limited to 'app/client/dataset/dataset.component.js') diff --git a/app/client/dataset/dataset.component.js b/app/client/dataset/dataset.component.js index 12f7987..9de0b69 100644 --- a/app/client/dataset/dataset.component.js +++ b/app/client/dataset/dataset.component.js @@ -8,9 +8,11 @@ import actions from '../actions' import { FileList, FileRow } from '../common/fileList.component' import Loading from '../common/loading.component' +const fieldSet = util.fieldSet(new Set(['input', 'status', 'checkpoint', 'output'])) + class DatasetComponent extends Component { render(){ - const { loading, progress, module, data, folder, match, history } = this.props + let { loading, progress, fields, module, data, folder, match, history } = this.props if (loading) { return } @@ -19,20 +21,30 @@ class DatasetComponent extends Component { return history.push('/' + module.name + '/new/') } if (!folder || !folder.name) return + fields = fieldSet(fields) return (
-
input
-
status
-
checkpoint
-
output
+ {fields.has('input') && +
input
+ } + {fields.has('status') && +
status
+ } + {fields.has('checkpoint') && +
checkpoint
+ } + {fields.has('output') && +
output
+ }
{this.renderGroups()}
) } renderGroups(){ - const { module, data, folder, runner, onPickDataset, onPickFile, datasetActions } = this.props + let { module, data, folder, fields, runner, onPickDataset, onPickFile, datasetActions } = this.props + fields = fieldSet(fields) const { datasetLookup, fileLookup } = data const { mapFn, sortFn } = util.sort.orderByFn('date desc') const moduleOnCPU = runner && runner.cpu.task && runner.cpu.task.module === module.name @@ -51,47 +63,55 @@ class DatasetComponent extends Component { return (
onPickDataset && onPickDataset(dataset)}> {this.props.beforeRow && this.props.beforeRow(dataset)} -
- {!!dataset.input.length && - fileLookup[id])} - className='input_files' - fileListClassName='' - rowClassName='input_file' - fields={'name date size delete'} - onClick={onPickFile} - onDelete={(file) => this.onDeleteFile(file)} - /> - } -
-
- {this.props.datasetActions && this.props.datasetActions(dataset, isFetching, isProcessing)} - {status} -
-
- {!!dataset.checkpoints.length && - - } -
-
- {!!dataset.output.length && - fileLookup[id])} - orderBy='epoch desc' - fields={'name date epoch size'} - onPickFile={onPickFile} - onDelete={(file) => this.onDeleteFile(file)} - /> - } -
+ {fields.has('input') && +
+ {!!dataset.input.length && + fileLookup[id])} + className='input_files' + fileListClassName='' + rowClassName='input_file' + fields={'name date size delete'} + onClick={onPickFile} + onDelete={(file) => this.onDeleteFile(file)} + /> + } +
+ } + {fields.has('status') && +
+ {this.props.datasetActions && this.props.datasetActions(dataset, isFetching, isProcessing)} + {status} +
+ } + {fields.has('checkpoint') && +
+ {!!dataset.checkpoints.length && + + } +
+ } + {fields.has('output') && +
+ {!!dataset.output.length && + fileLookup[id])} + orderBy='epoch desc' + fields={'name date epoch size'} + onPickFile={onPickFile} + onDelete={(file) => this.onDeleteFile(file)} + /> + } +
+ } {this.props.afterRow && this.props.afterRow(dataset)}
) -- cgit v1.2.3-70-g09d2