UNPKG

typedux

Version:

Slightly adjusted Redux (awesome by default) for TS

59 lines 2.09 kB
/** * Create a simple mapped reducer fn * * @param propertyKey * @param args * @returns {function(S, M): S} */ var __read = (this && this.__read) || function (o, n) { var m = typeof Symbol === "function" && o[Symbol.iterator]; if (!m) return o; var i = m.call(o), r, ar = [], e; try { while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); } catch (error) { e = { error: error }; } finally { try { if (r && !r.done && (m = i["return"])) m.call(i); } finally { if (e) throw e.error; } } return ar; }; var __spread = (this && this.__spread) || function () { for (var ar = [], i = 0; i < arguments.length; i++) ar = ar.concat(__read(arguments[i])); return ar; }; (function (factory) { if (typeof module === "object" && typeof module.exports === "object") { var v = factory(require, exports); if (v !== undefined) module.exports = v; } else if (typeof define === "function" && define.amd) { define(["require", "exports"], factory); } })(function (require, exports) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.makeMappedReducerFn = void 0; function makeMappedReducerFn(propertyKey, args) { return function (state, message) { var stateFn = state[propertyKey]; if (!stateFn) throw new Error("Unable to find mapped reduce function on state " + propertyKey); if (state && typeof state.withMutation === 'function') { var newState = state.withMutation(function (tempState) { tempState = tempState[propertyKey].apply(tempState, __spread(args)); return tempState; }); return ((newState === state) ? state : newState); } else { return stateFn.apply(void 0, __spread(args)); } }; } exports.makeMappedReducerFn = makeMappedReducerFn; }); //# sourceMappingURL=ActionMapper.js.map