import { h, Component } from 'preact'
import { bindActionCreators } from 'redux'
import { connect } from 'react-redux'
import * as util from '../../util'
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'
const samplernnModule = {
name: 'samplernn',
datatype: 'audio',
}
class SampleRNNImport extends Component {
constructor(){
super()
this.state = {
folder: 1,
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 => {
return [folder.name, folder.id]
})
}
return (
Import
this.toggle(dataset.name, this.state.selected[name]))}
beforeRow={dataset => this.beforeRow(dataset)}
afterRow={dataset => this.afterRow(dataset)}
/>
)
}
toggle(name){
this.setState({
...this.state,
selected: {
...this.state.selected,
[name]: !this.state.selected[name],
}
})
}
beforeRow(dataset){
// console.log(dataset)
}
afterRow(dataset){
const name = dataset.name
return (
)
}
doImport(){
const { samplernn } = this.props
console.log(this.state)
this.props.actions.import_files(this.state, samplernn.data.datasetLookup, samplernn.data.fileLookup)
}
}
const mapStateToProps = state => ({
samplernn: state.module.samplernn,
runner: state.system.runner,
task: state.task,
})
const mapDispatchToProps = (dispatch, ownProps) => ({
actions: bindActionCreators(samplernnActions, dispatch),
})
export default connect(mapStateToProps, mapDispatchToProps)(SampleRNNImport)