ramda-adjunct
Version:
Ramda Adjunct is the most popular and most comprehensive set of utilities for use with Ramda, providing a variety of useful, well tested functions with excellent documentation.
31 lines (28 loc) • 1.02 kB
JavaScript
exports.__esModule = true;
exports["default"] = void 0;
var _ramda = require("ramda");
/**
* Returns the second argument if predicate function returns `true`,
* otherwise the third argument is returned.
*
* @func defaultWhen
* @memberOf RA
* @since {@link https://char0n.github.io/ramda-adjunct/2.2.0|v2.2.0}
* @category Logic
* @sig (a -> Boolean) -> b -> a -> a | b
* @param {!function} predicate The predicate function
* @param {*} defaultVal The default value
* @param {*} val `val` will be returned instead of `defaultVal` if predicate returns false
* @return {*} The `val` if predicate returns `false`, otherwise the default value
* @see {@link http://ramdajs.com/docs/#defaultTo|R.defaultTo}
* @example
*
* RA.defaultWhen(RA.isNull, 1, null); // => 1
* RA.defaultWhen(RA.isNull, 1, 2); // => 2
*/
var defaultWhen = (0, _ramda.curry)(function (predicate, defaultVal, val) {
return predicate(val) ? defaultVal : val;
});
var _default = defaultWhen;
exports["default"] = _default;
;