You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
21 lines
419 B
JavaScript
21 lines
419 B
JavaScript
"use strict";
|
|
|
|
// FIXME: Can we use p-defer here instead?
|
|
module.exports = function createDefer() {
|
|
let resolveFunc, rejectFunc;
|
|
|
|
// NOTE: This works because the `new Promise` callback gets executed synchronously.
|
|
let promise = new Promise((resolve, reject) => {
|
|
resolveFunc = resolve;
|
|
rejectFunc = reject;
|
|
});
|
|
|
|
return {
|
|
promise: promise,
|
|
defer: {
|
|
resolve: resolveFunc,
|
|
reject: rejectFunc
|
|
}
|
|
};
|
|
};
|