simple-pure-utils
Version:
Funciones puras para manipulación de objetos, arreglos, promesas y observables
19 lines • 1.26 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.optionalize = void 0;
const logic_1 = require("./logic");
/**
* Toma una función que posiblemente no acepte undefined en sus argumentos y devuelve otra que acepta undefined
* en todos sus argumentos. Al llamar la función resultante, si algun argumento es undefined,
* devuelve undefined, si no, llama a la función original. Los nulos no son considerados como undefined.
*/
function optionalize(func) {
return (...args) => {
if ((0, logic_1.any)(args, x => x === undefined)) {
return undefined;
}
return func(...args);
};
}
exports.optionalize = optionalize;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0aW9uYWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvb3B0aW9uYWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbUNBQTZCO0FBSTdCOzs7O0dBSUc7QUFDSCxTQUFnQixXQUFXLENBQStCLElBQStCO0lBQ3JGLE9BQU8sQ0FBQyxHQUFJLElBQUksRUFBRSxFQUFFO1FBQ2hCLElBQUcsSUFBQSxXQUFHLEVBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFNBQVMsQ0FBQyxFQUFFO1lBQ2hDLE9BQU8sU0FBUyxDQUFDO1NBQ3BCO1FBRUQsT0FBTyxJQUFJLENBQUMsR0FBSSxJQUFhLENBQUMsQ0FBQztJQUNuQyxDQUFDLENBQUE7QUFDTCxDQUFDO0FBUkQsa0NBUUMifQ==
;