fix: allow interstitial callbacks to be functional (no cb required)

This commit is contained in:
Julian Lam
2021-02-26 09:58:48 -05:00
parent cdf5d18f54
commit 9bf94ad50f

View File

@@ -150,7 +150,14 @@ authenticationController.registerComplete = function (req, res, next) {
const callbacks = data.interstitials.reduce((memo, cur) => {
if (cur.hasOwnProperty('callback') && typeof cur.callback === 'function') {
req.body.files = req.files;
memo.push(cur.callback && cur.callback.constructor && cur.callback.constructor.name === 'AsyncFunction' ? cur.callback : util.promisify(cur.callback));
if (
(cur.callback.constructor && cur.callback.constructor.name === 'AsyncFunction') ||
cur.callback.length === 2 // non-async function w/o callback
) {
memo.push(cur.callback);
} else {
memo.push(util.promisify(cur.callback));
}
}
return memo;