@uni/loading
Version:
49 lines (44 loc) • 1.7 kB
JavaScript
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
export function promisify(api) {
return function (arg) {
return new Promise(function (resolve, reject) {
var promisifyArg = arg;
api(_extends({}, promisifyArg, {
success: function success(res) {
if (promisifyArg && typeof promisifyArg.success === 'function') {
promisifyArg.success(res);
}
resolve(res);
},
onSuccess: function onSuccess(res) {
if (promisifyArg && typeof promisifyArg.onSuccess === 'function') {
promisifyArg.onSuccess(res);
}
resolve(res);
},
fail: function fail(res) {
if (promisifyArg && typeof promisifyArg.fail === 'function') {
promisifyArg.fail(res);
}
reject(res);
},
onFail: function onFail(res) {
if (promisifyArg && typeof promisifyArg.onFail === 'function') {
promisifyArg.onFail(res);
}
reject(res);
},
complete: function complete(res) {
if (promisifyArg && typeof promisifyArg.complete === 'function') {
promisifyArg.complete(res);
}
},
onComplete: function onComplete(res) {
if (promisifyArg && typeof promisifyArg.onComplete === 'function') {
promisifyArg.onComplete(res);
}
}
}));
});
};
}