diff options
Diffstat (limited to 'app/client/modules/samplernn/samplernn.import.js')
| -rw-r--r-- | app/client/modules/samplernn/samplernn.import.js | 87 |
1 files changed, 66 insertions, 21 deletions
diff --git a/app/client/modules/samplernn/samplernn.import.js b/app/client/modules/samplernn/samplernn.import.js index 62a210d..d335782 100644 --- a/app/client/modules/samplernn/samplernn.import.js +++ b/app/client/modules/samplernn/samplernn.import.js @@ -7,6 +7,7 @@ import * as samplernnActions from './samplernn.actions' import Select from '../../common/select.component' import TextInput from '../../common/textInput.component' +import Button from '../../common/button.component' import SampleRNNDatasets from './samplernn.datasets' @@ -20,56 +21,100 @@ class SampleRNNImport extends Component { super() this.state = { folder: 1, - url_base: '' + import_action: 'Hotlink', + url_base: 'https://s3.amazonaws.com/i.asdf.us/bucky/data/4279/', + selected: {}, } } render(){ let datasets = []; if (this.props.samplernn.data) { datasets = (this.props.samplernn.data.folders || []).map(folder => { - console.log(folder.id, folder.name) return [folder.name, folder.id] }) - console.log(datasets) } return ( <div className='app'> <div class='heading'> <h1>Import</h1> </div> - <div class='params form row'> - <div class='col'> - <h2>Import to dataset</h2> - <Select - title='Destination dataset' - options={datasets} - name='folder' - opt={this.state} - onChange={(name, value) => this.setState({ folder: value })} - /> - <TextInput - title="URL base" - value={this.state.url_base} - placeholder="http://" - onSave={(value) => this.setState({ url_base: value })} - /> + <div class='params form row datasets'> + <div class='row dataset'> + <div class='col'> + </div> + <div class='col'> + </div> + <div class='col'> + </div> + <div class='col'> + <h2>Import to dataset</h2> + <Select + title='Destination dataset' + options={datasets} + name='folder' + opt={this.state} + onChange={(name, value) => this.setState({ folder: value })} + /> + <Select + title='Import action' + options={['Hotlink', 'Upload']} + name='import_action' + opt={this.state} + onChange={(name, value) => this.setState({ import_action: value })} + /> + <TextInput + title="Remote URL base" + value={this.state.url_base} + placeholder="http://" + onSave={(value) => this.setState({ url_base: value })} + /> + <Button + title="" + onClick={() => this.doImport()} + > + Import + </Button> + </div> </div> </div> <SampleRNNDatasets id="unsorted" history={this.props.history} + onPickDataset={(dataset => this.toggle(dataset.name, this.state.selected[name]))} beforeRow={dataset => this.beforeRow(dataset)} afterRow={dataset => this.afterRow(dataset)} /> </div> ) } + toggle(name){ + this.setState({ + ...this.state, + selected: { + ...this.state.selected, + [name]: !this.state.selected[name], + } + }) + } beforeRow(dataset){ // console.log(dataset) - return null } afterRow(dataset){ - return null + const name = dataset.name + return ( + <div> + <input + type="checkbox" + value={name} + checked={!!this.state.selected[name]} + /> + </div> + ) + } + doImport(){ + const { samplernn } = this.props + console.log(this.state) + this.props.actions.import_files(this.state, samplernn.data.datasetLookup) } } |
