// Loaded from https://deno.land/x/ramda@v0.27.2/source/juxt.js import _curry1 from './internal/_curry1.js'; import converge from './converge.js'; /** * juxt applies a list of functions to a list of values. * * @func * @memberOf R * @since v0.19.0 * @category Function * @sig [(a, b, ..., m) -> n] -> ((a, b, ..., m) -> [n]) * @param {Array} fns An array of functions * @return {Function} A function that returns a list of values after applying each of the original `fns` to its parameters. * @see R.applySpec * @example * * const getRange = R.juxt([Math.min, Math.max]); * getRange(3, 4, 9, -3); //=> [-3, 9] * @symb R.juxt([f, g, h])(a, b) = [f(a, b), g(a, b), h(a, b)] */ var juxt = _curry1(function juxt(fns) { return converge(function() { return Array.prototype.slice.call(arguments, 0); }, fns); }); export default juxt;