Sha256: 9a8ac77c07e26effda9c6205e712fdf3c43335d2f5798ab7ade4ce1a77b64669
Contents?: true
Size: 706 Bytes
Versions: 44
Compression:
Stored size: 706 Bytes
Contents
"use strict"; var ensurePlainFunction = require("../../../object/ensure-plain-function") , isThenable = require("../../../object/is-thenable") , ensureThenable = require("../../../object/ensure-thenable"); var resolveCallback = function (callback, next) { var callbackResult = callback(); if (!isThenable(callbackResult)) return next(); return callbackResult.then(next); }; module.exports = function (callback) { ensureThenable(this); ensurePlainFunction(callback); return this.then( function (result) { return resolveCallback(callback, function () { return result; }); }, function (error) { return resolveCallback(callback, function () { throw error; }); } ); };
Version data entries
44 entries across 44 versions & 2 rubygems