redux-saga-routines
Version:
Routines for redux-saga also useful with redux-form
41 lines (31 loc) • 1.29 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.bindPromiseCreator = bindPromiseCreator;
exports["default"] = bindPromiseCreators;
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
function bindPromiseCreator(promiseCreator, dispatch) {
return function (payload) {
return promiseCreator(payload, dispatch);
};
}
function bindPromiseCreators(promiseCreators, dispatch) {
if (typeof promiseCreators === 'function') {
return bindPromiseCreator(promiseCreators, dispatch);
}
if ((0, _typeof2["default"])(promiseCreators) !== 'object' || promiseCreators === null) {
throw new Error("bindPromiseCreators expected an object or a function, instead received ".concat(promiseCreators === null ? 'null' : (0, _typeof2["default"])(promiseCreators), ". "));
}
var keys = Object.keys(promiseCreators);
var boundPromiseCreators = {};
for (var i = 0; i < keys.length; i++) {
var key = keys[i];
var promiseCreator = promiseCreators[key];
if (typeof promiseCreator === 'function') {
boundPromiseCreators[key] = bindPromiseCreator(promiseCreator, dispatch);
}
}
return boundPromiseCreators;
}