diff options
| author | Jules Laplace <julescarbon@gmail.com> | 2018-06-07 15:27:30 +0200 |
|---|---|---|
| committer | Jules Laplace <julescarbon@gmail.com> | 2018-06-07 15:27:30 +0200 |
| commit | 209cfd09c16122e94acb1e28972a97a46c92a5c7 (patch) | |
| tree | 8c38827c1683e0c454f0e1490a1100989670eadc /app/client | |
| parent | a52d02504c285910539f9a6ee8ef96d95577852e (diff) | |
folder list on new samplernn page
Diffstat (limited to 'app/client')
| -rw-r--r-- | app/client/modules/pix2pix/views/pix2pix.new.js | 40 | ||||
| -rw-r--r-- | app/client/modules/pix2wav/index.js | 2 | ||||
| -rw-r--r-- | app/client/modules/samplernn/index.js | 12 | ||||
| -rw-r--r-- | app/client/modules/samplernn/views/samplernn.new.js | 56 |
4 files changed, 91 insertions, 19 deletions
diff --git a/app/client/modules/pix2pix/views/pix2pix.new.js b/app/client/modules/pix2pix/views/pix2pix.new.js index 203a606..f9f5db7 100644 --- a/app/client/modules/pix2pix/views/pix2pix.new.js +++ b/app/client/modules/pix2pix/views/pix2pix.new.js @@ -1,13 +1,41 @@ import { h, Component } from 'preact' +import { bindActionCreators } from 'redux' +import { connect } from 'react-redux' import NewDatasetForm from '../../../dataset/dataset.new' +import * as pix2pixActions from '../pix2pix.actions' import pix2pixModule from '../pix2pix.module' -export default function Pix2PixNew ({ history }) { - return ( - <div class='app pix2pix'> - <NewDatasetForm module={pix2pixModule} history={history} /> - </div> - ) +class Pix2PixNew extends Component { + constructor(props){ + super(props) + props.actions.load_directories() + } + render(){ + const { pix2pix, history } = this.props + console.log(pix2pix) + let folders + if (pix2pix.data) { + pix2pix.data.folders.forEach(folder => { + console.log(folder) + }) + } + return ( + <div class='app pix2pix'> + <NewDatasetForm module={pix2pixModule} history={history} /> + {folders} + </div> + ) + } } + +const mapStateToProps = state => ({ + pix2pix: state.module.pix2pix, +}) + +const mapDispatchToProps = (dispatch, ownProps) => ({ + actions: bindActionCreators(pix2pixActions, dispatch), +}) + +export default connect(mapStateToProps, mapDispatchToProps)(Pix2PixNew) diff --git a/app/client/modules/pix2wav/index.js b/app/client/modules/pix2wav/index.js index b73a5df..3a23395 100644 --- a/app/client/modules/pix2wav/index.js +++ b/app/client/modules/pix2wav/index.js @@ -4,7 +4,7 @@ import util from '../../util' import Pix2WavNew from './views/pix2wav.new' import Pix2WavShow from './views/pix2wav.show' -// import Pix2WavLive from './views/pix2wav.live' +import Pix2WavLive from './views/pix2wav.live' function router () { document.body.style.backgroundImage = 'linear-gradient(' + (util.randint(40)+40) + 'deg, #fde, #ffe)' diff --git a/app/client/modules/samplernn/index.js b/app/client/modules/samplernn/index.js index 485a9a4..98195df 100644 --- a/app/client/modules/samplernn/index.js +++ b/app/client/modules/samplernn/index.js @@ -12,12 +12,12 @@ function router () { document.body.style.backgroundImage = 'linear-gradient(' + (util.randint(40)+40) + 'deg, #eef, #fef)' return ( <section> - <Route exact path='/samplernn/new/' component={SampleRNNNew} /> - <Route exact path='/samplernn/datasets/' component={SampleRNNShow} /> - <Route exact path='/samplernn/datasets/:id/' component={SampleRNNShow} /> - <Route exact path='/samplernn/import/' component={SampleRNNImport} /> - <Route exact path='/samplernn/results/' component={SampleRNNResults} /> - <Route exact path='/samplernn/graph/' component={SampleRNNGraph} /> + <Route exact path='/samplernn/new' component={SampleRNNNew} /> + <Route exact path='/samplernn/datasets' component={SampleRNNShow} /> + <Route exact path='/samplernn/datasets/:id' component={SampleRNNShow} /> + <Route exact path='/samplernn/import' component={SampleRNNImport} /> + <Route exact path='/samplernn/results' component={SampleRNNResults} /> + <Route exact path='/samplernn/graph' component={SampleRNNGraph} /> </section> ) } diff --git a/app/client/modules/samplernn/views/samplernn.new.js b/app/client/modules/samplernn/views/samplernn.new.js index 5640afc..821c1d8 100644 --- a/app/client/modules/samplernn/views/samplernn.new.js +++ b/app/client/modules/samplernn/views/samplernn.new.js @@ -1,16 +1,60 @@ 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 { + Group, Param +} from '../../../common' + import NewDatasetForm from '../../../dataset/dataset.new' +import * as samplernnActions from '../samplernn.actions' import samplernnModule from '../samplernn.module' -export default function SampleRNNNew ({ history }) { - return ( - <div class='app samplernn'> - <NewDatasetForm module={samplernnModule} history={history} /> - </div> - ) +class SampleRNNNew extends Component { + constructor(props){ + super(props) + props.actions.load_directories() + } + render(){ + const { samplernn, history } = this.props + console.log(samplernn) + let folders + if (samplernn.data) { + folders = samplernn.data.folders.map(folder => { + console.log(folder) + const datasetCount = folder.datasets ? folder.datasets.length : 0 + const [ className, size ] = util.hush_null(datasetCount) + return ( + <Param title={<Link to={'/samplernn/datasets/' + folder.id + '/'}>{folder.name}</Link>}> + <span className={className}>{datasetCount} dataset{util.courtesy_s(datasetCount)}</span> + </Param> + ) + }) + } + return ( + <div class='app samplernn'> + <div class='col narrow'> + <NewDatasetForm module={samplernnModule} history={history} /> + {folders && <div class='col folderList'> + <Group title='Projects'> + {folders} + </Group> + </div>} + </div> + </div> + ) + } } + +const mapStateToProps = state => ({ + samplernn: state.module.samplernn, +}) + +const mapDispatchToProps = (dispatch, ownProps) => ({ + actions: bindActionCreators(samplernnActions, dispatch), +}) + +export default connect(mapStateToProps, mapDispatchToProps)(SampleRNNNew) |
