UNPKG

ramda-extension

Version:

Helpful functions built on top of the mighty Ramda

41 lines (36 loc) 1.22 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _dispatchWith = _interopRequireDefault(require("./dispatchWith")); var _notNil = _interopRequireDefault(require("./notNil")); /** * Returns first not nil result from evaluation of functions in the list. * Returns `undefined` otherwise. * * @func * @category Function * @see dispatchWith * * @param {array} listFns List of functions * @param {*} values Values applied to functions from `listFns` * @return {any} Returns first not nil result of calling fn from `listFns` with `values`. * * @example * * const validateName = R_.dispatch([ * ifElse(Boolean, R_.noop, always('Name is required.')), * ifElse(R_.isString, R_.noop, always('Name must be valid.')), * ]); * * validateName("") // 'Name is required.' * validateName(111) // 'Name must be valid.' * validateName("Valid name") // undefined * * @sig [a] -> b|undefined */ var dispatch = (0, _dispatchWith.default)(_notNil.default); var _default = dispatch; exports.default = _default;