1234567891011121314151617181920212223242526272829303132333435 |
- import _curry3 from "./internal/_curry3.js";
- import min from "./min.js";
- /**
- * Takes a function and two values, and returns whichever value produces the
- * smaller result when passed to the provided function.
- *
- * @func
- * @memberOf R
- * @since v0.8.0
- * @category Relation
- * @sig Ord b => (a -> b) -> a -> a -> a
- * @param {Function} f
- * @param {*} a
- * @param {*} b
- * @return {*}
- * @see R.min, R.maxBy
- * @example
- *
- * // square :: Number -> Number
- * const square = n => n * n;
- *
- * R.minBy(square, -3, 2); //=> 2
- *
- * R.reduce(R.minBy(square), Infinity, [3, -5, 4, 1, -2]); //=> 1
- * R.reduce(R.minBy(square), Infinity, []); //=> Infinity
- */
- var minBy =
- /*#__PURE__*/
- _curry3(function minBy(f, a, b) {
- var resultB = f(b);
- return min(f(a), resultB) === resultB ? b : a;
- });
- export default minBy;
|