3 import { createStore, applyMiddleware, compose } from 'redux'
4 import thunkMiddleware from 'redux-thunk'
5 import { routerMiddleware as createRouterMiddleware } from 'react-router-redux'
6 import { history } from 'utility/environment'
7 import { exportState, importState } from 'utility/localStorage'
9 import makeRootReducer from 'reducers'
11 const routerMiddleware = createRouterMiddleware(history)
13 export default function() {
14 const store = createStore(
22 window.devToolsExtension ? window.devToolsExtension() : f => f
27 // Enable Webpack hot module replacement for reducers
28 module.hot.accept('reducers', () => {
29 const newRootReducer = require('reducers').default
30 store.replaceReducer(newRootReducer())
34 store.subscribe(exportState(store))