UNPKG

@bitty/pipe

Version:

A pipe function to perform function composition in LTR (Left To Right) direction.

1 lines 1.38 kB
{"version":3,"file":"pipe.mjs","sources":["../src/pipe.js"],"sourcesContent":["/**\n * Performs function composition in LTR (Left To Right) direction.\n *\n * @example\n * const normalizeWhiteSpaces = text => name.replace(/\\s+/g, ' ').trim();\n *\n * const getInitials = pipe(\n * normalizeWhiteSpaces,\n * name => name.split(' ').map(name => name.charAt(0)),\n * initials => initials.join('').toLocaleUpperCase()\n * );\n *\n * getInitials('Vitor Luiz Cavalcanti');\n * //=> \"VLC\"\n *\n * @param {Function} fn - An arity N function. Its result is the argument of next one.\n * @param {...Function[]} fns - Functions of arity 1. Each one's result is next's argument.\n * @returns {Function}\n */\nexport default function pipe(fn) {\n var fns = [].slice.call(arguments, 1);\n return function () {\n return fns.reduce(function (x, fn) { return fn(x); }, fn.apply(null, arguments));\n };\n}\n//# sourceMappingURL=pipe.js.map"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACe,SAAS,IAAI,CAAC,EAAE,EAAE;AACjC,IAAI,IAAI,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;AACzC,IAAI,OAAO,YAAY;AACvB,QAAQ,OAAO,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;AACxF,IAAI,CAAC;AACL;;;;"}