|
|
|
const createStore = require('redux').createStore
|
|
|
|
const applyMiddleware = require('redux').applyMiddleware
|
|
|
|
const thunkMiddleware = require('redux-thunk')
|
|
|
|
const rootReducer = require('./reducers')
|
|
|
|
const createLogger = require('redux-logger')
|
|
|
|
|
|
|
|
global.METAMASK_DEBUG = 'GULP_METAMASK_DEBUG'
|
|
|
|
|
|
|
|
module.exports = configureStore
|
|
|
|
|
|
|
|
const loggerMiddleware = createLogger({
|
|
|
|
predicate: () => global.METAMASK_DEBUG,
|
|
|
|
})
|
|
|
|
|
|
|
|
const middlewares = [thunkMiddleware, loggerMiddleware]
|
|
|
|
|
|
|
|
const createStoreWithMiddleware = applyMiddleware(...middlewares)(createStore)
|
|
|
|
|
|
|
|
function configureStore (initialState) {
|
|
|
|
return createStoreWithMiddleware(rootReducer, initialState)
|
|
|
|
}
|