@web-atoms/core
Version:
44 lines (43 loc) • 1.44 kB
JavaScript
System.register(["tslib", "../di/DITransient", "./TransientDisposable", "./types"], function (_export, _context) {
"use strict";
var __decorate, DITransient, TransientDisposable, CancelToken, CancelTokenFactory;
return {
setters: [function (_tslib) {
__decorate = _tslib.__decorate;
}, function (_diDITransient) {
DITransient = _diDITransient.default;
}, function (_TransientDisposable) {
TransientDisposable = _TransientDisposable.default;
}, function (_types) {
CancelToken = _types.CancelToken;
}],
execute: function () {
CancelTokenFactory = class CancelTokenFactory extends TransientDisposable {
constructor() {
super(...arguments);
this.mToken = {};
}
newToken(key, timeout = -1) {
key = key || "__old";
const old = this.mToken[key];
if (old) {
old.cancel();
}
const n = this.mToken[key] = new CancelToken(timeout);
return n;
}
dispose() {
for (const key in this.mToken) {
if (this.mToken.hasOwnProperty(key)) {
const element = this.mToken[key];
element.dispose();
}
}
}
};
CancelTokenFactory = __decorate([DITransient()], CancelTokenFactory);
_export("default", CancelTokenFactory);
}
};
});
//# sourceMappingURL=CancelTokenFactory.js.map