summaryrefslogtreecommitdiff
path: root/app/client/modules/samplernn/samplernn.actions.js
blob: 55bd9f3dabbac302ba07f9a116f882ae1fb0aa6e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
import socket from '../../socket'
import types from '../../types'

import actions from '../../actions'

export const load_directories = () => (dispatch) => {
  // load datasets
  // load directories from server
  console.log(actions)
  Promise.all([
    actions.folder.index({ module: 'samplernn' }),
    actions.file.index({ module: 'samplernn' }),
    actions.task.index({ module: 'samplernn' }),
    actions.socket.list_directory({ module: 'samplernn', dir: 'results' }),
    actions.socket.list_directory({ module: 'samplernn', dir: 'datasets' }),
    actions.socket.run_script({ module: 'samplernn', activity: 'report' })
  ]).then(res => {
    console.log(res)
    const [folders, files, tasks, results, datasets, report] = res
    console.log(datasets)
    const builtDatasets = datasets.filter(s => s.dir)
    const flatDatasets = datasets.filter(s => s.name.match(/(wav|aiff?|flac|mp3)$/) && !s.dir)
    const checkpoints = results.filter(s => s.dir)
    console.log(folders.length, files.length, tasks.length, results.length, datasets.length)
    console.log(report)
    dispatch({
      type: types.samplernn.init,
      data: {
        folders, files,
        checkpoints,
        builtDatasets, flatDatasets,
        report
      },
    })
  })
}

export const fetch_url = (url) => (dispatch) => {
  console.log(url)
  actions.task.start_task({
    activity: 'fetch',
    module: 'samplernn',
    dataset: 'test',
    epochs: 1,
    opt: { url }
  }, { preempt: true, watch: true })
}