summaryrefslogtreecommitdiff
path: root/animism-align/frontend/site/store.js
diff options
context:
space:
mode:
Diffstat (limited to 'animism-align/frontend/site/store.js')
-rw-r--r--animism-align/frontend/site/store.js31
1 files changed, 26 insertions, 5 deletions
diff --git a/animism-align/frontend/site/store.js b/animism-align/frontend/site/store.js
index 0b4aff7..2d9ffbc 100644
--- a/animism-align/frontend/site/store.js
+++ b/animism-align/frontend/site/store.js
@@ -1,25 +1,46 @@
-import { crudReducer } from 'app/api/crud.reducer'
+import { crudState, crudReducer } from 'app/api/crud.reducer'
import { applyMiddleware, compose, combineReducers, createStore } from 'redux'
import { connectRouter, routerMiddleware } from 'connected-react-router'
import { createBrowserHistory } from 'history'
import thunk from 'redux-thunk'
-// import siteReducer from './site/site.reducer'
+import audioReducer from 'app/views/audio/audio.reducer'
+import alignReducer from 'app/views/align/align.reducer'
+import viewerReducer from 'app/views/viewer/viewer.reducer'
+import paragraphReducer from 'app/views/paragraph/paragraph.reducer'
+import siteReducer from 'site/site/site.reducer'
+
+// document.querySelector("#plain_content").remove()
+const siteData = JSON.parse(document.querySelector("#site_data").innerText)
const createRootReducer = history => (
combineReducers([
"media",
- "upload",
"annotation",
"paragraph",
"episode",
"venue",
].reduce((a, type) => {
- a[type] = crudReducer(type)
+ a[type] = (() => {
+ const initialState = {
+ ...crudState(),
+ index: siteData[type],
+ }
+ if (type === 'paragraph') {
+ return (state=initialState, action) => paragraphReducer(state, action)
+ } else {
+ const typeReducer = crudReducer(type)
+ return (state=initialState, action) => typeReducer(state, action)
+ }
+ })()
return a
}, {
- auth: (state = {}) => state,
+ // auth: (state = {}) => state,
router: connectRouter(history),
+ site: siteReducer,
+ audio: audioReducer,
+ align: alignReducer,
+ viewer: viewerReducer,
}))
)