UNPKG

dareway-rui

Version:

59 lines (46 loc) 1.77 kB
'use strict'; var _interopRequireDefault = require('@babel/runtime/helpers/interopRequireDefault'); Object.defineProperty(exports, '__esModule', { value: true }); exports.default = void 0; var _toConsumableArray2 = _interopRequireDefault(require('@babel/runtime/helpers/toConsumableArray')); var _invariant = _interopRequireDefault(require('invariant')); function identify(value) { return value; } function handleAction(actionType) { var reducer = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : identify; return function(state, action) { var type = action.type; (0, _invariant.default)(type, 'dispatch: action should be a plain Object with type'); if (actionType === type) { return reducer(state, action); } return state; }; } function reduceReducers() { for (var _len = arguments.length, reducers = new Array(_len), _key = 0; _key < _len; _key++) { reducers[_key] = arguments[_key]; } return function(previous, current) { return reducers.reduce(function(p, r) { return r(p, current); }, previous); }; } function handleActions(handlers, defaultState) { var reducers = Object.keys(handlers).map(function(type) { return handleAction(type, handlers[type]); }); var reducer = reduceReducers.apply(void 0, (0, _toConsumableArray2.default)(reducers)); return function() { var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : defaultState; var action = arguments.length > 1 ? arguments[1] : undefined; return reducer(state, action); }; } var _default = handleActions; exports.default = _default; //@ sourceMappingURL=handleActions.js.map