2016-04-14 00:28:44 +02:00
|
|
|
const createStore = require('redux').createStore
|
|
|
|
const applyMiddleware = require('redux').applyMiddleware
|
|
|
|
const thunkMiddleware = require('redux-thunk')
|
|
|
|
const rootReducer = require('./reducers')
|
2016-08-11 22:59:14 +02:00
|
|
|
const developmentMode = require('../../app/scripts/config').developmentMode
|
2016-04-14 00:28:44 +02:00
|
|
|
|
|
|
|
module.exports = configureStore
|
|
|
|
|
2016-08-11 22:59:14 +02:00
|
|
|
const middlewares = [thunkMiddleware]
|
2016-04-14 00:28:44 +02:00
|
|
|
|
2016-08-11 22:59:14 +02:00
|
|
|
console.log(developmentMode)
|
|
|
|
if (developmentMode) {
|
2016-08-11 23:03:51 +02:00
|
|
|
console.log('Development Mode ON.')
|
2016-08-11 22:59:14 +02:00
|
|
|
const createLogger = require('redux-logger')
|
|
|
|
const loggerMiddleware = createLogger()
|
|
|
|
middlewares.push(loggerMiddleware)
|
|
|
|
} else {
|
2016-08-11 23:03:51 +02:00
|
|
|
console.log('Development Mode OFF.')
|
2016-08-11 22:59:14 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
const createStoreWithMiddleware = applyMiddleware(...middlewares
|
2016-04-14 00:28:44 +02:00
|
|
|
)(createStore)
|
|
|
|
|
2016-06-21 22:18:32 +02:00
|
|
|
function configureStore (initialState) {
|
2016-04-14 00:28:44 +02:00
|
|
|
return createStoreWithMiddleware(rootReducer, initialState)
|
|
|
|
}
|