about summary refs log blame commit diff
path: root/app/javascript/flavours/glitch/store/configureStore.js
blob: 7e7472841aa74676e2ca6b6c62f556f4f2292af2 (plain) (tree)
1
2
3
4
5
6
7
8
                                                              
                                     
                                                             
                                                    
                                                    
 
                                          


                                                                                  
                      
                                                                                            
  
import { createStore, applyMiddleware, compose } from 'redux';
import thunk from 'redux-thunk';
import appReducer from '../reducers';
import loadingBarMiddleware from '../middleware/loading_bar';
import errorsMiddleware from '../middleware/errors';
import soundsMiddleware from '../middleware/sounds';

export default function configureStore() {
  return createStore(appReducer, compose(applyMiddleware(
    thunk,
    loadingBarMiddleware({ promiseTypeSuffixes: ['REQUEST', 'SUCCESS', 'FAIL'] }),
    errorsMiddleware(),
    soundsMiddleware()
  ), window.__REDUX_DEVTOOLS_EXTENSION__ ? window.__REDUX_DEVTOOLS_EXTENSION__() : f => f));
};