| var pipeP = |
| /*#__PURE__*/ |
| require("./pipeP"); |
| |
| var reverse = |
| /*#__PURE__*/ |
| require("./reverse"); |
| /** |
| * Performs right-to-left composition of one or more Promise-returning |
| * functions. The last arguments may have any arity; the remaining |
| * arguments must be unary. |
| * |
| * @func |
| * @memberOf R |
| * @since v0.10.0 |
| * @category Function |
| * @sig ((y -> Promise z), (x -> Promise y), ..., (a -> Promise b)) -> (a -> Promise z) |
| * @param {...Function} functions The functions to compose |
| * @return {Function} |
| * @see R.pipeP |
| * @deprecated since v0.26.0 |
| * @example |
| * |
| * const db = { |
| * users: { |
| * JOE: { |
| * name: 'Joe', |
| * followers: ['STEVE', 'SUZY'] |
| * } |
| * } |
| * } |
| * |
| * // We'll pretend to do a db lookup which returns a promise |
| * const lookupUser = (userId) => Promise.resolve(db.users[userId]) |
| * const lookupFollowers = (user) => Promise.resolve(user.followers) |
| * lookupUser('JOE').then(lookupFollowers) |
| * |
| * // followersForUser :: String -> Promise [UserId] |
| * const followersForUser = R.composeP(lookupFollowers, lookupUser); |
| * followersForUser('JOE').then(followers => console.log('Followers:', followers)) |
| * // Followers: ["STEVE","SUZY"] |
| */ |
| |
| |
| function composeP() { |
| if (arguments.length === 0) { |
| throw new Error('composeP requires at least one argument'); |
| } |
| |
| return pipeP.apply(this, reverse(arguments)); |
| } |
| |
| module.exports = composeP; |