tree: 87152b211e29886550c38c65c3b22b1addaa6c40 [path history] [tgz]
  1. .npmignore
  2. .travis.yml
  3. .zuul.yml
  4. index.js
  5. LICENSE
  6. package.json
  7. README.md
node_modules/call-me-maybe/README.md

call-me-maybe Build Status

Let your JS API users either give you a callback or receive a promise.

Usage

var maybe = require("call-me-maybe")

module.exports = function asyncFunc (cb) {
  return maybe(cb, new Promise(function(resolve, reject) {
    // ...
  }))
}

API

maybe(cb, promise)

If the callback cb is truthy, returns undefined and will call cb when promise is settled. The parameters passed to cb are standard error-first:

  • If promise is fulfilled, then it is called with the result of the promise: cb(null, result)
  • If promise is rejected, then it is called with the rejection error: cb(err)

If cb is falsey, then promise is retuned.