import Immutable from 'immutable';
import {createLogger} from 'redux-logger';
import {createStore, applyMiddleware} from 'redux';
import createSagaMiddleware from 'redux-saga';
import reducers from './reducers';
import config from './config';
import rootSaga from './sagas';

let createStoreWithMiddleware = createStore;

if (config.logReduxActions()) {
  const logger = createLogger();
  createStoreWithMiddleware =
    applyMiddleware(logger)(createStoreWithMiddleware);
}

const sagaMiddleware = createSagaMiddleware();
createStoreWithMiddleware =
  applyMiddleware(sagaMiddleware)(createStoreWithMiddleware);

function createApplicationStore() {
  const store = createStoreWithMiddleware(reducers, new Immutable.Map());
  sagaMiddleware.run(rootSaga);
  return store;
}

export default createApplicationStore;

@@ -607,16 +607,147 @@
 ware);%0A%0A
+let devToolsExtension;%0A%0Aif (window.__REDUX_DEVTOOLS_EXTENSION__) %7B%0A  devToolsExtension = window.__REDUX_DEVTOOLS_EXTENSION__();%0A%7D%0A%0A
 function
@@ -816,16 +816,21 @@
 dleware(
+%0A    
 reducers
@@ -830,16 +830,20 @@
 educers,
+%0A   
  new Imm
@@ -854,16 +854,43 @@
 le.Map()
+,%0A    devToolsExtension,%0A  
 );%0A  sag

Support for Redux devtools