eunomia-controller
Version:
40 lines (30 loc) • 1.31 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
exports.default = initReducer;
var _immutable = require('immutable');
var _reduxImmutable = require('redux-immutable');
var _reactRouterRedux = require('react-router-redux');
// Initial routing state
var routeInitialState = (0, _immutable.fromJS)({ locationBeforeTransitions: null });
function routeReducer() {
var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : routeInitialState;
var action = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
switch (action.type) {
case _reactRouterRedux.LOCATION_CHANGE:
return state.merge({ locationBeforeTransitions: action.payload });
default:
return state;
}
}
function initReducer(globalReducer, languageProviderReducer) {
return function (asyncReducers) {
return (0, _reduxImmutable.combineReducers)(_extends({
route: routeReducer,
global: globalReducer,
language: languageProviderReducer
}, asyncReducers));
};
}