1.0.0 • Published 6 years ago

asyncpipe v1.0.0

Weekly downloads
7
License
MIT
Repository
github
Last release
6 years ago

asyncpipe

Compose asynchronous functions in JavaScript

NPM Version Build Status Maintainability

asyncpipe composes asynchronous functions, a perfect fit for functional programming with Promises or async/await. It was inspired by lodash.flow, which is excellent but does not support functions that return Promises.

Is this production ready?

Yes. This module:

Installation

This is a Node.js module available through the npm registry. Installation is done using the npm install command:

$ npm install asyncpipe

API

var asyncpipe = require('asyncpipe');

asyncpipe(func1, func2, ...)

Compose an asynchronous function from the series of input arguments (func1, func2, ...).

Any error thrown within the series of async functions will be thrown by the composed function.

Example

const asyncpipe = require('asyncpipe');

(async () => {
  const a = x => x + 1;
  const b = x => Promise.resolve(x * 2);
  const c = async x => {
    await someExternalService(x);
    return x;
  };

  const result = await asyncpipe(a, b, c)(99);
  console.log(result); // PRINTS: 200
})();