UNPKG

higher-order-reducers

Version:

A library of simple everyday reducer utility functions

24 lines (21 loc) 669 B
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var mapByType = function mapByType() { var reducers = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var reducerKeys = Object.keys(reducers); for (var i = 0; i < reducerKeys.length; i += 1) { var key = reducerKeys[i]; if (typeof reducers[key] !== 'function') { throw new Error('Key "' + key + '" in mapByType is not a reducer'); } } return function (state, action) { if (typeof reducers[action.type] === 'undefined') { return state; } return reducers[action.type](state, action); }; }; exports.default = mapByType;