Not Pictured: Mangoes

    promisify-call

    2.0.4 • Public • Published

    promisify-call

    npm version build status

    Promisify a function call so users can call a function with a callback or get a promise.

    • 2.0 works only with native Promise so requires Node >= 4.0.
    • 1.0 uses Bluebird and should work with older Node.js

    Installation

    npm install promisify-call

    Usage

    function _uppercase(param, fn) {
      setTimeout(() => {
        return fn(null, param.toUpperCase());
      }, 50);
    }
     
    function uppercase(param, fn) {
      return promisifyCall(this, _uppercase, ...arguments);
    }
     
    // now we can call it using callback-style
    uppercase('foo', (err, res) => {
      console.log(res); // FOO
    });
     
    // OR promise style
    const res = await uppercase('foo');
    console.log(res); // FOO

    API Reference

    promisifyCall(ctx, fn, args) ⇒ undefined | * | Promise

    Promisifies the call to fn if appropriate given the arguments. Calls the function fn either using callback style if last argument is a function. If last argument is not a function, fn is called returning a promise. This lets you create API that can be called in either fashions.

    Kind: global function
    Returns: undefined | * | Promise - Promise if promisified

    Param Type Description
    ctx Object context / this
    fn function The function to call
    args arguments Arguments

    License

    Copyright 2015 Bojan D.

    Licensed under the MIT License.

    Install

    npm i promisify-call

    DownloadsWeekly Downloads

    218,337

    Version

    2.0.4

    License

    MIT

    Last publish

    Collaborators

    • bojand