31 lines
934 B
JavaScript
31 lines
934 B
JavaScript
import { createStore, applyMiddleware, combineReducers, compose } from 'redux';
|
|
import createSagaMiddleware from 'redux-saga';
|
|
import rootSaga from '../sagas/root';
|
|
import { sessionReducer } from '../reducers/session.reducers';
|
|
import { messagesReducer } from '../reducers/messages.reducers';
|
|
import project from '../reducers/project';
|
|
import { usersReducer } from '../reducers/users.reducers';
|
|
|
|
const sagaMiddleware = createSagaMiddleware();
|
|
|
|
const rootReducer = combineReducers({
|
|
session: sessionReducer,
|
|
messages: messagesReducer,
|
|
project,
|
|
users: usersReducer,
|
|
});
|
|
|
|
const composeEnhancers = window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ || compose;
|
|
|
|
export function configureStore(initialState = {}) {
|
|
const store = createStore(
|
|
rootReducer,
|
|
initialState,
|
|
composeEnhancers(
|
|
applyMiddleware(sagaMiddleware)
|
|
)
|
|
);
|
|
sagaMiddleware.run(rootSaga);
|
|
return store;
|
|
}
|