import { h, Component } from 'preact' import { bindActionCreators } from 'redux' import { connect } from 'react-redux' import { Link } from 'react-router-dom'; import util from '../util' import actions from '../actions' class TaskList extends Component { constructor(props){ super() } shouldComponentUpdate(nextProps){ if (nextProps.tasks.length !== this.props.tasks.length) { return true } if (nextProps.tasks[0] !== this.props.tasks[0]) { return true } return false } render(){ const { title, tasks } = this.props let time = 0 const { mapFn, sortFn } = util.sort.orderByFn(this.props.sort || 'date desc') const taskList = tasks.map(mapFn).sort(sortFn).map(pair => { const task = pair[1] const { dataset } = task let dataset_link, label = dataset; console.log(task) switch (task.activity) { case 'train': if (task.epoch === 0) { label += ', latest' } else { label += ', ' + task.epoch } label += ' + ' + task.epochs break case 'augment': try { const opt = JSON.parse(task.opt) label += ', ' + opt.augment_take + ' x ' + opt.augment_make } catch (e) { // } default: break } if (task.folder_id) { const href = '/' + task.module + '/' + (task.module === 'samplernn' ? 'datasets' : 'sequences') + '/' + task.folder_id + '/' dataset_link = {label} } else { dataset_link = label } return (