@specialblend/unpromisify
Version:
convert async functions into callback style functions
16 lines (13 loc) • 474 B
JavaScript
import assert from 'assert';
function unpromisify(handler) {
return (...args) => {
assert(args.length, 'unpromisified handler needs at least 1 argument');
const params = args;
const callback = args.pop();
assert(typeof callback === 'function', 'provided callback argument must be a function');
handler(...params)
.then(data => callback(null, data))
.catch(callback);
};
}
export default unpromisify;