summaryrefslogtreecommitdiff
path: root/client/store.js
diff options
context:
space:
mode:
authorJules Laplace <julescarbon@gmail.com>2017-07-07 21:18:33 +0200
committerJules Laplace <julescarbon@gmail.com>2017-07-07 21:18:33 +0200
commitf8b61281be84a6e4e7a44be5109e688a7c56c671 (patch)
tree43797c6b6cfa5c0f89c020f8c89e0da10f791a55 /client/store.js
parent3d3a7b80d34c100846c8ae130b424b63ba3c0784 (diff)
refactor files so list updates while processing
Diffstat (limited to 'client/store.js')
-rw-r--r--client/store.js43
1 files changed, 43 insertions, 0 deletions
diff --git a/client/store.js b/client/store.js
new file mode 100644
index 0000000..5b38d45
--- /dev/null
+++ b/client/store.js
@@ -0,0 +1,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