UNPKG

cuz

Version:

Front-end modular development kit.

29 lines (22 loc) 889 B
import { compose, createStore, applyMiddleware } from 'redux'; import { devTools, persistState } from 'redux-devtools'; import thunkMiddleware from 'redux-thunk'; import loggerMiddleware from 'redux-logger'; // import diffMiddleware from 'redux-diff-logger'; import requestMiddleware from 'redux-request'; export default function configureStore(reducers, { apiRoot }) { let finalCreateStore = undefined; const request = requestMiddleware(apiRoot); if (process.env.NODE_ENV === 'development') { finalCreateStore = compose( applyMiddleware(thunkMiddleware, request, /* diffMiddleware, */ loggerMiddleware), devTools(), persistState(window.location.href.match(/[?&]debug=([^&]+)\b/)) )(createStore); } else { finalCreateStore = compose( applyMiddleware(thunkMiddleware, request) )(createStore); } return finalCreateStore(reducers); }