@web-atoms/core
Version:
37 lines (36 loc) • 971 B
JavaScript
System.register(["./types"], function (_export, _context) {
"use strict";
var CancelToken;
function Defer(n = 250) {
return (target, key, descriptor) => {
const old = descriptor.value;
const k = Symbol.for(`defer_${key}`);
descriptor.value = function (...a) {
const id = this[k];
if (id) {
clearTimeout(id);
}
this[k] = setTimeout(() => {
this[k] = undefined;
const result = old.apply(this, a);
if (result === null || result === void 0 ? void 0 : result.then) {
result.catch(e => {
if (CancelToken.isCancelled(e)) {
return;
}
console.error(e);
});
}
}, n);
};
};
}
_export("default", Defer);
return {
setters: [function (_types) {
CancelToken = _types.CancelToken;
}],
execute: function () {}
};
});
//# sourceMappingURL=Defer.js.map