2016-08-31 10:15:12 -04:00
|
|
|
import { createStore, applyMiddleware, compose } from 'redux';
|
2017-01-09 06:37:15 -05:00
|
|
|
import thunk from 'redux-thunk';
|
|
|
|
import appReducer from '../reducers';
|
2017-01-16 07:27:58 -05:00
|
|
|
import loadingBarMiddleware from '../middleware/loading_bar';
|
2017-01-09 06:37:15 -05:00
|
|
|
import errorsMiddleware from '../middleware/errors';
|
2017-01-17 14:09:03 -05:00
|
|
|
import soundsMiddleware from 'redux-sounds';
|
2017-01-20 14:14:02 -05:00
|
|
|
import Howler from 'howler';
|
2017-01-09 06:37:15 -05:00
|
|
|
import Immutable from 'immutable';
|
2016-08-24 11:56:44 -04:00
|
|
|
|
2017-01-20 14:14:02 -05:00
|
|
|
Howler.mobileAutoEnable = false;
|
|
|
|
|
2017-01-17 14:09:03 -05:00
|
|
|
const soundsData = {
|
|
|
|
boop: '/sounds/boop.mp3'
|
|
|
|
};
|
|
|
|
|
2017-01-09 06:37:15 -05:00
|
|
|
export default function configureStore() {
|
2017-01-17 14:09:03 -05:00
|
|
|
return createStore(appReducer, compose(applyMiddleware(
|
|
|
|
thunk,
|
|
|
|
loadingBarMiddleware({ promiseTypeSuffixes: ['REQUEST', 'SUCCESS', 'FAIL'] }),
|
|
|
|
errorsMiddleware(),
|
|
|
|
soundsMiddleware(soundsData)
|
|
|
|
), window.devToolsExtension ? window.devToolsExtension() : f => f));
|
2016-09-19 17:25:59 -04:00
|
|
|
};
|