aboutsummaryrefslogtreecommitdiffstats
path: root/app/scripts/lib/nodeify.js
blob: 832d6c6d37131d10ba4babfe5692e50f47d1a1a4 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
const promiseToCallback = require('promise-to-callback')

module.exports = function nodeify (fn, context) {
  return function(){
    const args = [].slice.call(arguments)
    const callback = args.pop()
    if (typeof callback !== 'function') throw new Error('callback is not a function')
    promiseToCallback(fn.apply(context, args))(callback)
  }
}