diff options
author | Dan Finlay <dan@danfinlay.com> | 2017-07-21 03:39:06 +0800 |
---|---|---|
committer | Dan Finlay <dan@danfinlay.com> | 2017-07-21 03:39:06 +0800 |
commit | a41e5788cf4a8e680fdbc4d16690a8f5cc8af265 (patch) | |
tree | 5c546e149ce0cf2d88bbef1d1645b124f11d0eb5 /app/scripts/lib/nodeify.js | |
parent | 86d367957fe8ac04462f716fe0ba2bfa4e5ff3f6 (diff) | |
parent | 9b24ab0e70d72471ddc928a763bc2096790ab966 (diff) | |
download | tangerine-wallet-browser-a41e5788cf4a8e680fdbc4d16690a8f5cc8af265.tar.gz tangerine-wallet-browser-a41e5788cf4a8e680fdbc4d16690a8f5cc8af265.tar.zst tangerine-wallet-browser-a41e5788cf4a8e680fdbc4d16690a8f5cc8af265.zip |
Merge branch 'master' into NewUI
Diffstat (limited to 'app/scripts/lib/nodeify.js')
-rw-r--r-- | app/scripts/lib/nodeify.js | 27 |
1 files changed, 6 insertions, 21 deletions
diff --git a/app/scripts/lib/nodeify.js b/app/scripts/lib/nodeify.js index 51d89a8fb..299bfe624 100644 --- a/app/scripts/lib/nodeify.js +++ b/app/scripts/lib/nodeify.js @@ -1,24 +1,9 @@ -module.exports = function (promiseFn) { - return function () { - var args = [] - for (var i = 0; i < arguments.length - 1; i++) { - args.push(arguments[i]) - } - var cb = arguments[arguments.length - 1] +const promiseToCallback = require('promise-to-callback') - const nodeified = promiseFn.apply(this, args) - - if (!nodeified) { - const methodName = String(promiseFn).split('(')[0] - throw new Error(`The ${methodName} did not return a Promise, but was nodeified.`) - } - nodeified.then(function (result) { - cb(null, result) - }) - .catch(function (reason) { - cb(reason) - }) - - return nodeified +module.exports = function(fn, context) { + return function(){ + const args = [].slice.call(arguments) + const callback = args.pop() + promiseToCallback(fn.apply(context, args))(callback) } } |