2020-01-02 08:49:57 -09:00
|
|
|
import {createStore, applyMiddleware} from 'redux';
|
2016-09-21 14:11:42 -08:00
|
|
|
import thunk from 'redux-thunk';
|
|
|
|
|
import rootReducer from '../reducers/index';
|
|
|
|
|
import effects from '../utils/effects';
|
|
|
|
|
import * as plugins from '../utils/plugins';
|
2017-09-25 03:55:04 -08:00
|
|
|
import writeMiddleware from './write-middleware';
|
2020-01-02 08:49:57 -09:00
|
|
|
import {composeWithDevTools} from 'redux-devtools-extension';
|
|
|
|
|
import {HyperState, HyperThunkDispatch} from '../hyper';
|
2016-09-21 14:11:42 -08:00
|
|
|
|
|
|
|
|
export default () => {
|
2020-01-02 08:49:57 -09:00
|
|
|
const enhancer = composeWithDevTools(
|
|
|
|
|
applyMiddleware<HyperThunkDispatch, HyperState>(thunk, plugins.middleware, thunk, writeMiddleware, effects)
|
2016-09-21 14:11:42 -08:00
|
|
|
);
|
|
|
|
|
|
2017-09-10 05:35:10 -08:00
|
|
|
return createStore(rootReducer, enhancer);
|
2016-09-21 14:11:42 -08:00
|
|
|
};
|