insomnia/packages/insomnia-app/app/ui/redux/create.js

26 lines
811 B
JavaScript
Raw Normal View History

2018-06-25 17:42:50 +00:00
import { createStore, applyMiddleware, compose } from 'redux';
import thunkMiddleware from 'redux-thunk';
2018-06-25 17:42:50 +00:00
import { reducer } from './modules';
2016-04-29 05:58:37 +00:00
2018-06-25 17:42:50 +00:00
export default function() {
const composeEnhancers =
2018-06-25 17:42:50 +00:00
typeof window === 'object' && window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__
? window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__({
2018-06-25 17:42:50 +00:00
// Specify extensions options like name, actionsBlacklist, actionsCreators, serialize...
})
: compose;
const middleware = [thunkMiddleware];
const enhancer = composeEnhancers(
applyMiddleware(...middleware),
// other store enhancers if any
);
const store = createStore(reducer, enhancer);
if (__DEV__ && module.hot) {
module.hot.accept('./modules/index', () => {
store.replaceReducer(reducer);
});
2016-03-20 04:00:40 +00:00
}
2016-03-16 05:49:42 +00:00
return store;
2016-03-20 04:00:40 +00:00
}