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