summaryrefslogtreecommitdiff
path: root/client/store.js
blob: 5b38d45bddf4a8024d8d4c604711c82100ebce3e (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
import { createStore } from 'redux'
import reducer from './reducers/index.js'
import { loadFolders, loadOpenFolders, loadFiles, loadTasks } from './actions/index.js'

import client from './client.js'

const store = createStore(reducer, {
  currentTask: {
    content: null,
    style: null,
    alpha: 0.001,
  },
  tasks: [],
  folders: {
    openFolders: [],
    folders: [],
  },
  audioPlayer: {
    file: null,
  },
})

client.folder.index().then( folders => {
  store.dispatch(loadFolders(folders))
  try {
    const openFolders = JSON.parse(localStorage['openFolders'])
    store.dispatch( loadOpenFolders(openFolders) )
    openFolders.forEach( folder_id => {
      client.file.index({ folder_id }).then( files => {
        store.dispatch(loadFiles(files))
      })
    })
  }
  catch (e) {
    console.log('error opening folders')
  }
})
client.task.index().then( tasks => {
  store.dispatch(loadTasks(tasks))
})


export default store