@cloudbase/utilities 2.8.23-beta.0 → 2.8.25-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -135,13 +135,18 @@ var WebRequest = (function (_super) {
135
135
  };
136
136
  WebRequest.prototype.fetch = function (options) {
137
137
  return __awaiter(this, void 0, void 0, function () {
138
- var url, _a, enableAbort, _b, stream, abortController, timer, res;
138
+ var abortController, url, _a, enableAbort, _b, stream, signal, timer, res;
139
139
  var _this = this;
140
140
  return __generator(this, function (_c) {
141
141
  switch (_c.label) {
142
142
  case 0:
143
- url = options.url, _a = options.enableAbort, enableAbort = _a === void 0 ? false : _a, _b = options.stream, stream = _b === void 0 ? false : _b;
144
143
  abortController = new AbortController();
144
+ url = options.url, _a = options.enableAbort, enableAbort = _a === void 0 ? false : _a, _b = options.stream, stream = _b === void 0 ? false : _b, signal = options.signal;
145
+ if (signal) {
146
+ if (signal.aborted)
147
+ abortController.abort();
148
+ signal.addEventListener('abort', function () { return abortController.abort(); });
149
+ }
145
150
  timer = null;
146
151
  if (enableAbort && this.timeout) {
147
152
  timer = setTimeout(function () {
@@ -263,4 +268,4 @@ function genAdapter() {
263
268
  return adapter;
264
269
  }
265
270
  exports.genAdapter = genAdapter;
266
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2ViLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FkYXB0ZXJzL3BsYXRmb3Jtcy93ZWIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxrRUFTcUM7QUFDckMsd0NBQXNFO0FBQ3RFLGlEQUFvRDtBQUtwRDtJQUF5Qiw4QkFBa0I7SUFPekMsb0JBQVksTUFBc0I7UUFBbEMsWUFDRSxpQkFBTyxTQUtSO1FBSlMsSUFBQSxPQUFPLEdBQW9DLE1BQU0sUUFBMUMsRUFBRSxVQUFVLEdBQXdCLE1BQU0sV0FBOUIsRUFBRSxpQkFBaUIsR0FBSyxNQUFNLGtCQUFYLENBQVc7UUFDekQsS0FBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLElBQUksQ0FBQyxDQUFBO1FBQzNCLEtBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxJQUFJLE1BQU0sQ0FBQTtRQUN0QyxLQUFJLENBQUMsaUJBQWlCLEdBQUcsaUJBQWlCLElBQUksQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxVQUFVLENBQUMsQ0FBQTs7SUFDckYsQ0FBQztJQUNNLHdCQUFHLEdBQVYsVUFBVyxPQUF3QjtRQUNqQyxPQUFPLElBQUksQ0FBQyxPQUFPLHVCQUVaLE9BQU8sS0FDVixNQUFNLEVBQUUsS0FBSyxLQUVmLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQ3ZDLENBQUE7SUFDSCxDQUFDO0lBQ00seUJBQUksR0FBWCxVQUFZLE9BQXdCO1FBQ2xDLE9BQU8sSUFBSSxDQUFDLE9BQU8sdUJBRVosT0FBTyxLQUNWLE1BQU0sRUFBRSxNQUFNLEtBRWhCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQ3hDLENBQUE7SUFDSCxDQUFDO0lBQ00sd0JBQUcsR0FBVixVQUFXLE9BQXdCO1FBQ2pDLE9BQU8sSUFBSSxDQUFDLE9BQU8sdUJBQ2QsT0FBTyxLQUNWLE1BQU0sRUFBRSxLQUFLLElBQ2IsQ0FBQTtJQUNKLENBQUM7SUFDTSwyQkFBTSxHQUFiLFVBQWMsT0FBOEI7UUFDbEMsSUFBQSxJQUFJLEdBQXVDLE9BQU8sS0FBOUMsRUFBRSxJQUFJLEdBQWlDLE9BQU8sS0FBeEMsRUFBRSxJQUFJLEdBQTJCLE9BQU8sS0FBbEMsRUFBRSxNQUFNLEdBQW1CLE9BQU8sT0FBMUIsRUFBRSxLQUFpQixPQUFPLFFBQVosRUFBWixPQUFPLG1CQUFHLEVBQUUsS0FBQSxDQUFZO1FBQzFELElBQU0sU0FBUyxHQUFHLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLENBQUMsTUFBTSxhQUFOLE1BQU0sdUJBQU4sTUFBTSxDQUFFLFdBQVcsRUFBRSxDQUFDLElBQUksS0FBSyxDQUFBO1FBRTlFLElBQU0sUUFBUSxHQUFHLElBQUksUUFBUSxFQUFFLENBQUE7UUFDL0IsSUFBSSxTQUFTLEtBQUssTUFBTSxFQUFFO1lBQ3hCLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDLFVBQUMsR0FBRztnQkFDNUIsUUFBUSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUE7WUFDakMsQ0FBQyxDQUFDLENBQUE7WUFDRixRQUFRLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQTtZQUM1QixRQUFRLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQTtZQUM3QixPQUFPLElBQUksQ0FBQyxPQUFPLHVCQUVaLE9BQU8sS0FDVixJQUFJLEVBQUUsUUFBUSxFQUNkLE1BQU0sRUFBRSxTQUFTLEtBRW5CLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQzFDLENBQUE7U0FDRjtRQUNELE9BQU8sSUFBSSxDQUFDLE9BQU8sdUJBRVosT0FBTyxLQUNWLE1BQU0sRUFBRSxLQUFLLEVBQ2IsT0FBTyxTQUFBLEVBQ1AsSUFBSSxFQUFFLElBQUksS0FFWixJQUFJLENBQUMsaUJBQWlCLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUMxQyxDQUFBO0lBQ0gsQ0FBQztJQUNZLDZCQUFRLEdBQXJCLFVBQXNCLE9BQXdCOzs7Ozs7O3dCQUV6QixXQUFNLElBQUksQ0FBQyxHQUFHLHVCQUMxQixPQUFPLEtBQ1YsT0FBTyxFQUFFLEVBQUUsRUFDWCxZQUFZLEVBQUUsTUFBTSxJQUNwQixFQUFBOzt3QkFKTSxJQUFJLEdBQUssQ0FBQSxTQUlmLENBQUEsS0FKVTt3QkFLTixHQUFHLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUE7d0JBQ2xELFFBQVEsR0FBRyxrQkFBa0IsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQTt3QkFDbkYsSUFBSSxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUE7d0JBRXhDLElBQUksQ0FBQyxJQUFJLEdBQUcsR0FBRyxDQUFBO3dCQUNmLElBQUksQ0FBQyxZQUFZLENBQUMsVUFBVSxFQUFFLFFBQVEsQ0FBQyxDQUFBO3dCQUN2QyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUE7d0JBRTNCLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFBO3dCQUMvQixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUE7d0JBRVosTUFBTSxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLENBQUE7d0JBQy9CLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFBOzs7Ozs0QkFFakMsV0FBTyxJQUFJLE9BQU8sQ0FBQyxVQUFDLE9BQU87NEJBQ3pCLE9BQU8sQ0FBQztnQ0FDTixVQUFVLEVBQUUsR0FBRztnQ0FDZixZQUFZLEVBQUUsT0FBTyxDQUFDLEdBQUc7NkJBQzFCLENBQUMsQ0FBQTt3QkFDSixDQUFDLENBQUMsRUFBQTs7OztLQUNIO0lBQ0ssMEJBQUssR0FBWCxVQUFZLE9BQXNCOzs7Ozs7O3dCQUN4QixHQUFHLEdBQTBDLE9BQU8sSUFBakQsRUFBRSxLQUF3QyxPQUFPLFlBQTVCLEVBQW5CLFdBQVcsbUJBQUcsS0FBSyxLQUFBLEVBQUUsS0FBbUIsT0FBTyxPQUFaLEVBQWQsTUFBTSxtQkFBRyxLQUFLLEtBQUEsQ0FBWTt3QkFFdEQsZUFBZSxHQUFHLElBQUksZUFBZSxFQUFFLENBQUE7d0JBRXpDLEtBQUssR0FBRyxJQUFJLENBQUE7d0JBQ2hCLElBQUksV0FBVyxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7NEJBQy9CLEtBQUssR0FBRyxVQUFVLENBQUM7Z0NBQ2pCLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSSxDQUFDLFVBQVUsQ0FBQyxDQUFBO2dDQUM3QixlQUFlLENBQUMsS0FBSyxDQUFDLElBQUksS0FBSyxDQUFDLEtBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFBOzRCQUNuRCxDQUFDLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFBO3lCQUNqQjt3QkFFVyxXQUFNLEtBQUssQ0FBQyxHQUFHLHdCQUN0QixPQUFPLEtBQ1YsTUFBTSxFQUFFLGVBQWUsQ0FBQyxNQUFNLElBQzlCO2lDQUNDLElBQUksQ0FBQyxVQUFPLFFBQVE7Ozs7OzRDQUNuQixZQUFZLENBQUMsS0FBSyxDQUFDLENBQUE7aURBRVosUUFBUSxDQUFDLEVBQUUsRUFBWCxjQUFXOzRDQUFHLEtBQUEsUUFBUSxDQUFBOzs7NENBQUcsS0FBQSxDQUFBLEtBQUEsT0FBTyxDQUFBLENBQUMsTUFBTSxDQUFBOzRDQUFDLFdBQU0sUUFBUSxDQUFDLElBQUksRUFBRSxFQUFBOzs0Q0FBcEMsS0FBQSxjQUFlLFNBQXFCLEVBQUMsQ0FBQTs7Z0RBQXJFLGVBQXFFOzs7aUNBQ3RFLENBQUM7aUNBQ0QsS0FBSyxDQUFDLFVBQUMsQ0FBQztnQ0FDUCxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUE7Z0NBQ25CLE9BQU8sT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQTs0QkFDMUIsQ0FBQyxDQUFDLEVBQUE7O3dCQVpFLEdBQUcsR0FBRyxTQVlSO3dCQUVKLFdBQU87Z0NBQ0wsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRTtnQ0FDcEMsVUFBVSxFQUFFLEdBQUcsQ0FBQyxNQUFNO2dDQUN0QixNQUFNLEVBQUUsR0FBRyxDQUFDLE9BQU87NkJBQ3BCLEVBQUE7Ozs7S0FDRjtJQUtTLDRCQUFPLEdBQWpCLFVBQWtCLE9BQXdCLEVBQUUsV0FBbUI7UUFBL0QsaUJBaUVDO1FBakUyQyw0QkFBQSxFQUFBLG1CQUFtQjtRQUM3RCxJQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFdBQVcsRUFBRSxJQUFJLEtBQUssQ0FBQTtRQUM1RCxPQUFPLElBQUksT0FBTyxDQUFDLFVBQUMsT0FBTztZQUNqQixJQUFBLEdBQUcsR0FBZ0YsT0FBTyxJQUF2RixFQUFFLEtBQThFLE9BQU8sUUFBekUsRUFBWixPQUFPLG1CQUFHLEVBQUUsS0FBQSxFQUFFLElBQUksR0FBNEQsT0FBTyxLQUFuRSxFQUFFLFlBQVksR0FBOEMsT0FBTyxhQUFyRCxFQUFFLGVBQWUsR0FBNkIsT0FBTyxnQkFBcEMsRUFBRSxJQUFJLEdBQXVCLE9BQU8sS0FBOUIsRUFBRSxnQkFBZ0IsR0FBSyxPQUFPLGlCQUFaLENBQVk7WUFDbEcsSUFBTSxPQUFPLEdBQUcsSUFBQSxnQkFBUyxFQUFDLElBQUEsb0JBQVcsR0FBRSxFQUFFLEdBQUcsRUFBRSxNQUFNLEtBQUssS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFBO1lBQzNFLElBQU0sSUFBSSxHQUFHLElBQUksY0FBYyxFQUFFLENBQUE7WUFDakMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUE7WUFDMUIsWUFBWSxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksR0FBRyxZQUFZLENBQUMsQ0FBQTtZQUNsRCxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxVQUFDLEdBQUc7Z0JBQy9CLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLEVBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUE7WUFDMUMsQ0FBQyxDQUFDLENBQUE7WUFDRixJQUFJLEtBQUssQ0FBQTtZQUNULElBQUksZ0JBQWdCLEVBQUU7Z0JBQ3BCLElBQUksQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxFQUFFLGdCQUFnQixDQUFDLENBQUE7YUFDM0Q7WUFDRCxJQUFJLENBQUMsa0JBQWtCLEdBQUc7Z0JBQ3hCLElBQU0sTUFBTSxHQUFtQixFQUFFLENBQUE7Z0JBQ2pDLElBQUksSUFBSSxDQUFDLFVBQVUsS0FBSyxDQUFDLEVBQUU7b0JBQ3pCLElBQU0sU0FBTyxHQUFHLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFBO29CQUM1QyxJQUFNLEdBQUcsR0FBRyxTQUFPLENBQUMsSUFBSSxFQUFFLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFBO29CQUUzQyxJQUFNLFdBQVMsR0FBRyxFQUFFLENBQUE7b0JBQ3BCLEdBQUcsQ0FBQyxPQUFPLENBQUMsVUFBQyxJQUFJO3dCQUNmLElBQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUE7d0JBQzlCLElBQU0sTUFBTSxHQUFHLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQTt3QkFDMUMsSUFBTSxLQUFLLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQTt3QkFDOUIsV0FBUyxDQUFDLE1BQU0sQ0FBQyxHQUFHLEtBQUssQ0FBQTtvQkFDM0IsQ0FBQyxDQUFDLENBQUE7b0JBQ0YsTUFBTSxDQUFDLE1BQU0sR0FBRyxXQUFTLENBQUE7b0JBQ3pCLE1BQU0sQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQTtvQkFDL0IsSUFBSTt3QkFFRixNQUFNLENBQUMsSUFBSSxHQUFHLFlBQVksS0FBSyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFBO3FCQUN0RjtvQkFBQyxPQUFPLENBQUMsRUFBRTt3QkFDVixNQUFNLENBQUMsSUFBSSxHQUFHLFlBQVksS0FBSyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUE7cUJBQzFFO29CQUNELFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQTtvQkFDbkIsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFBO2lCQUNoQjtZQUNILENBQUMsQ0FBQTtZQUNELElBQUksV0FBVyxJQUFJLEtBQUksQ0FBQyxPQUFPLEVBQUU7Z0JBQy9CLEtBQUssR0FBRyxVQUFVLENBQUM7b0JBQ2pCLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSSxDQUFDLFVBQVUsQ0FBQyxDQUFBO29CQUM3QixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUE7Z0JBQ2QsQ0FBQyxFQUFFLEtBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQTthQUNqQjtZQUVELElBQUksT0FBTyxDQUFBO1lBQ1gsSUFBSSxJQUFBLGlCQUFVLEVBQUMsSUFBSSxDQUFDLEVBQUU7Z0JBRXBCLE9BQU8sR0FBRyxJQUFJLENBQUE7YUFDZjtpQkFBTSxJQUFJLE9BQU8sQ0FBQyxjQUFjLENBQUMsS0FBSyxtQ0FBbUMsRUFBRTtnQkFDMUUsT0FBTyxHQUFHLElBQUEsb0JBQWEsRUFBQyxJQUFJLENBQUMsQ0FBQTthQUM5QjtpQkFBTSxJQUFJLElBQUksRUFBRTtnQkFDZixPQUFPLEdBQUcsSUFBSSxDQUFBO2FBQ2Y7aUJBQU07Z0JBRUwsT0FBTyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFBO2FBQ2xEO1lBRUQsSUFBSSxlQUFlLEVBQUU7Z0JBQ25CLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFBO2FBQzVCO1lBQ0QsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQTtRQUNwQixDQUFDLENBQUMsQ0FBQTtJQUNKLENBQUM7SUFDSCxpQkFBQztBQUFELENBQUMsQUF2TUQsQ0FBeUIsc0NBQWtCLEdBdU0xQztBQVlvQixnQ0FBVTtBQVYvQixTQUFTLFVBQVU7SUFDakIsSUFBTSxPQUFPLEdBQXdCO1FBQ25DLElBQUksRUFBRSxNQUFNO1FBQ1osUUFBUSxFQUFFLFVBQVU7UUFDcEIsT0FBTyxFQUFFLFNBQVM7UUFDbEIsWUFBWSxjQUFBO0tBQ2IsQ0FBQTtJQUNELE9BQU8sT0FBTyxDQUFBO0FBQ2hCLENBQUM7QUFFUSxnQ0FBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIFNES0FkYXB0ZXJJbnRlcmZhY2UsXG4gIEFic3RyYWN0U0RLUmVxdWVzdCxcbiAgSVJlcXVlc3RPcHRpb25zLFxuICBSZXNwb25zZU9iamVjdCxcbiAgSVVwbG9hZFJlcXVlc3RPcHRpb25zLFxuICBJUmVxdWVzdENvbmZpZyxcbiAgSVJlcXVlc3RNZXRob2QsXG4gIElGZXRjaE9wdGlvbnMsXG59IGZyb20gJ0BjbG91ZGJhc2UvYWRhcHRlci1pbnRlcmZhY2UnXG5pbXBvcnQgeyBpc0Zvcm1EYXRhLCBmb3JtYXRVcmwsIHRvUXVlcnlTdHJpbmcgfSBmcm9tICcuLi8uLi9saWJzL3V0aWwnXG5pbXBvcnQgeyBnZXRQcm90b2NvbCB9IGZyb20gJy4uLy4uL2NvbnN0YW50cy9jb21tb24nXG5cbi8qKlxuICogQGNsYXNzIFdlYlJlcXVlc3RcbiAqL1xuY2xhc3MgV2ViUmVxdWVzdCBleHRlbmRzIEFic3RyYWN0U0RLUmVxdWVzdCB7XG4gIC8vIOm7mOiupOS4jemZkOi2heaXtlxuICBwcml2YXRlIHJlYWRvbmx5IHRpbWVvdXQ6IG51bWJlclxuICAvLyDotoXml7bmj5DnpLrmlofmoYhcbiAgcHJpdmF0ZSByZWFkb25seSB0aW1lb3V0TXNnOiBzdHJpbmdcbiAgLy8g6LaF5pe25Y+X6ZmQ6K+35rGC57G75Z6L77yM6buY6K6k5omA5pyJ6K+35rGC5Z2H5Y+X6ZmQXG4gIHByaXZhdGUgcmVhZG9ubHkgcmVzdHJpY3RlZE1ldGhvZHM6IEFycmF5PElSZXF1ZXN0TWV0aG9kPlxuICBjb25zdHJ1Y3Rvcihjb25maWc6IElSZXF1ZXN0Q29uZmlnKSB7XG4gICAgc3VwZXIoKVxuICAgIGNvbnN0IHsgdGltZW91dCwgdGltZW91dE1zZywgcmVzdHJpY3RlZE1ldGhvZHMgfSA9IGNvbmZpZ1xuICAgIHRoaXMudGltZW91dCA9IHRpbWVvdXQgfHwgMFxuICAgIHRoaXMudGltZW91dE1zZyA9IHRpbWVvdXRNc2cgfHwgJ+ivt+axgui2heaXtidcbiAgICB0aGlzLnJlc3RyaWN0ZWRNZXRob2RzID0gcmVzdHJpY3RlZE1ldGhvZHMgfHwgWydnZXQnLCAncG9zdCcsICd1cGxvYWQnLCAnZG93bmxvYWQnXVxuICB9XG4gIHB1YmxpYyBnZXQob3B0aW9uczogSVJlcXVlc3RPcHRpb25zKTogUHJvbWlzZTxSZXNwb25zZU9iamVjdD4ge1xuICAgIHJldHVybiB0aGlzLnJlcXVlc3QoXG4gICAgICB7XG4gICAgICAgIC4uLm9wdGlvbnMsXG4gICAgICAgIG1ldGhvZDogJ2dldCcsXG4gICAgICB9LFxuICAgICAgdGhpcy5yZXN0cmljdGVkTWV0aG9kcy5pbmNsdWRlcygnZ2V0JyksXG4gICAgKVxuICB9XG4gIHB1YmxpYyBwb3N0KG9wdGlvbnM6IElSZXF1ZXN0T3B0aW9ucyk6IFByb21pc2U8UmVzcG9uc2VPYmplY3Q+IHtcbiAgICByZXR1cm4gdGhpcy5yZXF1ZXN0KFxuICAgICAge1xuICAgICAgICAuLi5vcHRpb25zLFxuICAgICAgICBtZXRob2Q6ICdwb3N0JyxcbiAgICAgIH0sXG4gICAgICB0aGlzLnJlc3RyaWN0ZWRNZXRob2RzLmluY2x1ZGVzKCdwb3N0JyksXG4gICAgKVxuICB9XG4gIHB1YmxpYyBwdXQob3B0aW9uczogSVJlcXVlc3RPcHRpb25zKTogUHJvbWlzZTxSZXNwb25zZU9iamVjdD4ge1xuICAgIHJldHVybiB0aGlzLnJlcXVlc3Qoe1xuICAgICAgLi4ub3B0aW9ucyxcbiAgICAgIG1ldGhvZDogJ3B1dCcsXG4gICAgfSlcbiAgfVxuICBwdWJsaWMgdXBsb2FkKG9wdGlvbnM6IElVcGxvYWRSZXF1ZXN0T3B0aW9ucyk6IFByb21pc2U8UmVzcG9uc2VPYmplY3Q+IHtcbiAgICBjb25zdCB7IGRhdGEsIGZpbGUsIG5hbWUsIG1ldGhvZCwgaGVhZGVycyA9IHt9IH0gPSBvcHRpb25zXG4gICAgY29uc3QgcmVxTWV0aG9kID0geyBwb3N0OiAncG9zdCcsIHB1dDogJ3B1dCcgfVttZXRob2Q/LnRvTG93ZXJDYXNlKCldIHx8ICdwdXQnXG4gICAgLy8g5LiK5Lyg5pa55byP5Li6cG9zdOaXtu+8jOmcgOi9rOaNouS4ukZvcm1EYXRhXG4gICAgY29uc3QgZm9ybURhdGEgPSBuZXcgRm9ybURhdGEoKVxuICAgIGlmIChyZXFNZXRob2QgPT09ICdwb3N0Jykge1xuICAgICAgT2JqZWN0LmtleXMoZGF0YSkuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgICAgIGZvcm1EYXRhLmFwcGVuZChrZXksIGRhdGFba2V5XSlcbiAgICAgIH0pXG4gICAgICBmb3JtRGF0YS5hcHBlbmQoJ2tleScsIG5hbWUpXG4gICAgICBmb3JtRGF0YS5hcHBlbmQoJ2ZpbGUnLCBmaWxlKVxuICAgICAgcmV0dXJuIHRoaXMucmVxdWVzdChcbiAgICAgICAge1xuICAgICAgICAgIC4uLm9wdGlvbnMsXG4gICAgICAgICAgZGF0YTogZm9ybURhdGEsXG4gICAgICAgICAgbWV0aG9kOiByZXFNZXRob2QsXG4gICAgICAgIH0sXG4gICAgICAgIHRoaXMucmVzdHJpY3RlZE1ldGhvZHMuaW5jbHVkZXMoJ3VwbG9hZCcpLFxuICAgICAgKVxuICAgIH1cbiAgICByZXR1cm4gdGhpcy5yZXF1ZXN0KFxuICAgICAge1xuICAgICAgICAuLi5vcHRpb25zLFxuICAgICAgICBtZXRob2Q6ICdwdXQnLFxuICAgICAgICBoZWFkZXJzLFxuICAgICAgICBib2R5OiBmaWxlLFxuICAgICAgfSxcbiAgICAgIHRoaXMucmVzdHJpY3RlZE1ldGhvZHMuaW5jbHVkZXMoJ3VwbG9hZCcpLFxuICAgIClcbiAgfVxuICBwdWJsaWMgYXN5bmMgZG93bmxvYWQob3B0aW9uczogSVJlcXVlc3RPcHRpb25zKTogUHJvbWlzZTxhbnk+IHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgeyBkYXRhIH0gPSBhd2FpdCB0aGlzLmdldCh7XG4gICAgICAgIC4uLm9wdGlvbnMsXG4gICAgICAgIGhlYWRlcnM6IHt9LCAvLyDkuIvovb3otYTmupDor7fmsYLkuI3nu4/ov4dzZXJ2aWNl77yMaGVhZGVy5riF56m6XG4gICAgICAgIHJlc3BvbnNlVHlwZTogJ2Jsb2InLFxuICAgICAgfSlcbiAgICAgIGNvbnN0IHVybCA9IHdpbmRvdy5VUkwuY3JlYXRlT2JqZWN0VVJMKG5ldyBCbG9iKFtkYXRhXSkpXG4gICAgICBjb25zdCBmaWxlTmFtZSA9IGRlY29kZVVSSUNvbXBvbmVudChuZXcgVVJMKG9wdGlvbnMudXJsKS5wYXRobmFtZS5zcGxpdCgnLycpLnBvcCgpIHx8ICcnKVxuICAgICAgY29uc3QgbGluayA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2EnKVxuXG4gICAgICBsaW5rLmhyZWYgPSB1cmxcbiAgICAgIGxpbmsuc2V0QXR0cmlidXRlKCdkb3dubG9hZCcsIGZpbGVOYW1lKVxuICAgICAgbGluay5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnXG5cbiAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQobGluaylcbiAgICAgIGxpbmsuY2xpY2soKVxuICAgICAgLy8g5Zue5pS25YaF5a2YXG4gICAgICB3aW5kb3cuVVJMLnJldm9rZU9iamVjdFVSTCh1cmwpXG4gICAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGxpbmspXG4gICAgfSBjYXRjaCAoZSkge31cbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcbiAgICAgIHJlc29sdmUoe1xuICAgICAgICBzdGF0dXNDb2RlOiAyMDAsXG4gICAgICAgIHRlbXBGaWxlUGF0aDogb3B0aW9ucy51cmwsXG4gICAgICB9KVxuICAgIH0pXG4gIH1cbiAgYXN5bmMgZmV0Y2gob3B0aW9uczogSUZldGNoT3B0aW9ucyk6IFByb21pc2U8UmVzcG9uc2VPYmplY3Q+IHtcbiAgICBjb25zdCB7IHVybCwgZW5hYmxlQWJvcnQgPSBmYWxzZSwgc3RyZWFtID0gZmFsc2UgfSA9IG9wdGlvbnNcblxuICAgIGNvbnN0IGFib3J0Q29udHJvbGxlciA9IG5ldyBBYm9ydENvbnRyb2xsZXIoKVxuXG4gICAgbGV0IHRpbWVyID0gbnVsbFxuICAgIGlmIChlbmFibGVBYm9ydCAmJiB0aGlzLnRpbWVvdXQpIHtcbiAgICAgIHRpbWVyID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIGNvbnNvbGUud2Fybih0aGlzLnRpbWVvdXRNc2cpXG4gICAgICAgIGFib3J0Q29udHJvbGxlci5hYm9ydChuZXcgRXJyb3IodGhpcy50aW1lb3V0TXNnKSlcbiAgICAgIH0sIHRoaXMudGltZW91dClcbiAgICB9XG5cbiAgICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaCh1cmwsIHtcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICBzaWduYWw6IGFib3J0Q29udHJvbGxlci5zaWduYWwsXG4gICAgfSlcbiAgICAgIC50aGVuKGFzeW5jIChyZXNwb25zZSkgPT4ge1xuICAgICAgICBjbGVhclRpbWVvdXQodGltZXIpXG4gICAgICAgIC8vIDQwNCDnrYnnrYnkuZ/kvJrov5sgcmVzb2x2Ze+8jOaJgOS7peimgeWGjemAmui/hyBvayDliKTmlq1cbiAgICAgICAgcmV0dXJuIHJlc3BvbnNlLm9rID8gcmVzcG9uc2UgOiBQcm9taXNlLnJlamVjdChhd2FpdCByZXNwb25zZS5qc29uKCkpXG4gICAgICB9KVxuICAgICAgLmNhdGNoKCh4KSA9PiB7XG4gICAgICAgIGNsZWFyVGltZW91dCh0aW1lcilcbiAgICAgICAgcmV0dXJuIFByb21pc2UucmVqZWN0KHgpXG4gICAgICB9KVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIGRhdGE6IHN0cmVhbSA/IHJlcy5ib2R5IDogcmVzLmpzb24oKSxcbiAgICAgIHN0YXR1c0NvZGU6IHJlcy5zdGF0dXMsXG4gICAgICBoZWFkZXI6IHJlcy5oZWFkZXJzLFxuICAgIH1cbiAgfVxuICAvKipcbiAgICogQHBhcmFtIHtJUmVxdWVzdE9wdGlvbnN9IG9wdGlvbnNcbiAgICogQHBhcmFtIHtib29sZWFufSBlbmFibGVBYm9ydCDmmK/lkKbotoXml7bkuK3mlq3or7fmsYJcbiAgICovXG4gIHByb3RlY3RlZCByZXF1ZXN0KG9wdGlvbnM6IElSZXF1ZXN0T3B0aW9ucywgZW5hYmxlQWJvcnQgPSBmYWxzZSk6IFByb21pc2U8UmVzcG9uc2VPYmplY3Q+IHtcbiAgICBjb25zdCBtZXRob2QgPSBTdHJpbmcob3B0aW9ucy5tZXRob2QpLnRvTG93ZXJDYXNlKCkgfHwgJ2dldCdcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcbiAgICAgIGNvbnN0IHsgdXJsLCBoZWFkZXJzID0ge30sIGRhdGEsIHJlc3BvbnNlVHlwZSwgd2l0aENyZWRlbnRpYWxzLCBib2R5LCBvblVwbG9hZFByb2dyZXNzIH0gPSBvcHRpb25zXG4gICAgICBjb25zdCByZWFsVXJsID0gZm9ybWF0VXJsKGdldFByb3RvY29sKCksIHVybCwgbWV0aG9kID09PSAnZ2V0JyA/IGRhdGEgOiB7fSlcbiAgICAgIGNvbnN0IGFqYXggPSBuZXcgWE1MSHR0cFJlcXVlc3QoKVxuICAgICAgYWpheC5vcGVuKG1ldGhvZCwgcmVhbFVybClcbiAgICAgIHJlc3BvbnNlVHlwZSAmJiAoYWpheC5yZXNwb25zZVR5cGUgPSByZXNwb25zZVR5cGUpXG4gICAgICBPYmplY3Qua2V5cyhoZWFkZXJzKS5mb3JFYWNoKChrZXkpID0+IHtcbiAgICAgICAgYWpheC5zZXRSZXF1ZXN0SGVhZGVyKGtleSwgaGVhZGVyc1trZXldKVxuICAgICAgfSlcbiAgICAgIGxldCB0aW1lclxuICAgICAgaWYgKG9uVXBsb2FkUHJvZ3Jlc3MpIHtcbiAgICAgICAgYWpheC51cGxvYWQuYWRkRXZlbnRMaXN0ZW5lcigncHJvZ3Jlc3MnLCBvblVwbG9hZFByb2dyZXNzKVxuICAgICAgfVxuICAgICAgYWpheC5vbnJlYWR5c3RhdGVjaGFuZ2UgPSAoKSA9PiB7XG4gICAgICAgIGNvbnN0IHJlc3VsdDogUmVzcG9uc2VPYmplY3QgPSB7fVxuICAgICAgICBpZiAoYWpheC5yZWFkeVN0YXRlID09PSA0KSB7XG4gICAgICAgICAgY29uc3QgaGVhZGVycyA9IGFqYXguZ2V0QWxsUmVzcG9uc2VIZWFkZXJzKClcbiAgICAgICAgICBjb25zdCBhcnIgPSBoZWFkZXJzLnRyaW0oKS5zcGxpdCgvW1xcclxcbl0rLylcbiAgICAgICAgICAvLyBDcmVhdGUgYSBtYXAgb2YgaGVhZGVyIG5hbWVzIHRvIHZhbHVlc1xuICAgICAgICAgIGNvbnN0IGhlYWRlck1hcCA9IHt9XG4gICAgICAgICAgYXJyLmZvckVhY2goKGxpbmUpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHBhcnRzID0gbGluZS5zcGxpdCgnOiAnKVxuICAgICAgICAgICAgY29uc3QgaGVhZGVyID0gcGFydHMuc2hpZnQoKS50b0xvd2VyQ2FzZSgpXG4gICAgICAgICAgICBjb25zdCB2YWx1ZSA9IHBhcnRzLmpvaW4oJzogJylcbiAgICAgICAgICAgIGhlYWRlck1hcFtoZWFkZXJdID0gdmFsdWVcbiAgICAgICAgICB9KVxuICAgICAgICAgIHJlc3VsdC5oZWFkZXIgPSBoZWFkZXJNYXBcbiAgICAgICAgICByZXN1bHQuc3RhdHVzQ29kZSA9IGFqYXguc3RhdHVzXG4gICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIC8vIOS4iuS8oHBvc3Tor7fmsYLov5Tlm57mlbDmja7moLzlvI/kuLp4bWzvvIzmraTlpITlrrnplJlcbiAgICAgICAgICAgIHJlc3VsdC5kYXRhID0gcmVzcG9uc2VUeXBlID09PSAnYmxvYicgPyBhamF4LnJlc3BvbnNlIDogSlNPTi5wYXJzZShhamF4LnJlc3BvbnNlVGV4dClcbiAgICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICByZXN1bHQuZGF0YSA9IHJlc3BvbnNlVHlwZSA9PT0gJ2Jsb2InID8gYWpheC5yZXNwb25zZSA6IGFqYXgucmVzcG9uc2VUZXh0XG4gICAgICAgICAgfVxuICAgICAgICAgIGNsZWFyVGltZW91dCh0aW1lcilcbiAgICAgICAgICByZXNvbHZlKHJlc3VsdClcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKGVuYWJsZUFib3J0ICYmIHRoaXMudGltZW91dCkge1xuICAgICAgICB0aW1lciA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgIGNvbnNvbGUud2Fybih0aGlzLnRpbWVvdXRNc2cpXG4gICAgICAgICAgYWpheC5hYm9ydCgpXG4gICAgICAgIH0sIHRoaXMudGltZW91dClcbiAgICAgIH1cbiAgICAgIC8vIOWkhOeQhiBwYXlsb2FkXG4gICAgICBsZXQgcGF5bG9hZFxuICAgICAgaWYgKGlzRm9ybURhdGEoZGF0YSkpIHtcbiAgICAgICAgLy8gRm9ybURhdGHvvIzkuI3lpITnkIZcbiAgICAgICAgcGF5bG9hZCA9IGRhdGFcbiAgICAgIH0gZWxzZSBpZiAoaGVhZGVyc1snY29udGVudC10eXBlJ10gPT09ICdhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQnKSB7XG4gICAgICAgIHBheWxvYWQgPSB0b1F1ZXJ5U3RyaW5nKGRhdGEpXG4gICAgICB9IGVsc2UgaWYgKGJvZHkpIHtcbiAgICAgICAgcGF5bG9hZCA9IGJvZHlcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIC8vIOWFtuWug+aDheWGtVxuICAgICAgICBwYXlsb2FkID0gZGF0YSA/IEpTT04uc3RyaW5naWZ5KGRhdGEpIDogdW5kZWZpbmVkXG4gICAgICB9XG5cbiAgICAgIGlmICh3aXRoQ3JlZGVudGlhbHMpIHtcbiAgICAgICAgYWpheC53aXRoQ3JlZGVudGlhbHMgPSB0cnVlXG4gICAgICB9XG4gICAgICBhamF4LnNlbmQocGF5bG9hZClcbiAgICB9KVxuICB9XG59XG5cbmZ1bmN0aW9uIGdlbkFkYXB0ZXIoKSB7XG4gIGNvbnN0IGFkYXB0ZXI6IFNES0FkYXB0ZXJJbnRlcmZhY2UgPSB7XG4gICAgcm9vdDogd2luZG93LFxuICAgIHJlcUNsYXNzOiBXZWJSZXF1ZXN0LFxuICAgIHdzQ2xhc3M6IFdlYlNvY2tldCxcbiAgICBsb2NhbFN0b3JhZ2UsXG4gIH1cbiAgcmV0dXJuIGFkYXB0ZXJcbn1cblxuZXhwb3J0IHsgZ2VuQWRhcHRlciwgV2ViUmVxdWVzdCB9XG4iXX0=
271
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2ViLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FkYXB0ZXJzL3BsYXRmb3Jtcy93ZWIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxrRUFTcUM7QUFDckMsd0NBQXNFO0FBQ3RFLGlEQUFvRDtBQUtwRDtJQUF5Qiw4QkFBa0I7SUFPekMsb0JBQVksTUFBc0I7UUFBbEMsWUFDRSxpQkFBTyxTQUtSO1FBSlMsSUFBQSxPQUFPLEdBQW9DLE1BQU0sUUFBMUMsRUFBRSxVQUFVLEdBQXdCLE1BQU0sV0FBOUIsRUFBRSxpQkFBaUIsR0FBSyxNQUFNLGtCQUFYLENBQVc7UUFDekQsS0FBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLElBQUksQ0FBQyxDQUFBO1FBQzNCLEtBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxJQUFJLE1BQU0sQ0FBQTtRQUN0QyxLQUFJLENBQUMsaUJBQWlCLEdBQUcsaUJBQWlCLElBQUksQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxVQUFVLENBQUMsQ0FBQTs7SUFDckYsQ0FBQztJQUNNLHdCQUFHLEdBQVYsVUFBVyxPQUF3QjtRQUNqQyxPQUFPLElBQUksQ0FBQyxPQUFPLHVCQUVaLE9BQU8sS0FDVixNQUFNLEVBQUUsS0FBSyxLQUVmLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQ3ZDLENBQUE7SUFDSCxDQUFDO0lBQ00seUJBQUksR0FBWCxVQUFZLE9BQXdCO1FBQ2xDLE9BQU8sSUFBSSxDQUFDLE9BQU8sdUJBRVosT0FBTyxLQUNWLE1BQU0sRUFBRSxNQUFNLEtBRWhCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQ3hDLENBQUE7SUFDSCxDQUFDO0lBQ00sd0JBQUcsR0FBVixVQUFXLE9B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QUMsT0FBTyxDQUFDLENBQUE7YUFDakI7WUFFRCxJQUFJLE9BQU8sQ0FBQTtZQUNYLElBQUksSUFBQSxpQkFBVSxFQUFDLElBQUksQ0FBQyxFQUFFO2dCQUVwQixPQUFPLEdBQUcsSUFBSSxDQUFBO2FBQ2Y7aUJBQU0sSUFBSSxPQUFPLENBQUMsY0FBYyxDQUFDLEtBQUssbUNBQW1DLEVBQUU7Z0JBQzFFLE9BQU8sR0FBRyxJQUFBLG9CQUFhLEVBQUMsSUFBSSxDQUFDLENBQUE7YUFDOUI7aUJBQU0sSUFBSSxJQUFJLEVBQUU7Z0JBQ2YsT0FBTyxHQUFHLElBQUksQ0FBQTthQUNmO2lCQUFNO2dCQUVMLE9BQU8sR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQTthQUNsRDtZQUVELElBQUksZUFBZSxFQUFFO2dCQUNuQixJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQTthQUM1QjtZQUNELElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUE7UUFDcEIsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO0lBQ0gsaUJBQUM7QUFBRCxDQUFDLEFBM01ELENBQXlCLHNDQUFrQixHQTJNMUM7QUFZb0IsZ0NBQVU7QUFWL0IsU0FBUyxVQUFVO0lBQ2pCLElBQU0sT0FBTyxHQUF3QjtRQUNuQyxJQUFJLEVBQUUsTUFBTTtRQUNaLFFBQVEsRUFBRSxVQUFVO1FBQ3BCLE9BQU8sRUFBRSxTQUFTO1FBQ2xCLFlBQVksY0FBQTtLQUNiLENBQUE7SUFDRCxPQUFPLE9BQU8sQ0FBQTtBQUNoQixDQUFDO0FBRVEsZ0NBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBTREtBZGFwdGVySW50ZXJmYWNlLFxuICBBYnN0cmFjdFNES1JlcXVlc3QsXG4gIElSZXF1ZXN0T3B0aW9ucyxcbiAgUmVzcG9uc2VPYmplY3QsXG4gIElVcGxvYWRSZXF1ZXN0T3B0aW9ucyxcbiAgSVJlcXVlc3RDb25maWcsXG4gIElSZXF1ZXN0TWV0aG9kLFxuICBJRmV0Y2hPcHRpb25zLFxufSBmcm9tICdAY2xvdWRiYXNlL2FkYXB0ZXItaW50ZXJmYWNlJ1xuaW1wb3J0IHsgaXNGb3JtRGF0YSwgZm9ybWF0VXJsLCB0b1F1ZXJ5U3RyaW5nIH0gZnJvbSAnLi4vLi4vbGlicy91dGlsJ1xuaW1wb3J0IHsgZ2V0UHJvdG9jb2wgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvY29tbW9uJ1xuXG4vKipcbiAqIEBjbGFzcyBXZWJSZXF1ZXN0XG4gKi9cbmNsYXNzIFdlYlJlcXVlc3QgZXh0ZW5kcyBBYnN0cmFjdFNES1JlcXVlc3Qge1xuICAvLyDpu5jorqTkuI3pmZDotoXml7ZcbiAgcHJpdmF0ZSByZWFkb25seSB0aW1lb3V0OiBudW1iZXJcbiAgLy8g6LaF5pe25o+Q56S65paH5qGIXG4gIHByaXZhdGUgcmVhZG9ubHkgdGltZW91dE1zZzogc3RyaW5nXG4gIC8vIOi2heaXtuWPl+mZkOivt+axguexu+Wei++8jOm7mOiupOaJgOacieivt+axguWdh+WPl+mZkFxuICBwcml2YXRlIHJlYWRvbmx5IHJlc3RyaWN0ZWRNZXRob2RzOiBBcnJheTxJUmVxdWVzdE1ldGhvZD5cbiAgY29uc3RydWN0b3IoY29uZmlnOiBJUmVxdWVzdENvbmZpZykge1xuICAgIHN1cGVyKClcbiAgICBjb25zdCB7IHRpbWVvdXQsIHRpbWVvdXRNc2csIHJlc3RyaWN0ZWRNZXRob2RzIH0gPSBjb25maWdcbiAgICB0aGlzLnRpbWVvdXQgPSB0aW1lb3V0IHx8IDBcbiAgICB0aGlzLnRpbWVvdXRNc2cgPSB0aW1lb3V0TXNnIHx8ICfor7fmsYLotoXml7YnXG4gICAgdGhpcy5yZXN0cmljdGVkTWV0aG9kcyA9IHJlc3RyaWN0ZWRNZXRob2RzIHx8IFsnZ2V0JywgJ3Bvc3QnLCAndXBsb2FkJywgJ2Rvd25sb2FkJ11cbiAgfVxuICBwdWJsaWMgZ2V0KG9wdGlvbnM6IElSZXF1ZXN0T3B0aW9ucyk6IFByb21pc2U8UmVzcG9uc2VPYmplY3Q+IHtcbiAgICByZXR1cm4gdGhpcy5yZXF1ZXN0KFxuICAgICAge1xuICAgICAgICAuLi5vcHRpb25zLFxuICAgICAgICBtZXRob2Q6ICdnZXQnLFxuICAgICAgfSxcbiAgICAgIHRoaXMucmVzdHJpY3RlZE1ldGhvZHMuaW5jbHVkZXMoJ2dldCcpLFxuICAgIClcbiAgfVxuICBwdWJsaWMgcG9zdChvcHRpb25zOiBJUmVxdWVzdE9wdGlvbnMpOiBQcm9taXNlPFJlc3BvbnNlT2JqZWN0PiB7XG4gICAgcmV0dXJuIHRoaXMucmVxdWVzdChcbiAgICAgIHtcbiAgICAgICAgLi4ub3B0aW9ucyxcbiAgICAgICAgbWV0aG9kOiAncG9zdCcsXG4gICAgICB9LFxuICAgICAgdGhpcy5yZXN0cmljdGVkTWV0aG9kcy5pbmNsdWRlcygncG9zdCcpLFxuICAgIClcbiAgfVxuICBwdWJsaWMgcHV0KG9wdGlvbnM6IElSZXF1ZXN0T3B0aW9ucyk6IFByb21pc2U8UmVzcG9uc2VPYmplY3Q+IHtcbiAgICByZXR1cm4gdGhpcy5yZXF1ZXN0KHtcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICBtZXRob2Q6ICdwdXQnLFxuICAgIH0pXG4gIH1cbiAgcHVibGljIHVwbG9hZChvcHRpb25zOiBJVXBsb2FkUmVxdWVzdE9wdGlvbnMpOiBQcm9taXNlPFJlc3BvbnNlT2JqZWN0PiB7XG4gICAgY29uc3QgeyBkYXRhLCBmaWxlLCBuYW1lLCBtZXRob2QsIGhlYWRlcnMgPSB7fSB9ID0gb3B0aW9uc1xuICAgIGNvbnN0IHJlcU1ldGhvZCA9IHsgcG9zdDogJ3Bvc3QnLCBwdXQ6ICdwdXQnIH1bbWV0aG9kPy50b0xvd2VyQ2FzZSgpXSB8fCAncHV0J1xuICAgIC8vIOS4iuS8oOaWueW8j+S4unBvc3Tml7bvvIzpnIDovazmjaLkuLpGb3JtRGF0YVxuICAgIGNvbnN0IGZvcm1EYXRhID0gbmV3IEZvcm1EYXRhKClcbiAgICBpZiAocmVxTWV0aG9kID09PSAncG9zdCcpIHtcbiAgICAgIE9iamVjdC5rZXlzKGRhdGEpLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgICBmb3JtRGF0YS5hcHBlbmQoa2V5LCBkYXRhW2tleV0pXG4gICAgICB9KVxuICAgICAgZm9ybURhdGEuYXBwZW5kKCdrZXknLCBuYW1lKVxuICAgICAgZm9ybURhdGEuYXBwZW5kKCdmaWxlJywgZmlsZSlcbiAgICAgIHJldHVybiB0aGlzLnJlcXVlc3QoXG4gICAgICAgIHtcbiAgICAgICAgICAuLi5vcHRpb25zLFxuICAgICAgICAgIGRhdGE6IGZvcm1EYXRhLFxuICAgICAgICAgIG1ldGhvZDogcmVxTWV0aG9kLFxuICAgICAgICB9LFxuICAgICAgICB0aGlzLnJlc3RyaWN0ZWRNZXRob2RzLmluY2x1ZGVzKCd1cGxvYWQnKSxcbiAgICAgIClcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMucmVxdWVzdChcbiAgICAgIHtcbiAgICAgICAgLi4ub3B0aW9ucyxcbiAgICAgICAgbWV0aG9kOiAncHV0JyxcbiAgICAgICAgaGVhZGVycyxcbiAgICAgICAgYm9keTogZmlsZSxcbiAgICAgIH0sXG4gICAgICB0aGlzLnJlc3RyaWN0ZWRNZXRob2RzLmluY2x1ZGVzKCd1cGxvYWQnKSxcbiAgICApXG4gIH1cbiAgcHVibGljIGFzeW5jIGRvd25sb2FkKG9wdGlvbnM6IElSZXF1ZXN0T3B0aW9ucyk6IFByb21pc2U8YW55PiB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHsgZGF0YSB9ID0gYXdhaXQgdGhpcy5nZXQoe1xuICAgICAgICAuLi5vcHRpb25zLFxuICAgICAgICBoZWFkZXJzOiB7fSwgLy8g5LiL6L296LWE5rqQ6K+35rGC5LiN57uP6L+Hc2VydmljZe+8jGhlYWRlcua4heepulxuICAgICAgICByZXNwb25zZVR5cGU6ICdibG9iJyxcbiAgICAgIH0pXG4gICAgICBjb25zdCB1cmwgPSB3aW5kb3cuVVJMLmNyZWF0ZU9iamVjdFVSTChuZXcgQmxvYihbZGF0YV0pKVxuICAgICAgY29uc3QgZmlsZU5hbWUgPSBkZWNvZGVVUklDb21wb25lbnQobmV3IFVSTChvcHRpb25zLnVybCkucGF0aG5hbWUuc3BsaXQoJy8nKS5wb3AoKSB8fCAnJylcbiAgICAgIGNvbnN0IGxpbmsgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJylcblxuICAgICAgbGluay5ocmVmID0gdXJsXG4gICAgICBsaW5rLnNldEF0dHJpYnV0ZSgnZG93bmxvYWQnLCBmaWxlTmFtZSlcbiAgICAgIGxpbmsuc3R5bGUuZGlzcGxheSA9ICdub25lJ1xuXG4gICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGxpbmspXG4gICAgICBsaW5rLmNsaWNrKClcbiAgICAgIC8vIOWbnuaUtuWGheWtmFxuICAgICAgd2luZG93LlVSTC5yZXZva2VPYmplY3RVUkwodXJsKVxuICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChsaW5rKVxuICAgIH0gY2F0Y2ggKGUpIHt9XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7XG4gICAgICByZXNvbHZlKHtcbiAgICAgICAgc3RhdHVzQ29kZTogMjAwLFxuICAgICAgICB0ZW1wRmlsZVBhdGg6IG9wdGlvbnMudXJsLFxuICAgICAgfSlcbiAgICB9KVxuICB9XG4gIGFzeW5jIGZldGNoKG9wdGlvbnM6IElGZXRjaE9wdGlvbnMpOiBQcm9taXNlPFJlc3BvbnNlT2JqZWN0PiB7XG4gICAgY29uc3QgYWJvcnRDb250cm9sbGVyID0gbmV3IEFib3J0Q29udHJvbGxlcigpXG4gICAgY29uc3QgeyB1cmwsIGVuYWJsZUFib3J0ID0gZmFsc2UsIHN0cmVhbSA9IGZhbHNlLCBzaWduYWwgfSA9IG9wdGlvbnNcblxuICAgIGlmIChzaWduYWwpIHtcbiAgICAgIGlmIChzaWduYWwuYWJvcnRlZCkgYWJvcnRDb250cm9sbGVyLmFib3J0KClcbiAgICAgIHNpZ25hbC5hZGRFdmVudExpc3RlbmVyKCdhYm9ydCcsICgpID0+IGFib3J0Q29udHJvbGxlci5hYm9ydCgpKVxuICAgIH1cblxuICAgIGxldCB0aW1lciA9IG51bGxcbiAgICBpZiAoZW5hYmxlQWJvcnQgJiYgdGhpcy50aW1lb3V0KSB7XG4gICAgICB0aW1lciA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICBjb25zb2xlLndhcm4odGhpcy50aW1lb3V0TXNnKVxuICAgICAgICBhYm9ydENvbnRyb2xsZXIuYWJvcnQobmV3IEVycm9yKHRoaXMudGltZW91dE1zZykpXG4gICAgICB9LCB0aGlzLnRpbWVvdXQpXG4gICAgfVxuXG4gICAgY29uc3QgcmVzID0gYXdhaXQgZmV0Y2godXJsLCB7XG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgc2lnbmFsOiBhYm9ydENvbnRyb2xsZXIuc2lnbmFsLFxuICAgIH0pXG4gICAgICAudGhlbihhc3luYyAocmVzcG9uc2UpID0+IHtcbiAgICAgICAgY2xlYXJUaW1lb3V0KHRpbWVyKVxuICAgICAgICAvLyA0MDQg562J562J5Lmf5Lya6L+bIHJlc29sdmXvvIzmiYDku6XopoHlho3pgJrov4cgb2sg5Yik5patXG4gICAgICAgIHJldHVybiByZXNwb25zZS5vayA/IHJlc3BvbnNlIDogUHJvbWlzZS5yZWplY3QoYXdhaXQgcmVzcG9uc2UuanNvbigpKVxuICAgICAgfSlcbiAgICAgIC5jYXRjaCgoeCkgPT4ge1xuICAgICAgICBjbGVhclRpbWVvdXQodGltZXIpXG4gICAgICAgIHJldHVybiBQcm9taXNlLnJlamVjdCh4KVxuICAgICAgfSlcblxuICAgIHJldHVybiB7XG4gICAgICBkYXRhOiBzdHJlYW0gPyByZXMuYm9keSA6IHJlcy5qc29uKCksXG4gICAgICBzdGF0dXNDb2RlOiByZXMuc3RhdHVzLFxuICAgICAgaGVhZGVyOiByZXMuaGVhZGVycyxcbiAgICB9XG4gIH1cbiAgLyoqXG4gICAqIEBwYXJhbSB7SVJlcXVlc3RPcHRpb25zfSBvcHRpb25zXG4gICAqIEBwYXJhbSB7Ym9vbGVhbn0gZW5hYmxlQWJvcnQg5piv5ZCm6LaF5pe25Lit5pat6K+35rGCXG4gICAqL1xuICBwcm90ZWN0ZWQgcmVxdWVzdChvcHRpb25zOiBJUmVxdWVzdE9wdGlvbnMsIGVuYWJsZUFib3J0ID0gZmFsc2UpOiBQcm9taXNlPFJlc3BvbnNlT2JqZWN0PiB7XG4gICAgY29uc3QgbWV0aG9kID0gU3RyaW5nKG9wdGlvbnMubWV0aG9kKS50b0xvd2VyQ2FzZSgpIHx8ICdnZXQnXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7XG4gICAgICBjb25zdCB7IHVybCwgaGVhZGVycyA9IHt9LCBkYXRhLCByZXNwb25zZVR5cGUsIHdpdGhDcmVkZW50aWFscywgYm9keSwgb25VcGxvYWRQcm9ncmVzcyB9ID0gb3B0aW9uc1xuICAgICAgY29uc3QgcmVhbFVybCA9IGZvcm1hdFVybChnZXRQcm90b2NvbCgpLCB1cmwsIG1ldGhvZCA9PT0gJ2dldCcgPyBkYXRhIDoge30pXG4gICAgICBjb25zdCBhamF4ID0gbmV3IFhNTEh0dHBSZXF1ZXN0KClcbiAgICAgIGFqYXgub3BlbihtZXRob2QsIHJlYWxVcmwpXG4gICAgICByZXNwb25zZVR5cGUgJiYgKGFqYXgucmVzcG9uc2VUeXBlID0gcmVzcG9uc2VUeXBlKVxuICAgICAgT2JqZWN0LmtleXMoaGVhZGVycykuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgICAgIGFqYXguc2V0UmVxdWVzdEhlYWRlcihrZXksIGhlYWRlcnNba2V5XSlcbiAgICAgIH0pXG4gICAgICBsZXQgdGltZXJcbiAgICAgIGlmIChvblVwbG9hZFByb2dyZXNzKSB7XG4gICAgICAgIGFqYXgudXBsb2FkLmFkZEV2ZW50TGlzdGVuZXIoJ3Byb2dyZXNzJywgb25VcGxvYWRQcm9ncmVzcylcbiAgICAgIH1cbiAgICAgIGFqYXgub25yZWFkeXN0YXRlY2hhbmdlID0gKCkgPT4ge1xuICAgICAgICBjb25zdCByZXN1bHQ6IFJlc3BvbnNlT2JqZWN0ID0ge31cbiAgICAgICAgaWYgKGFqYXgucmVhZHlTdGF0ZSA9PT0gNCkge1xuICAgICAgICAgIGNvbnN0IGhlYWRlcnMgPSBhamF4LmdldEFsbFJlc3BvbnNlSGVhZGVycygpXG4gICAgICAgICAgY29uc3QgYXJyID0gaGVhZGVycy50cmltKCkuc3BsaXQoL1tcXHJcXG5dKy8pXG4gICAgICAgICAgLy8gQ3JlYXRlIGEgbWFwIG9mIGhlYWRlciBuYW1lcyB0byB2YWx1ZXNcbiAgICAgICAgICBjb25zdCBoZWFkZXJNYXAgPSB7fVxuICAgICAgICAgIGFyci5mb3JFYWNoKChsaW5lKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBwYXJ0cyA9IGxpbmUuc3BsaXQoJzogJylcbiAgICAgICAgICAgIGNvbnN0IGhlYWRlciA9IHBhcnRzLnNoaWZ0KCkudG9Mb3dlckNhc2UoKVxuICAgICAgICAgICAgY29uc3QgdmFsdWUgPSBwYXJ0cy5qb2luKCc6ICcpXG4gICAgICAgICAgICBoZWFkZXJNYXBbaGVhZGVyXSA9IHZhbHVlXG4gICAgICAgICAgfSlcbiAgICAgICAgICByZXN1bHQuaGVhZGVyID0gaGVhZGVyTWFwXG4gICAgICAgICAgcmVzdWx0LnN0YXR1c0NvZGUgPSBhamF4LnN0YXR1c1xuICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAvLyDkuIrkvKBwb3N06K+35rGC6L+U5Zue5pWw5o2u5qC85byP5Li6eG1s77yM5q2k5aSE5a656ZSZXG4gICAgICAgICAgICByZXN1bHQuZGF0YSA9IHJlc3BvbnNlVHlwZSA9PT0gJ2Jsb2InID8gYWpheC5yZXNwb25zZSA6IEpTT04ucGFyc2UoYWpheC5yZXNwb25zZVRleHQpXG4gICAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgcmVzdWx0LmRhdGEgPSByZXNwb25zZVR5cGUgPT09ICdibG9iJyA/IGFqYXgucmVzcG9uc2UgOiBhamF4LnJlc3BvbnNlVGV4dFxuICAgICAgICAgIH1cbiAgICAgICAgICBjbGVhclRpbWVvdXQodGltZXIpXG4gICAgICAgICAgcmVzb2x2ZShyZXN1bHQpXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGlmIChlbmFibGVBYm9ydCAmJiB0aGlzLnRpbWVvdXQpIHtcbiAgICAgICAgdGltZXIgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICBjb25zb2xlLndhcm4odGhpcy50aW1lb3V0TXNnKVxuICAgICAgICAgIGFqYXguYWJvcnQoKVxuICAgICAgICB9LCB0aGlzLnRpbWVvdXQpXG4gICAgICB9XG4gICAgICAvLyDlpITnkIYgcGF5bG9hZFxuICAgICAgbGV0IHBheWxvYWRcbiAgICAgIGlmIChpc0Zvcm1EYXRhKGRhdGEpKSB7XG4gICAgICAgIC8vIEZvcm1EYXRh77yM5LiN5aSE55CGXG4gICAgICAgIHBheWxvYWQgPSBkYXRhXG4gICAgICB9IGVsc2UgaWYgKGhlYWRlcnNbJ2NvbnRlbnQtdHlwZSddID09PSAnYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkJykge1xuICAgICAgICBwYXlsb2FkID0gdG9RdWVyeVN0cmluZyhkYXRhKVxuICAgICAgfSBlbHNlIGlmIChib2R5KSB7XG4gICAgICAgIHBheWxvYWQgPSBib2R5XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyDlhbblroPmg4XlhrVcbiAgICAgICAgcGF5bG9hZCA9IGRhdGEgPyBKU09OLnN0cmluZ2lmeShkYXRhKSA6IHVuZGVmaW5lZFxuICAgICAgfVxuXG4gICAgICBpZiAod2l0aENyZWRlbnRpYWxzKSB7XG4gICAgICAgIGFqYXgud2l0aENyZWRlbnRpYWxzID0gdHJ1ZVxuICAgICAgfVxuICAgICAgYWpheC5zZW5kKHBheWxvYWQpXG4gICAgfSlcbiAgfVxufVxuXG5mdW5jdGlvbiBnZW5BZGFwdGVyKCkge1xuICBjb25zdCBhZGFwdGVyOiBTREtBZGFwdGVySW50ZXJmYWNlID0ge1xuICAgIHJvb3Q6IHdpbmRvdyxcbiAgICByZXFDbGFzczogV2ViUmVxdWVzdCxcbiAgICB3c0NsYXNzOiBXZWJTb2NrZXQsXG4gICAgbG9jYWxTdG9yYWdlLFxuICB9XG4gIHJldHVybiBhZGFwdGVyXG59XG5cbmV4cG9ydCB7IGdlbkFkYXB0ZXIsIFdlYlJlcXVlc3QgfVxuIl19
@@ -4,8 +4,9 @@ import * as cache from './libs/cache';
4
4
  import * as events from './libs/events';
5
5
  import * as utils from './libs/util';
6
6
  import * as helpers from './helpers';
7
+ import AbortController from './libs/abortController';
7
8
  import jwtDecode from 'jwt-decode';
8
9
  declare const jwt: {
9
10
  decode: typeof jwtDecode;
10
11
  };
11
- export { constants, adapters, cache, events, utils, helpers, jwt, };
12
+ export { constants, adapters, cache, events, utils, helpers, jwt, AbortController };
package/dist/cjs/index.js CHANGED
@@ -26,7 +26,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
26
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.jwt = exports.helpers = exports.utils = exports.events = exports.cache = exports.adapters = exports.constants = void 0;
29
+ exports.AbortController = exports.jwt = exports.helpers = exports.utils = exports.events = exports.cache = exports.adapters = exports.constants = void 0;
30
30
  var constants = __importStar(require("./constants"));
31
31
  exports.constants = constants;
32
32
  var adapters = __importStar(require("./adapters"));
@@ -39,9 +39,11 @@ var utils = __importStar(require("./libs/util"));
39
39
  exports.utils = utils;
40
40
  var helpers = __importStar(require("./helpers"));
41
41
  exports.helpers = helpers;
42
+ var abortController_1 = __importDefault(require("./libs/abortController"));
43
+ exports.AbortController = abortController_1.default;
42
44
  var jwt_decode_1 = __importDefault(require("jwt-decode"));
43
45
  var jwt = {
44
46
  decode: jwt_decode_1.default,
45
47
  };
46
48
  exports.jwt = jwt;
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxxREFBd0M7QUFjdEMsOEJBQVM7QUFiWCxtREFBc0M7QUFjcEMsNEJBQVE7QUFiVixrREFBcUM7QUFjbkMsc0JBQUs7QUFiUCxvREFBdUM7QUFjckMsd0JBQU07QUFiUixpREFBb0M7QUFjbEMsc0JBQUs7QUFiUCxpREFBb0M7QUFjbEMsMEJBQU87QUFaVCwwREFBa0M7QUFFbEMsSUFBTSxHQUFHLEdBQUc7SUFDVixNQUFNLEVBQUUsb0JBQVM7Q0FDbEIsQ0FBQTtBQVNDLGtCQUFHIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgY29uc3RhbnRzIGZyb20gJy4vY29uc3RhbnRzJ1xuaW1wb3J0ICogYXMgYWRhcHRlcnMgZnJvbSAnLi9hZGFwdGVycydcbmltcG9ydCAqIGFzIGNhY2hlIGZyb20gJy4vbGlicy9jYWNoZSdcbmltcG9ydCAqIGFzIGV2ZW50cyBmcm9tICcuL2xpYnMvZXZlbnRzJ1xuaW1wb3J0ICogYXMgdXRpbHMgZnJvbSAnLi9saWJzL3V0aWwnXG5pbXBvcnQgKiBhcyBoZWxwZXJzIGZyb20gJy4vaGVscGVycydcblxuaW1wb3J0IGp3dERlY29kZSBmcm9tICdqd3QtZGVjb2RlJ1xuXG5jb25zdCBqd3QgPSB7XG4gIGRlY29kZTogand0RGVjb2RlLFxufVxuXG5leHBvcnQge1xuICBjb25zdGFudHMsXG4gIGFkYXB0ZXJzLFxuICBjYWNoZSxcbiAgZXZlbnRzLFxuICB1dGlscyxcbiAgaGVscGVycyxcbiAgand0LFxufVxuIl19
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxxREFBd0M7QUFhL0IsOEJBQVM7QUFabEIsbURBQXNDO0FBWWxCLDRCQUFRO0FBWDVCLGtEQUFxQztBQVdQLHNCQUFLO0FBVm5DLG9EQUF1QztBQVVGLHdCQUFNO0FBVDNDLGlEQUFvQztBQVNTLHNCQUFLO0FBUmxELGlEQUFvQztBQVFnQiwwQkFBTztBQVAzRCwyRUFBb0Q7QUFPYywwQkFQM0QseUJBQWUsQ0FPMkQ7QUFOakYsMERBQWtDO0FBRWxDLElBQU0sR0FBRyxHQUFHO0lBQ1YsTUFBTSxFQUFFLG9CQUFTO0NBQ2xCLENBQUE7QUFFNEQsa0JBQUciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBjb25zdGFudHMgZnJvbSAnLi9jb25zdGFudHMnXG5pbXBvcnQgKiBhcyBhZGFwdGVycyBmcm9tICcuL2FkYXB0ZXJzJ1xuaW1wb3J0ICogYXMgY2FjaGUgZnJvbSAnLi9saWJzL2NhY2hlJ1xuaW1wb3J0ICogYXMgZXZlbnRzIGZyb20gJy4vbGlicy9ldmVudHMnXG5pbXBvcnQgKiBhcyB1dGlscyBmcm9tICcuL2xpYnMvdXRpbCdcbmltcG9ydCAqIGFzIGhlbHBlcnMgZnJvbSAnLi9oZWxwZXJzJ1xuaW1wb3J0IEFib3J0Q29udHJvbGxlciBmcm9tICcuL2xpYnMvYWJvcnRDb250cm9sbGVyJ1xuaW1wb3J0IGp3dERlY29kZSBmcm9tICdqd3QtZGVjb2RlJ1xuXG5jb25zdCBqd3QgPSB7XG4gIGRlY29kZTogand0RGVjb2RlLFxufVxuXG5leHBvcnQgeyBjb25zdGFudHMsIGFkYXB0ZXJzLCBjYWNoZSwgZXZlbnRzLCB1dGlscywgaGVscGVycywgand0LCBBYm9ydENvbnRyb2xsZXIgfVxuIl19
@@ -0,0 +1,9 @@
1
+ export default class AbortController {
2
+ listeners: Array<CallableFunction>;
3
+ signal: {
4
+ aborted: boolean;
5
+ addEventListener: (e: string, f: CallableFunction) => void;
6
+ };
7
+ constructor();
8
+ abort(): void;
9
+ }
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var AbortController = (function () {
4
+ function AbortController() {
5
+ var _this = this;
6
+ this.listeners = [];
7
+ this.signal = {
8
+ aborted: false,
9
+ addEventListener: function (e, f) {
10
+ if (e === 'abort') {
11
+ _this.listeners.push(f);
12
+ }
13
+ },
14
+ };
15
+ }
16
+ AbortController.prototype.abort = function () {
17
+ if (this.signal.aborted)
18
+ return;
19
+ this.signal.aborted = true;
20
+ this.listeners.forEach(function (f) { return f(); });
21
+ };
22
+ return AbortController;
23
+ }());
24
+ exports.default = AbortController;
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJvcnRDb250cm9sbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYnMvYWJvcnRDb250cm9sbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUE7SUFVRTtRQUFBLGlCQUFnQjtRQVRoQixjQUFTLEdBQTRCLEVBQUUsQ0FBQTtRQUN2QyxXQUFNLEdBQUc7WUFDUCxPQUFPLEVBQUUsS0FBSztZQUNkLGdCQUFnQixFQUFFLFVBQUMsQ0FBUyxFQUFFLENBQW1CO2dCQUMvQyxJQUFJLENBQUMsS0FBSyxPQUFPLEVBQUU7b0JBQ2pCLEtBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFBO2lCQUN2QjtZQUNILENBQUM7U0FDRixDQUFBO0lBQ2MsQ0FBQztJQUVoQiwrQkFBSyxHQUFMO1FBQ0UsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU87WUFBRSxPQUFNO1FBRS9CLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQTtRQUMxQixJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxVQUFBLENBQUMsSUFBSSxPQUFBLENBQUMsRUFBRSxFQUFILENBQUcsQ0FBQyxDQUFBO0lBQ2xDLENBQUM7SUFDSCxzQkFBQztBQUFELENBQUMsQUFsQkQsSUFrQkMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZGVmYXVsdCBjbGFzcyBBYm9ydENvbnRyb2xsZXIge1xuICBsaXN0ZW5lcnM6IEFycmF5PENhbGxhYmxlRnVuY3Rpb24+ID0gW11cbiAgc2lnbmFsID0ge1xuICAgIGFib3J0ZWQ6IGZhbHNlLFxuICAgIGFkZEV2ZW50TGlzdGVuZXI6IChlOiBzdHJpbmcsIGY6IENhbGxhYmxlRnVuY3Rpb24pID0+IHtcbiAgICAgIGlmIChlID09PSAnYWJvcnQnKSB7XG4gICAgICAgIHRoaXMubGlzdGVuZXJzLnB1c2goZilcbiAgICAgIH1cbiAgICB9LFxuICB9XG4gIGNvbnN0cnVjdG9yKCkge31cblxuICBhYm9ydCgpIHtcbiAgICBpZiAodGhpcy5zaWduYWwuYWJvcnRlZCkgcmV0dXJuXG5cbiAgICB0aGlzLnNpZ25hbC5hYm9ydGVkID0gdHJ1ZVxuICAgIHRoaXMubGlzdGVuZXJzLmZvckVhY2goZiA9PiBmKCkpXG4gIH1cbn1cbiJdfQ==
@@ -132,13 +132,18 @@ var WebRequest = (function (_super) {
132
132
  };
133
133
  WebRequest.prototype.fetch = function (options) {
134
134
  return __awaiter(this, void 0, void 0, function () {
135
- var url, _a, enableAbort, _b, stream, abortController, timer, res;
135
+ var abortController, url, _a, enableAbort, _b, stream, signal, timer, res;
136
136
  var _this = this;
137
137
  return __generator(this, function (_c) {
138
138
  switch (_c.label) {
139
139
  case 0:
140
- url = options.url, _a = options.enableAbort, enableAbort = _a === void 0 ? false : _a, _b = options.stream, stream = _b === void 0 ? false : _b;
141
140
  abortController = new AbortController();
141
+ url = options.url, _a = options.enableAbort, enableAbort = _a === void 0 ? false : _a, _b = options.stream, stream = _b === void 0 ? false : _b, signal = options.signal;
142
+ if (signal) {
143
+ if (signal.aborted)
144
+ abortController.abort();
145
+ signal.addEventListener('abort', function () { return abortController.abort(); });
146
+ }
142
147
  timer = null;
143
148
  if (enableAbort && this.timeout) {
144
149
  timer = setTimeout(function () {
@@ -259,4 +264,4 @@ function genAdapter() {
259
264
  return adapter;
260
265
  }
261
266
  export { genAdapter, WebRequest };
262
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2ViLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FkYXB0ZXJzL3BsYXRmb3Jtcy93ZWIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxPQUFPLEVBRUwsa0JBQWtCLEdBT25CLE1BQU0sOEJBQThCLENBQUE7QUFDckMsT0FBTyxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsYUFBYSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDdEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHdCQUF3QixDQUFBO0FBS3BEO0lBQXlCLDhCQUFrQjtJQU96QyxvQkFBWSxNQUFzQjtRQUFsQyxZQUNFLGlCQUFPLFNBS1I7UUFKUyxJQUFBLE9BQU8sR0FBb0MsTUFBTSxRQUExQyxFQUFFLFVBQVUsR0FBd0IsTUFBTSxXQUE5QixFQUFFLGlCQUFpQixHQUFLLE1BQU0sa0JBQVgsQ0FBVztRQUN6RCxLQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sSUFBSSxDQUFDLENBQUE7UUFDM0IsS0FBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLElBQUksTUFBTSxDQUFBO1FBQ3RDLEtBQUksQ0FBQyxpQkFBaUIsR0FBRyxpQkFBaUIsSUFBSSxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLFVBQVUsQ0FBQyxDQUFBOztJQUNyRixDQUFDO0lBQ00sd0JBQUcsR0FBVixVQUFXLE9BQXdCO1FBQ2pDLE9BQU8sSUFBSSxDQUFDLE9BQU8sdUJBRVosT0FBTyxLQUNWLE1BQU0sRUFBRSxLQUFLLEtBRWYsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FDdkMsQ0FBQTtJQUNILENBQUM7SUFDTSx5QkFBSSxHQUFYLFVBQVksT0FBd0I7UUFDbEMsT0FBTyxJQUFJLENBQUMsT0FBTyx1QkFFWixPQUFPLEtB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QTthQUNmO2lCQUFNLElBQUksT0FBTyxDQUFDLGNBQWMsQ0FBQyxLQUFLLG1DQUFtQyxFQUFFO2dCQUMxRSxPQUFPLEdBQUcsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFBO2FBQzlCO2lCQUFNLElBQUksSUFBSSxFQUFFO2dCQUNmLE9BQU8sR0FBRyxJQUFJLENBQUE7YUFDZjtpQkFBTTtnQkFFTCxPQUFPLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUE7YUFDbEQ7WUFFRCxJQUFJLGVBQWUsRUFBRTtnQkFDbkIsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUE7YUFDNUI7WUFDRCxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFBO1FBQ3BCLENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUNILGlCQUFDO0FBQUQsQ0FBQyxBQXZNRCxDQUF5QixrQkFBa0IsR0F1TTFDO0FBRUQsU0FBUyxVQUFVO0lBQ2pCLElBQU0sT0FBTyxHQUF3QjtRQUNuQyxJQUFJLEVBQUUsTUFBTTtRQUNaLFFBQVEsRUFBRSxVQUFVO1FBQ3BCLE9BQU8sRUFBRSxTQUFTO1FBQ2xCLFlBQVksY0FBQTtLQUNiLENBQUE7SUFDRCxPQUFPLE9BQU8sQ0FBQTtBQUNoQixDQUFDO0FBRUQsT0FBTyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIFNES0FkYXB0ZXJJbnRlcmZhY2UsXG4gIEFic3RyYWN0U0RLUmVxdWVzdCxcbiAgSVJlcXVlc3RPcHRpb25zLFxuICBSZXNwb25zZU9iamVjdCxcbiAgSVVwbG9hZFJlcXVlc3RPcHRpb25zLFxuICBJUmVxdWVzdENvbmZpZyxcbiAgSVJlcXVlc3RNZXRob2QsXG4gIElGZXRjaE9wdGlvbnMsXG59IGZyb20gJ0BjbG91ZGJhc2UvYWRhcHRlci1pbnRlcmZhY2UnXG5pbXBvcnQgeyBpc0Zvcm1EYXRhLCBmb3JtYXRVcmwsIHRvUXVlcnlTdHJpbmcgfSBmcm9tICcuLi8uLi9saWJzL3V0aWwnXG5pbXBvcnQgeyBnZXRQcm90b2NvbCB9IGZyb20gJy4uLy4uL2NvbnN0YW50cy9jb21tb24nXG5cbi8qKlxuICogQGNsYXNzIFdlYlJlcXVlc3RcbiAqL1xuY2xhc3MgV2ViUmVxdWVzdCBleHRlbmRzIEFic3RyYWN0U0RLUmVxdWVzdCB7XG4gIC8vIOm7mOiupOS4jemZkOi2heaXtlxuICBwcml2YXRlIHJlYWRvbmx5IHRpbWVvdXQ6IG51bWJlclxuICAvLyDotoXml7bmj5DnpLrmlofmoYhcbiAgcHJpdmF0ZSByZWFkb25seSB0aW1lb3V0TXNnOiBzdHJpbmdcbiAgLy8g6LaF5pe25Y+X6ZmQ6K+35rGC57G75Z6L77yM6buY6K6k5omA5pyJ6K+35rGC5Z2H5Y+X6ZmQXG4gIHByaXZhdGUgcmVhZG9ubHkgcmVzdHJpY3RlZE1ldGhvZHM6IEFycmF5PElSZXF1ZXN0TWV0aG9kPlxuICBjb25zdHJ1Y3Rvcihjb25maWc6IElSZXF1ZXN0Q29uZmlnKSB7XG4gICAgc3VwZXIoKVxuICAgIGNvbnN0IHsgdGltZW91dCwgdGltZW91dE1zZywgcmVzdHJpY3RlZE1ldGhvZHMgfSA9IGNvbmZpZ1xuICAgIHRoaXMudGltZW91dCA9IHRpbWVvdXQgfHwgMFxuICAgIHRoaXMudGltZW91dE1zZyA9IHRpbWVvdXRNc2cgfHwgJ+ivt+axgui2heaXtidcbiAgICB0aGlzLnJlc3RyaWN0ZWRNZXRob2RzID0gcmVzdHJpY3RlZE1ldGhvZHMgfHwgWydnZXQnLCAncG9zdCcsICd1cGxvYWQnLCAnZG93bmxvYWQnXVxuICB9XG4gIHB1YmxpYyBnZXQob3B0aW9uczogSVJlcXVlc3RPcHRpb25zKTogUHJvbWlzZTxSZXNwb25zZU9iamVjdD4ge1xuICAgIHJldHVybiB0aGlzLnJlcXVlc3QoXG4gICAgICB7XG4gICAgICAgIC4uLm9wdGlvbnMsXG4gICAgICAgIG1ldGhvZDogJ2dldCcsXG4gICAgICB9LFxuICAgICAgdGhpcy5yZXN0cmljdGVkTWV0aG9kcy5pbmNsdWRlcygnZ2V0JyksXG4gICAgKVxuICB9XG4gIHB1YmxpYyBwb3N0KG9wdGlvbnM6IElSZXF1ZXN0T3B0aW9ucyk6IFByb21pc2U8UmVzcG9uc2VPYmplY3Q+IHtcbiAgICByZXR1cm4gdGhpcy5yZXF1ZXN0KFxuICAgICAge1xuICAgICAgICAuLi5vcHRpb25zLFxuICAgICAgICBtZXRob2Q6ICdwb3N0JyxcbiAgICAgIH0sXG4gICAgICB0aGlzLnJlc3RyaWN0ZWRNZXRob2RzLmluY2x1ZGVzKCdwb3N0JyksXG4gICAgKVxuICB9XG4gIHB1YmxpYyBwdXQob3B0aW9uczogSVJlcXVlc3RPcHRpb25zKTogUHJvbWlzZTxSZXNwb25zZU9iamVjdD4ge1xuICAgIHJldHVybiB0aGlzLnJlcXVlc3Qoe1xuICAgICAgLi4ub3B0aW9ucyxcbiAgICAgIG1ldGhvZDogJ3B1dCcsXG4gICAgfSlcbiAgfVxuICBwdWJsaWMgdXBsb2FkKG9wdGlvbnM6IElVcGxvYWRSZXF1ZXN0T3B0aW9ucyk6IFByb21pc2U8UmVzcG9uc2VPYmplY3Q+IHtcbiAgICBjb25zdCB7IGRhdGEsIGZpbGUsIG5hbWUsIG1ldGhvZCwgaGVhZGVycyA9IHt9IH0gPSBvcHRpb25zXG4gICAgY29uc3QgcmVxTWV0aG9kID0geyBwb3N0OiAncG9zdCcsIHB1dDogJ3B1dCcgfVttZXRob2Q/LnRvTG93ZXJDYXNlKCldIHx8ICdwdXQnXG4gICAgLy8g5LiK5Lyg5pa55byP5Li6cG9zdOaXtu+8jOmcgOi9rOaNouS4ukZvcm1EYXRhXG4gICAgY29uc3QgZm9ybURhdGEgPSBuZXcgRm9ybURhdGEoKVxuICAgIGlmIChyZXFNZXRob2QgPT09ICdwb3N0Jykge1xuICAgICAgT2JqZWN0LmtleXMoZGF0YSkuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgICAgIGZvcm1EYXRhLmFwcGVuZChrZXksIGRhdGFba2V5XSlcbiAgICAgIH0pXG4gICAgICBmb3JtRGF0YS5hcHBlbmQoJ2tleScsIG5hbWUpXG4gICAgICBmb3JtRGF0YS5hcHBlbmQoJ2ZpbGUnLCBmaWxlKVxuICAgICAgcmV0dXJuIHRoaXMucmVxdWVzdChcbiAgICAgICAge1xuICAgICAgICAgIC4uLm9wdGlvbnMsXG4gICAgICAgICAgZGF0YTogZm9ybURhdGEsXG4gICAgICAgICAgbWV0aG9kOiByZXFNZXRob2QsXG4gICAgICAgIH0sXG4gICAgICAgIHRoaXMucmVzdHJpY3RlZE1ldGhvZHMuaW5jbHVkZXMoJ3VwbG9hZCcpLFxuICAgICAgKVxuICAgIH1cbiAgICByZXR1cm4gdGhpcy5yZXF1ZXN0KFxuICAgICAge1xuICAgICAgICAuLi5vcHRpb25zLFxuICAgICAgICBtZXRob2Q6ICdwdXQnLFxuICAgICAgICBoZWFkZXJzLFxuICAgICAgICBib2R5OiBmaWxlLFxuICAgICAgfSxcbiAgICAgIHRoaXMucmVzdHJpY3RlZE1ldGhvZHMuaW5jbHVkZXMoJ3VwbG9hZCcpLFxuICAgIClcbiAgfVxuICBwdWJsaWMgYXN5bmMgZG93bmxvYWQob3B0aW9uczogSVJlcXVlc3RPcHRpb25zKTogUHJvbWlzZTxhbnk+IHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgeyBkYXRhIH0gPSBhd2FpdCB0aGlzLmdldCh7XG4gICAgICAgIC4uLm9wdGlvbnMsXG4gICAgICAgIGhlYWRlcnM6IHt9LCAvLyDkuIvovb3otYTmupDor7fmsYLkuI3nu4/ov4dzZXJ2aWNl77yMaGVhZGVy5riF56m6XG4gICAgICAgIHJlc3BvbnNlVHlwZTogJ2Jsb2InLFxuICAgICAgfSlcbiAgICAgIGNvbnN0IHVybCA9IHdpbmRvdy5VUkwuY3JlYXRlT2JqZWN0VVJMKG5ldyBCbG9iKFtkYXRhXSkpXG4gICAgICBjb25zdCBmaWxlTmFtZSA9IGRlY29kZVVSSUNvbXBvbmVudChuZXcgVVJMKG9wdGlvbnMudXJsKS5wYXRobmFtZS5zcGxpdCgnLycpLnBvcCgpIHx8ICcnKVxuICAgICAgY29uc3QgbGluayA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2EnKVxuXG4gICAgICBsaW5rLmhyZWYgPSB1cmxcbiAgICAgIGxpbmsuc2V0QXR0cmlidXRlKCdkb3dubG9hZCcsIGZpbGVOYW1lKVxuICAgICAgbGluay5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnXG5cbiAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQobGluaylcbiAgICAgIGxpbmsuY2xpY2soKVxuICAgICAgLy8g5Zue5pS25YaF5a2YXG4gICAgICB3aW5kb3cuVVJMLnJldm9rZU9iamVjdFVSTCh1cmwpXG4gICAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGxpbmspXG4gICAgfSBjYXRjaCAoZSkge31cbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcbiAgICAgIHJlc29sdmUoe1xuICAgICAgICBzdGF0dXNDb2RlOiAyMDAsXG4gICAgICAgIHRlbXBGaWxlUGF0aDogb3B0aW9ucy51cmwsXG4gICAgICB9KVxuICAgIH0pXG4gIH1cbiAgYXN5bmMgZmV0Y2gob3B0aW9uczogSUZldGNoT3B0aW9ucyk6IFByb21pc2U8UmVzcG9uc2VPYmplY3Q+IHtcbiAgICBjb25zdCB7IHVybCwgZW5hYmxlQWJvcnQgPSBmYWxzZSwgc3RyZWFtID0gZmFsc2UgfSA9IG9wdGlvbnNcblxuICAgIGNvbnN0IGFib3J0Q29udHJvbGxlciA9IG5ldyBBYm9ydENvbnRyb2xsZXIoKVxuXG4gICAgbGV0IHRpbWVyID0gbnVsbFxuICAgIGlmIChlbmFibGVBYm9ydCAmJiB0aGlzLnRpbWVvdXQpIHtcbiAgICAgIHRpbWVyID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIGNvbnNvbGUud2Fybih0aGlzLnRpbWVvdXRNc2cpXG4gICAgICAgIGFib3J0Q29udHJvbGxlci5hYm9ydChuZXcgRXJyb3IodGhpcy50aW1lb3V0TXNnKSlcbiAgICAgIH0sIHRoaXMudGltZW91dClcbiAgICB9XG5cbiAgICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaCh1cmwsIHtcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICBzaWduYWw6IGFib3J0Q29udHJvbGxlci5zaWduYWwsXG4gICAgfSlcbiAgICAgIC50aGVuKGFzeW5jIChyZXNwb25zZSkgPT4ge1xuICAgICAgICBjbGVhclRpbWVvdXQodGltZXIpXG4gICAgICAgIC8vIDQwNCDnrYnnrYnkuZ/kvJrov5sgcmVzb2x2Ze+8jOaJgOS7peimgeWGjemAmui/hyBvayDliKTmlq1cbiAgICAgICAgcmV0dXJuIHJlc3BvbnNlLm9rID8gcmVzcG9uc2UgOiBQcm9taXNlLnJlamVjdChhd2FpdCByZXNwb25zZS5qc29uKCkpXG4gICAgICB9KVxuICAgICAgLmNhdGNoKCh4KSA9PiB7XG4gICAgICAgIGNsZWFyVGltZW91dCh0aW1lcilcbiAgICAgICAgcmV0dXJuIFByb21pc2UucmVqZWN0KHgpXG4gICAgICB9KVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIGRhdGE6IHN0cmVhbSA/IHJlcy5ib2R5IDogcmVzLmpzb24oKSxcbiAgICAgIHN0YXR1c0NvZGU6IHJlcy5zdGF0dXMsXG4gICAgICBoZWFkZXI6IHJlcy5oZWFkZXJzLFxuICAgIH1cbiAgfVxuICAvKipcbiAgICogQHBhcmFtIHtJUmVxdWVzdE9wdGlvbnN9IG9wdGlvbnNcbiAgICogQHBhcmFtIHtib29sZWFufSBlbmFibGVBYm9ydCDmmK/lkKbotoXml7bkuK3mlq3or7fmsYJcbiAgICovXG4gIHByb3RlY3RlZCByZXF1ZXN0KG9wdGlvbnM6IElSZXF1ZXN0T3B0aW9ucywgZW5hYmxlQWJvcnQgPSBmYWxzZSk6IFByb21pc2U8UmVzcG9uc2VPYmplY3Q+IHtcbiAgICBjb25zdCBtZXRob2QgPSBTdHJpbmcob3B0aW9ucy5tZXRob2QpLnRvTG93ZXJDYXNlKCkgfHwgJ2dldCdcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcbiAgICAgIGNvbnN0IHsgdXJsLCBoZWFkZXJzID0ge30sIGRhdGEsIHJlc3BvbnNlVHlwZSwgd2l0aENyZWRlbnRpYWxzLCBib2R5LCBvblVwbG9hZFByb2dyZXNzIH0gPSBvcHRpb25zXG4gICAgICBjb25zdCByZWFsVXJsID0gZm9ybWF0VXJsKGdldFByb3RvY29sKCksIHVybCwgbWV0aG9kID09PSAnZ2V0JyA/IGRhdGEgOiB7fSlcbiAgICAgIGNvbnN0IGFqYXggPSBuZXcgWE1MSHR0cFJlcXVlc3QoKVxuICAgICAgYWpheC5vcGVuKG1ldGhvZCwgcmVhbFVybClcbiAgICAgIHJlc3BvbnNlVHlwZSAmJiAoYWpheC5yZXNwb25zZVR5cGUgPSByZXNwb25zZVR5cGUpXG4gICAgICBPYmplY3Qua2V5cyhoZWFkZXJzKS5mb3JFYWNoKChrZXkpID0+IHtcbiAgICAgICAgYWpheC5zZXRSZXF1ZXN0SGVhZGVyKGtleSwgaGVhZGVyc1trZXldKVxuICAgICAgfSlcbiAgICAgIGxldCB0aW1lclxuICAgICAgaWYgKG9uVXBsb2FkUHJvZ3Jlc3MpIHtcbiAgICAgICAgYWpheC51cGxvYWQuYWRkRXZlbnRMaXN0ZW5lcigncHJvZ3Jlc3MnLCBvblVwbG9hZFByb2dyZXNzKVxuICAgICAgfVxuICAgICAgYWpheC5vbnJlYWR5c3RhdGVjaGFuZ2UgPSAoKSA9PiB7XG4gICAgICAgIGNvbnN0IHJlc3VsdDogUmVzcG9uc2VPYmplY3QgPSB7fVxuICAgICAgICBpZiAoYWpheC5yZWFkeVN0YXRlID09PSA0KSB7XG4gICAgICAgICAgY29uc3QgaGVhZGVycyA9IGFqYXguZ2V0QWxsUmVzcG9uc2VIZWFkZXJzKClcbiAgICAgICAgICBjb25zdCBhcnIgPSBoZWFkZXJzLnRyaW0oKS5zcGxpdCgvW1xcclxcbl0rLylcbiAgICAgICAgICAvLyBDcmVhdGUgYSBtYXAgb2YgaGVhZGVyIG5hbWVzIHRvIHZhbHVlc1xuICAgICAgICAgIGNvbnN0IGhlYWRlck1hcCA9IHt9XG4gICAgICAgICAgYXJyLmZvckVhY2goKGxpbmUpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHBhcnRzID0gbGluZS5zcGxpdCgnOiAnKVxuICAgICAgICAgICAgY29uc3QgaGVhZGVyID0gcGFydHMuc2hpZnQoKS50b0xvd2VyQ2FzZSgpXG4gICAgICAgICAgICBjb25zdCB2YWx1ZSA9IHBhcnRzLmpvaW4oJzogJylcbiAgICAgICAgICAgIGhlYWRlck1hcFtoZWFkZXJdID0gdmFsdWVcbiAgICAgICAgICB9KVxuICAgICAgICAgIHJlc3VsdC5oZWFkZXIgPSBoZWFkZXJNYXBcbiAgICAgICAgICByZXN1bHQuc3RhdHVzQ29kZSA9IGFqYXguc3RhdHVzXG4gICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIC8vIOS4iuS8oHBvc3Tor7fmsYLov5Tlm57mlbDmja7moLzlvI/kuLp4bWzvvIzmraTlpITlrrnplJlcbiAgICAgICAgICAgIHJlc3VsdC5kYXRhID0gcmVzcG9uc2VUeXBlID09PSAnYmxvYicgPyBhamF4LnJlc3BvbnNlIDogSlNPTi5wYXJzZShhamF4LnJlc3BvbnNlVGV4dClcbiAgICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICByZXN1bHQuZGF0YSA9IHJlc3BvbnNlVHlwZSA9PT0gJ2Jsb2InID8gYWpheC5yZXNwb25zZSA6IGFqYXgucmVzcG9uc2VUZXh0XG4gICAgICAgICAgfVxuICAgICAgICAgIGNsZWFyVGltZW91dCh0aW1lcilcbiAgICAgICAgICByZXNvbHZlKHJlc3VsdClcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKGVuYWJsZUFib3J0ICYmIHRoaXMudGltZW91dCkge1xuICAgICAgICB0aW1lciA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgIGNvbnNvbGUud2Fybih0aGlzLnRpbWVvdXRNc2cpXG4gICAgICAgICAgYWpheC5hYm9ydCgpXG4gICAgICAgIH0sIHRoaXMudGltZW91dClcbiAgICAgIH1cbiAgICAgIC8vIOWkhOeQhiBwYXlsb2FkXG4gICAgICBsZXQgcGF5bG9hZFxuICAgICAgaWYgKGlzRm9ybURhdGEoZGF0YSkpIHtcbiAgICAgICAgLy8gRm9ybURhdGHvvIzkuI3lpITnkIZcbiAgICAgICAgcGF5bG9hZCA9IGRhdGFcbiAgICAgIH0gZWxzZSBpZiAoaGVhZGVyc1snY29udGVudC10eXBlJ10gPT09ICdhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQnKSB7XG4gICAgICAgIHBheWxvYWQgPSB0b1F1ZXJ5U3RyaW5nKGRhdGEpXG4gICAgICB9IGVsc2UgaWYgKGJvZHkpIHtcbiAgICAgICAgcGF5bG9hZCA9IGJvZHlcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIC8vIOWFtuWug+aDheWGtVxuICAgICAgICBwYXlsb2FkID0gZGF0YSA/IEpTT04uc3RyaW5naWZ5KGRhdGEpIDogdW5kZWZpbmVkXG4gICAgICB9XG5cbiAgICAgIGlmICh3aXRoQ3JlZGVudGlhbHMpIHtcbiAgICAgICAgYWpheC53aXRoQ3JlZGVudGlhbHMgPSB0cnVlXG4gICAgICB9XG4gICAgICBhamF4LnNlbmQocGF5bG9hZClcbiAgICB9KVxuICB9XG59XG5cbmZ1bmN0aW9uIGdlbkFkYXB0ZXIoKSB7XG4gIGNvbnN0IGFkYXB0ZXI6IFNES0FkYXB0ZXJJbnRlcmZhY2UgPSB7XG4gICAgcm9vdDogd2luZG93LFxuICAgIHJlcUNsYXNzOiBXZWJSZXF1ZXN0LFxuICAgIHdzQ2xhc3M6IFdlYlNvY2tldCxcbiAgICBsb2NhbFN0b3JhZ2UsXG4gIH1cbiAgcmV0dXJuIGFkYXB0ZXJcbn1cblxuZXhwb3J0IHsgZ2VuQWRhcHRlciwgV2ViUmVxdWVzdCB9XG4iXX0=
267
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2ViLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FkYXB0ZXJzL3BsYXRmb3Jtcy93ZWIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxPQUFPLEVBRUwsa0JBQWtCLEdBT25CLE1BQU0sOEJBQThCLENBQUE7QUFDckMsT0FBTyxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsYUFBYSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDdEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHdCQUF3QixDQUFBO0FBS3BEO0lBQXlCLDhCQUFrQjtJQU96QyxvQkFBWSxNQUFzQjtRQUFsQyxZQUNFLGlCQUFPLFNBS1I7UUFKUyxJQUFBLE9BQU8sR0FBb0MsTUFBTSxRQUExQyxFQUFFLFVBQVUsR0FBd0IsTUFBTSxXQUE5QixFQUFFLGlCQUFpQixHQUFLLE1BQU0sa0JBQVgsQ0FBVztRQUN6RCxLQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sSUFBSSxDQUFDLENBQUE7UUFDM0IsS0FBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLElBQUksTUFBTSxDQUFBO1FBQ3RDLEtBQUksQ0FBQyxpQkFBaUIsR0FBRyxpQkFBaUIsSUFBSSxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLFVBQVUsQ0FBQyxDQUFBOztJQUNyRixDQUFDO0lBQ00sd0JBQUcsR0FBVixVQUFXLE9BQXdCO1FBQ2pDLE9BQU8sSUFBSSxDQUFDLE9BQU8sdUJBRVosT0FBTyxLQUNWLE1BQU0sRUFBRSxLQUFLLEtBRWYsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FDdkMsQ0FBQTtJQUNILENBQUM7SUFDTSx5QkFBSSxHQUFYLFVBQVksT0FBd0I7UUFDbEMsT0FBTyxJQUFJLENBQUMsT0FBTyx1QkFFWixPQUFPLEtB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dFNES1JlcXVlc3QsXG4gIElSZXF1ZXN0T3B0aW9ucyxcbiAgUmVzcG9uc2VPYmplY3QsXG4gIElVcGxvYWRSZXF1ZXN0T3B0aW9ucyxcbiAgSVJlcXVlc3RDb25maWcsXG4gIElSZXF1ZXN0TWV0aG9kLFxuICBJRmV0Y2hPcHRpb25zLFxufSBmcm9tICdAY2xvdWRiYXNlL2FkYXB0ZXItaW50ZXJmYWNlJ1xuaW1wb3J0IHsgaXNGb3JtRGF0YSwgZm9ybWF0VXJsLCB0b1F1ZXJ5U3RyaW5nIH0gZnJvbSAnLi4vLi4vbGlicy91dGlsJ1xuaW1wb3J0IHsgZ2V0UHJvdG9jb2wgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvY29tbW9uJ1xuXG4vKipcbiAqIEBjbGFzcyBXZWJSZXF1ZXN0XG4gKi9cbmNsYXNzIFdlYlJlcXVlc3QgZXh0ZW5kcyBBYnN0cmFjdFNES1JlcXVlc3Qge1xuICAvLyDpu5jorqTkuI3pmZDotoXml7ZcbiAgcHJpdmF0ZSByZWFkb25seSB0aW1lb3V0OiBudW1iZXJcbiAgLy8g6LaF5pe25o+Q56S65paH5qGIXG4gIHByaXZhdGUgcmVhZG9ubHkgdGltZW91dE1zZzogc3RyaW5nXG4gIC8vIOi2heaXtuWPl+mZkOivt+axguexu+Wei++8jOm7mOiupOaJgOacieivt+axguWdh+WPl+mZkFxuICBwcml2YXRlIHJlYWRvbmx5IHJlc3RyaWN0ZWRNZXRob2RzOiBBcnJheTxJUmVxdWVzdE1ldGhvZD5cbiAgY29uc3RydWN0b3IoY29uZmlnOiBJUmVxdWVzdENvbmZpZykge1xuICAgIHN1cGVyKClcbiAgICBjb25zdCB7IHRpbWVvdXQsIHRpbWVvdXRNc2csIHJlc3RyaWN0ZWRNZXRob2RzIH0gPSBjb25maWdcbiAgICB0aGlzLnRpbWVvdXQgPSB0aW1lb3V0IHx8IDBcbiAgICB0aGlzLnRpbWVvdXRNc2cgPSB0aW1lb3V0TXNnIHx8ICfor7fmsYLotoXml7YnXG4gICAgdGhpcy5yZXN0cmljdGVkTWV0aG9kcyA9IHJlc3RyaWN0ZWRNZXRob2RzIHx8IFsnZ2V0JywgJ3Bvc3QnLCAndXBsb2FkJywgJ2Rvd25sb2FkJ11cbiAgfVxuICBwdWJsaWMgZ2V0KG9wdGlvbnM6IElSZXF1ZXN0T3B0aW9ucyk6IFByb21pc2U8UmVzcG9uc2VPYmplY3Q+IHtcbiAgICByZXR1cm4gdGhpcy5yZXF1ZXN0KFxuICAgICAge1xuICAgICAgICAuLi5vcHRpb25zLFxuICAgICAgICBtZXRob2Q6ICdnZXQnLFxuICAgICAgfSxcbiAgICAgIHRoaXMucmVzdHJpY3RlZE1ldGhvZHMuaW5jbHVkZXMoJ2dldCcpLFxuICAgIClcbiAgfVxuICBwdWJsaWMgcG9zdChvcHRpb25zOiBJUmVxdWVzdE9wdGlvbnMpOiBQcm9taXNlPFJlc3BvbnNlT2JqZWN0PiB7XG4gICAgcmV0dXJuIHRoaXMucmVxdWVzdChcbiAgICAgIHtcbiAgICAgICAgLi4ub3B0aW9ucyxcbiAgICAgICAgbWV0aG9kOiAncG9zdCcsXG4gICAgICB9LFxuICAgICAgdGhpcy5yZXN0cmljdGVkTWV0aG9kcy5pbmNsdWRlcygncG9zdCcpLFxuICAgIClcbiAgfVxuICBwdWJsaWMgcHV0KG9wdGlvbnM6IElSZXF1ZXN0T3B0aW9ucyk6IFByb21pc2U8UmVzcG9uc2VPYmplY3Q+IHtcbiAgICByZXR1cm4gdGhpcy5yZXF1ZXN0KHtcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICBtZXRob2Q6ICdwdXQnLFxuICAgIH0pXG4gIH1cbiAgcHVibGljIHVwbG9hZChvcHRpb25zOiBJVXBsb2FkUmVxdWVzdE9wdGlvbnMpOiBQcm9taXNlPFJlc3BvbnNlT2JqZWN0PiB7XG4gICAgY29uc3QgeyBkYXRhLCBmaWxlLCBuYW1lLCBtZXRob2QsIGhlYWRlcnMgPSB7fSB9ID0gb3B0aW9uc1xuICAgIGNvbnN0IHJlcU1ldGhvZCA9IHsgcG9zdDogJ3Bvc3QnLCBwdXQ6ICdwdXQnIH1bbWV0aG9kPy50b0xvd2VyQ2FzZSgpXSB8fCAncHV0J1xuICAgIC8vIOS4iuS8oOaWueW8j+S4unBvc3Tml7bvvIzpnIDovazmjaLkuLpGb3JtRGF0YVxuICAgIGNvbnN0IGZvcm1EYXRhID0gbmV3IEZvcm1EYXRhKClcbiAgICBpZiAocmVxTWV0aG9kID09PSAncG9zdCcpIHtcbiAgICAgIE9iamVjdC5rZXlzKGRhdGEpLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgICBmb3JtRGF0YS5hcHBlbmQoa2V5LCBkYXRhW2tleV0pXG4gICAgICB9KVxuICAgICAgZm9ybURhdGEuYXBwZW5kKCdrZXknLCBuYW1lKVxuICAgICAgZm9ybURhdGEuYXBwZW5kKCdmaWxlJywgZmlsZSlcbiAgICAgIHJldHVybiB0aGlzLnJlcXVlc3QoXG4gICAgICAgIHtcbiAgICAgICAgICAuLi5vcHRpb25zLFxuICAgICAgICAgIGRhdGE6IGZvcm1EYXRhLFxuICAgICAgICAgIG1ldGhvZDogcmVxTWV0aG9kLFxuICAgICAgICB9LFxuICAgICAgICB0aGlzLnJlc3RyaWN0ZWRNZXRob2RzLmluY2x1ZGVzKCd1cGxvYWQnKSxcbiAgICAgIClcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMucmVxdWVzdChcbiAgICAgIHtcbiAgICAgICAgLi4ub3B0aW9ucyxcbiAgICAgICAgbWV0aG9kOiAncHV0JyxcbiAgICAgICAgaGVhZGVycyxcbiAgICAgICAgYm9keTogZmlsZSxcbiAgICAgIH0sXG4gICAgICB0aGlzLnJlc3RyaWN0ZWRNZXRob2RzLmluY2x1ZGVzKCd1cGxvYWQnKSxcbiAgICApXG4gIH1cbiAgcHVibGljIGFzeW5jIGRvd25sb2FkKG9wdGlvbnM6IElSZXF1ZXN0T3B0aW9ucyk6IFByb21pc2U8YW55PiB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHsgZGF0YSB9ID0gYXdhaXQgdGhpcy5nZXQoe1xuICAgICAgICAuLi5vcHRpb25zLFxuICAgICAgICBoZWFkZXJzOiB7fSwgLy8g5LiL6L296LWE5rqQ6K+35rGC5LiN57uP6L+Hc2VydmljZe+8jGhlYWRlcua4heepulxuICAgICAgICByZXNwb25zZVR5cGU6ICdibG9iJyxcbiAgICAgIH0pXG4gICAgICBjb25zdCB1cmwgPSB3aW5kb3cuVVJMLmNyZWF0ZU9iamVjdFVSTChuZXcgQmxvYihbZGF0YV0pKVxuICAgICAgY29uc3QgZmlsZU5hbWUgPSBkZWNvZGVVUklDb21wb25lbnQobmV3IFVSTChvcHRpb25zLnVybCkucGF0aG5hbWUuc3BsaXQoJy8nKS5wb3AoKSB8fCAnJylcbiAgICAgIGNvbnN0IGxpbmsgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJylcblxuICAgICAgbGluay5ocmVmID0gdXJsXG4gICAgICBsaW5rLnNldEF0dHJpYnV0ZSgnZG93bmxvYWQnLCBmaWxlTmFtZSlcbiAgICAgIGxpbmsuc3R5bGUuZGlzcGxheSA9ICdub25lJ1xuXG4gICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGxpbmspXG4gICAgICBsaW5rLmNsaWNrKClcbiAgICAgIC8vIOWbnuaUtuWGheWtmFxuICAgICAgd2luZG93LlVSTC5yZXZva2VPYmplY3RVUkwodXJsKVxuICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChsaW5rKVxuICAgIH0gY2F0Y2ggKGUpIHt9XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7XG4gICAgICByZXNvbHZlKHtcbiAgICAgICAgc3RhdHVzQ29kZTogMjAwLFxuICAgICAgICB0ZW1wRmlsZVBhdGg6IG9wdGlvbnMudXJsLFxuICAgICAgfSlcbiAgICB9KVxuICB9XG4gIGFzeW5jIGZldGNoKG9wdGlvbnM6IElGZXRjaE9wdGlvbnMpOiBQcm9taXNlPFJlc3BvbnNlT2JqZWN0PiB7XG4gICAgY29uc3QgYWJvcnRDb250cm9sbGVyID0gbmV3IEFib3J0Q29udHJvbGxlcigpXG4gICAgY29uc3QgeyB1cmwsIGVuYWJsZUFib3J0ID0gZmFsc2UsIHN0cmVhbSA9IGZhbHNlLCBzaWduYWwgfSA9IG9wdGlvbnNcblxuICAgIGlmIChzaWduYWwpIHtcbiAgICAgIGlmIChzaWduYWwuYWJvcnRlZCkgYWJvcnRDb250cm9sbGVyLmFib3J0KClcbiAgICAgIHNpZ25hbC5hZGRFdmVudExpc3RlbmVyKCdhYm9ydCcsICgpID0+IGFib3J0Q29udHJvbGxlci5hYm9ydCgpKVxuICAgIH1cblxuICAgIGxldCB0aW1lciA9IG51bGxcbiAgICBpZiAoZW5hYmxlQWJvcnQgJiYgdGhpcy50aW1lb3V0KSB7XG4gICAgICB0aW1lciA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICBjb25zb2xlLndhcm4odGhpcy50aW1lb3V0TXNnKVxuICAgICAgICBhYm9ydENvbnRyb2xsZXIuYWJvcnQobmV3IEVycm9yKHRoaXMudGltZW91dE1zZykpXG4gICAgICB9LCB0aGlzLnRpbWVvdXQpXG4gICAgfVxuXG4gICAgY29uc3QgcmVzID0gYXdhaXQgZmV0Y2godXJsLCB7XG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgc2lnbmFsOiBhYm9ydENvbnRyb2xsZXIuc2lnbmFsLFxuICAgIH0pXG4gICAgICAudGhlbihhc3luYyAocmVzcG9uc2UpID0+IHtcbiAgICAgICAgY2xlYXJUaW1lb3V0KHRpbWVyKVxuICAgICAgICAvLyA0MDQg562J562J5Lmf5Lya6L+bIHJlc29sdmXvvIzmiYDku6XopoHlho3pgJrov4cgb2sg5Yik5patXG4gICAgICAgIHJldHVybiByZXNwb25zZS5vayA/IHJlc3BvbnNlIDogUHJvbWlzZS5yZWplY3QoYXdhaXQgcmVzcG9uc2UuanNvbigpKVxuICAgICAgfSlcbiAgICAgIC5jYXRjaCgoeCkgPT4ge1xuICAgICAgICBjbGVhclRpbWVvdXQodGltZXIpXG4gICAgICAgIHJldHVybiBQcm9taXNlLnJlamVjdCh4KVxuICAgICAgfSlcblxuICAgIHJldHVybiB7XG4gICAgICBkYXRhOiBzdHJlYW0gPyByZXMuYm9keSA6IHJlcy5qc29uKCksXG4gICAgICBzdGF0dXNDb2RlOiByZXMuc3RhdHVzLFxuICAgICAgaGVhZGVyOiByZXMuaGVhZGVycyxcbiAgICB9XG4gIH1cbiAgLyoqXG4gICAqIEBwYXJhbSB7SVJlcXVlc3RPcHRpb25zfSBvcHRpb25zXG4gICAqIEBwYXJhbSB7Ym9vbGVhbn0gZW5hYmxlQWJvcnQg5piv5ZCm6LaF5pe25Lit5pat6K+35rGCXG4gICAqL1xuICBwcm90ZWN0ZWQgcmVxdWVzdChvcHRpb25zOiBJUmVxdWVzdE9wdGlvbnMsIGVuYWJsZUFib3J0ID0gZmFsc2UpOiBQcm9taXNlPFJlc3BvbnNlT2JqZWN0PiB7XG4gICAgY29uc3QgbWV0aG9kID0gU3RyaW5nKG9wdGlvbnMubWV0aG9kKS50b0xvd2VyQ2FzZSgpIHx8ICdnZXQnXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7XG4gICAgICBjb25zdCB7IHVybCwgaGVhZGVycyA9IHt9LCBkYXRhLCByZXNwb25zZVR5cGUsIHdpdGhDcmVkZW50aWFscywgYm9keSwgb25VcGxvYWRQcm9ncmVzcyB9ID0gb3B0aW9uc1xuICAgICAgY29uc3QgcmVhbFVybCA9IGZvcm1hdFVybChnZXRQcm90b2NvbCgpLCB1cmwsIG1ldGhvZCA9PT0gJ2dldCcgPyBkYXRhIDoge30pXG4gICAgICBjb25zdCBhamF4ID0gbmV3IFhNTEh0dHBSZXF1ZXN0KClcbiAgICAgIGFqYXgub3BlbihtZXRob2QsIHJlYWxVcmwpXG4gICAgICByZXNwb25zZVR5cGUgJiYgKGFqYXgucmVzcG9uc2VUeXBlID0gcmVzcG9uc2VUeXBlKVxuICAgICAgT2JqZWN0LmtleXMoaGVhZGVycykuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgICAgIGFqYXguc2V0UmVxdWVzdEhlYWRlcihrZXksIGhlYWRlcnNba2V5XSlcbiAgICAgIH0pXG4gICAgICBsZXQgdGltZXJcbiAgICAgIGlmIChvblVwbG9hZFByb2dyZXNzKSB7XG4gICAgICAgIGFqYXgudXBsb2FkLmFkZEV2ZW50TGlzdGVuZXIoJ3Byb2dyZXNzJywgb25VcGxvYWRQcm9ncmVzcylcbiAgICAgIH1cbiAgICAgIGFqYXgub25yZWFkeXN0YXRlY2hhbmdlID0gKCkgPT4ge1xuICAgICAgICBjb25zdCByZXN1bHQ6IFJlc3BvbnNlT2JqZWN0ID0ge31cbiAgICAgICAgaWYgKGFqYXgucmVhZHlTdGF0ZSA9PT0gNCkge1xuICAgICAgICAgIGNvbnN0IGhlYWRlcnMgPSBhamF4LmdldEFsbFJlc3BvbnNlSGVhZGVycygpXG4gICAgICAgICAgY29uc3QgYXJyID0gaGVhZGVycy50cmltKCkuc3BsaXQoL1tcXHJcXG5dKy8pXG4gICAgICAgICAgLy8gQ3JlYXRlIGEgbWFwIG9mIGhlYWRlciBuYW1lcyB0byB2YWx1ZXNcbiAgICAgICAgICBjb25zdCBoZWFkZXJNYXAgPSB7fVxuICAgICAgICAgIGFyci5mb3JFYWNoKChsaW5lKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBwYXJ0cyA9IGxpbmUuc3BsaXQoJzogJylcbiAgICAgICAgICAgIGNvbnN0IGhlYWRlciA9IHBhcnRzLnNoaWZ0KCkudG9Mb3dlckNhc2UoKVxuICAgICAgICAgICAgY29uc3QgdmFsdWUgPSBwYXJ0cy5qb2luKCc6ICcpXG4gICAgICAgICAgICBoZWFkZXJNYXBbaGVhZGVyXSA9IHZhbHVlXG4gICAgICAgICAgfSlcbiAgICAgICAgICByZXN1bHQuaGVhZGVyID0gaGVhZGVyTWFwXG4gICAgICAgICAgcmVzdWx0LnN0YXR1c0NvZGUgPSBhamF4LnN0YXR1c1xuICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAvLyDkuIrkvKBwb3N06K+35rGC6L+U5Zue5pWw5o2u5qC85byP5Li6eG1s77yM5q2k5aSE5a656ZSZXG4gICAgICAgICAgICByZXN1bHQuZGF0YSA9IHJlc3BvbnNlVHlwZSA9PT0gJ2Jsb2InID8gYWpheC5yZXNwb25zZSA6IEpTT04ucGFyc2UoYWpheC5yZXNwb25zZVRleHQpXG4gICAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgcmVzdWx0LmRhdGEgPSByZXNwb25zZVR5cGUgPT09ICdibG9iJyA/IGFqYXgucmVzcG9uc2UgOiBhamF4LnJlc3BvbnNlVGV4dFxuICAgICAgICAgIH1cbiAgICAgICAgICBjbGVhclRpbWVvdXQodGltZXIpXG4gICAgICAgICAgcmVzb2x2ZShyZXN1bHQpXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGlmIChlbmFibGVBYm9ydCAmJiB0aGlzLnRpbWVvdXQpIHtcbiAgICAgICAgdGltZXIgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICBjb25zb2xlLndhcm4odGhpcy50aW1lb3V0TXNnKVxuICAgICAgICAgIGFqYXguYWJvcnQoKVxuICAgICAgICB9LCB0aGlzLnRpbWVvdXQpXG4gICAgICB9XG4gICAgICAvLyDlpITnkIYgcGF5bG9hZFxuICAgICAgbGV0IHBheWxvYWRcbiAgICAgIGlmIChpc0Zvcm1EYXRhKGRhdGEpKSB7XG4gICAgICAgIC8vIEZvcm1EYXRh77yM5LiN5aSE55CGXG4gICAgICAgIHBheWxvYWQgPSBkYXRhXG4gICAgICB9IGVsc2UgaWYgKGhlYWRlcnNbJ2NvbnRlbnQtdHlwZSddID09PSAnYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkJykge1xuICAgICAgICBwYXlsb2FkID0gdG9RdWVyeVN0cmluZyhkYXRhKVxuICAgICAgfSBlbHNlIGlmIChib2R5KSB7XG4gICAgICAgIHBheWxvYWQgPSBib2R5XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyDlhbblroPmg4XlhrVcbiAgICAgICAgcGF5bG9hZCA9IGRhdGEgPyBKU09OLnN0cmluZ2lmeShkYXRhKSA6IHVuZGVmaW5lZFxuICAgICAgfVxuXG4gICAgICBpZiAod2l0aENyZWRlbnRpYWxzKSB7XG4gICAgICAgIGFqYXgud2l0aENyZWRlbnRpYWxzID0gdHJ1ZVxuICAgICAgfVxuICAgICAgYWpheC5zZW5kKHBheWxvYWQpXG4gICAgfSlcbiAgfVxufVxuXG5mdW5jdGlvbiBnZW5BZGFwdGVyKCkge1xuICBjb25zdCBhZGFwdGVyOiBTREtBZGFwdGVySW50ZXJmYWNlID0ge1xuICAgIHJvb3Q6IHdpbmRvdyxcbiAgICByZXFDbGFzczogV2ViUmVxdWVzdCxcbiAgICB3c0NsYXNzOiBXZWJTb2NrZXQsXG4gICAgbG9jYWxTdG9yYWdlLFxuICB9XG4gIHJldHVybiBhZGFwdGVyXG59XG5cbmV4cG9ydCB7IGdlbkFkYXB0ZXIsIFdlYlJlcXVlc3QgfVxuIl19
@@ -4,8 +4,9 @@ import * as cache from './libs/cache';
4
4
  import * as events from './libs/events';
5
5
  import * as utils from './libs/util';
6
6
  import * as helpers from './helpers';
7
+ import AbortController from './libs/abortController';
7
8
  import jwtDecode from 'jwt-decode';
8
9
  declare const jwt: {
9
10
  decode: typeof jwtDecode;
10
11
  };
11
- export { constants, adapters, cache, events, utils, helpers, jwt, };
12
+ export { constants, adapters, cache, events, utils, helpers, jwt, AbortController };
package/dist/esm/index.js CHANGED
@@ -4,9 +4,10 @@ import * as cache from './libs/cache';
4
4
  import * as events from './libs/events';
5
5
  import * as utils from './libs/util';
6
6
  import * as helpers from './helpers';
7
+ import AbortController from './libs/abortController';
7
8
  import jwtDecode from 'jwt-decode';
8
9
  var jwt = {
9
10
  decode: jwtDecode,
10
11
  };
11
- export { constants, adapters, cache, events, utils, helpers, jwt, };
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLFNBQVMsTUFBTSxhQUFhLENBQUE7QUFDeEMsT0FBTyxLQUFLLFFBQVEsTUFBTSxZQUFZLENBQUE7QUFDdEMsT0FBTyxLQUFLLEtBQUssTUFBTSxjQUFjLENBQUE7QUFDckMsT0FBTyxLQUFLLE1BQU0sTUFBTSxlQUFlLENBQUE7QUFDdkMsT0FBTyxLQUFLLEtBQUssTUFBTSxhQUFhLENBQUE7QUFDcEMsT0FBTyxLQUFLLE9BQU8sTUFBTSxXQUFXLENBQUE7QUFFcEMsT0FBTyxTQUFTLE1BQU0sWUFBWSxDQUFBO0FBRWxDLElBQU0sR0FBRyxHQUFHO0lBQ1YsTUFBTSxFQUFFLFNBQVM7Q0FDbEIsQ0FBQTtBQUVELE9BQU8sRUFDTCxTQUFTLEVBQ1QsUUFBUSxFQUNSLEtBQUssRUFDTCxNQUFNLEVBQ04sS0FBSyxFQUNMLE9BQU8sRUFDUCxHQUFHLEdBQ0osQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGNvbnN0YW50cyBmcm9tICcuL2NvbnN0YW50cydcbmltcG9ydCAqIGFzIGFkYXB0ZXJzIGZyb20gJy4vYWRhcHRlcnMnXG5pbXBvcnQgKiBhcyBjYWNoZSBmcm9tICcuL2xpYnMvY2FjaGUnXG5pbXBvcnQgKiBhcyBldmVudHMgZnJvbSAnLi9saWJzL2V2ZW50cydcbmltcG9ydCAqIGFzIHV0aWxzIGZyb20gJy4vbGlicy91dGlsJ1xuaW1wb3J0ICogYXMgaGVscGVycyBmcm9tICcuL2hlbHBlcnMnXG5cbmltcG9ydCBqd3REZWNvZGUgZnJvbSAnand0LWRlY29kZSdcblxuY29uc3Qgand0ID0ge1xuICBkZWNvZGU6IGp3dERlY29kZSxcbn1cblxuZXhwb3J0IHtcbiAgY29uc3RhbnRzLFxuICBhZGFwdGVycyxcbiAgY2FjaGUsXG4gIGV2ZW50cyxcbiAgdXRpbHMsXG4gIGhlbHBlcnMsXG4gIGp3dCxcbn1cbiJdfQ==
12
+ export { constants, adapters, cache, events, utils, helpers, jwt, AbortController };
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLFNBQVMsTUFBTSxhQUFhLENBQUE7QUFDeEMsT0FBTyxLQUFLLFFBQVEsTUFBTSxZQUFZLENBQUE7QUFDdEMsT0FBTyxLQUFLLEtBQUssTUFBTSxjQUFjLENBQUE7QUFDckMsT0FBTyxLQUFLLE1BQU0sTUFBTSxlQUFlLENBQUE7QUFDdkMsT0FBTyxLQUFLLEtBQUssTUFBTSxhQUFhLENBQUE7QUFDcEMsT0FBTyxLQUFLLE9BQU8sTUFBTSxXQUFXLENBQUE7QUFDcEMsT0FBTyxlQUFlLE1BQU0sd0JBQXdCLENBQUE7QUFDcEQsT0FBTyxTQUFTLE1BQU0sWUFBWSxDQUFBO0FBRWxDLElBQU0sR0FBRyxHQUFHO0lBQ1YsTUFBTSxFQUFFLFNBQVM7Q0FDbEIsQ0FBQTtBQUVELE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsZUFBZSxFQUFFLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBjb25zdGFudHMgZnJvbSAnLi9jb25zdGFudHMnXG5pbXBvcnQgKiBhcyBhZGFwdGVycyBmcm9tICcuL2FkYXB0ZXJzJ1xuaW1wb3J0ICogYXMgY2FjaGUgZnJvbSAnLi9saWJzL2NhY2hlJ1xuaW1wb3J0ICogYXMgZXZlbnRzIGZyb20gJy4vbGlicy9ldmVudHMnXG5pbXBvcnQgKiBhcyB1dGlscyBmcm9tICcuL2xpYnMvdXRpbCdcbmltcG9ydCAqIGFzIGhlbHBlcnMgZnJvbSAnLi9oZWxwZXJzJ1xuaW1wb3J0IEFib3J0Q29udHJvbGxlciBmcm9tICcuL2xpYnMvYWJvcnRDb250cm9sbGVyJ1xuaW1wb3J0IGp3dERlY29kZSBmcm9tICdqd3QtZGVjb2RlJ1xuXG5jb25zdCBqd3QgPSB7XG4gIGRlY29kZTogand0RGVjb2RlLFxufVxuXG5leHBvcnQgeyBjb25zdGFudHMsIGFkYXB0ZXJzLCBjYWNoZSwgZXZlbnRzLCB1dGlscywgaGVscGVycywgand0LCBBYm9ydENvbnRyb2xsZXIgfVxuIl19
@@ -0,0 +1,9 @@
1
+ export default class AbortController {
2
+ listeners: Array<CallableFunction>;
3
+ signal: {
4
+ aborted: boolean;
5
+ addEventListener: (e: string, f: CallableFunction) => void;
6
+ };
7
+ constructor();
8
+ abort(): void;
9
+ }
@@ -0,0 +1,23 @@
1
+ var AbortController = (function () {
2
+ function AbortController() {
3
+ var _this = this;
4
+ this.listeners = [];
5
+ this.signal = {
6
+ aborted: false,
7
+ addEventListener: function (e, f) {
8
+ if (e === 'abort') {
9
+ _this.listeners.push(f);
10
+ }
11
+ },
12
+ };
13
+ }
14
+ AbortController.prototype.abort = function () {
15
+ if (this.signal.aborted)
16
+ return;
17
+ this.signal.aborted = true;
18
+ this.listeners.forEach(function (f) { return f(); });
19
+ };
20
+ return AbortController;
21
+ }());
22
+ export default AbortController;
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJvcnRDb250cm9sbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYnMvYWJvcnRDb250cm9sbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0lBVUU7UUFBQSxpQkFBZ0I7UUFUaEIsY0FBUyxHQUE0QixFQUFFLENBQUE7UUFDdkMsV0FBTSxHQUFHO1lBQ1AsT0FBTyxFQUFFLEtBQUs7WUFDZCxnQkFBZ0IsRUFBRSxVQUFDLENBQVMsRUFBRSxDQUFtQjtnQkFDL0MsSUFBSSxDQUFDLEtBQUssT0FBTyxFQUFFO29CQUNqQixLQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQTtpQkFDdkI7WUFDSCxDQUFDO1NBQ0YsQ0FBQTtJQUNjLENBQUM7SUFFaEIsK0JBQUssR0FBTDtRQUNFLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPO1lBQUUsT0FBTTtRQUUvQixJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUE7UUFDMUIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsVUFBQSxDQUFDLElBQUksT0FBQSxDQUFDLEVBQUUsRUFBSCxDQUFHLENBQUMsQ0FBQTtJQUNsQyxDQUFDO0lBQ0gsc0JBQUM7QUFBRCxDQUFDLEFBbEJELElBa0JDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGRlZmF1bHQgY2xhc3MgQWJvcnRDb250cm9sbGVyIHtcbiAgbGlzdGVuZXJzOiBBcnJheTxDYWxsYWJsZUZ1bmN0aW9uPiA9IFtdXG4gIHNpZ25hbCA9IHtcbiAgICBhYm9ydGVkOiBmYWxzZSxcbiAgICBhZGRFdmVudExpc3RlbmVyOiAoZTogc3RyaW5nLCBmOiBDYWxsYWJsZUZ1bmN0aW9uKSA9PiB7XG4gICAgICBpZiAoZSA9PT0gJ2Fib3J0Jykge1xuICAgICAgICB0aGlzLmxpc3RlbmVycy5wdXNoKGYpXG4gICAgICB9XG4gICAgfSxcbiAgfVxuICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgYWJvcnQoKSB7XG4gICAgaWYgKHRoaXMuc2lnbmFsLmFib3J0ZWQpIHJldHVyblxuXG4gICAgdGhpcy5zaWduYWwuYWJvcnRlZCA9IHRydWVcbiAgICB0aGlzLmxpc3RlbmVycy5mb3JFYWNoKGYgPT4gZigpKVxuICB9XG59XG4iXX0=
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cloudbase/utilities",
3
- "version": "2.8.23-beta.0",
3
+ "version": "2.8.25-beta.0",
4
4
  "description": "cloudbase javascript sdk utilities",
5
5
  "main": "dist/cjs/index.js",
6
6
  "module": "dist/esm/index.js",
@@ -23,12 +23,12 @@
23
23
  "author": "",
24
24
  "license": "Apache-2.0",
25
25
  "dependencies": {
26
- "@cloudbase/adapter-interface": "^0.5",
27
- "@cloudbase/types": "^2.8.23-beta.0",
26
+ "@cloudbase/adapter-interface": "^0.6.0",
27
+ "@cloudbase/types": "^2.8.25-beta.0",
28
28
  "jwt-decode": "^3.1.2"
29
29
  },
30
30
  "devDependencies": {
31
31
  "@types/node": "^22.5.4"
32
32
  },
33
- "gitHead": "1a3c440405ae3b28cd212cb7d1c9ba74c4159d48"
33
+ "gitHead": "dc13169373add95c3676b1ee4ef7dc9f6492160e"
34
34
  }
@@ -111,9 +111,13 @@ class WebRequest extends AbstractSDKRequest {
111
111
  })
112
112
  }
113
113
  async fetch(options: IFetchOptions): Promise<ResponseObject> {
114
- const { url, enableAbort = false, stream = false } = options
115
-
116
114
  const abortController = new AbortController()
115
+ const { url, enableAbort = false, stream = false, signal } = options
116
+
117
+ if (signal) {
118
+ if (signal.aborted) abortController.abort()
119
+ signal.addEventListener('abort', () => abortController.abort())
120
+ }
117
121
 
118
122
  let timer = null
119
123
  if (enableAbort && this.timeout) {
package/src/index.ts CHANGED
@@ -4,19 +4,11 @@ import * as cache from './libs/cache'
4
4
  import * as events from './libs/events'
5
5
  import * as utils from './libs/util'
6
6
  import * as helpers from './helpers'
7
-
7
+ import AbortController from './libs/abortController'
8
8
  import jwtDecode from 'jwt-decode'
9
9
 
10
10
  const jwt = {
11
11
  decode: jwtDecode,
12
12
  }
13
13
 
14
- export {
15
- constants,
16
- adapters,
17
- cache,
18
- events,
19
- utils,
20
- helpers,
21
- jwt,
22
- }
14
+ export { constants, adapters, cache, events, utils, helpers, jwt, AbortController }
@@ -0,0 +1,19 @@
1
+ export default class AbortController {
2
+ listeners: Array<CallableFunction> = []
3
+ signal = {
4
+ aborted: false,
5
+ addEventListener: (e: string, f: CallableFunction) => {
6
+ if (e === 'abort') {
7
+ this.listeners.push(f)
8
+ }
9
+ },
10
+ }
11
+ constructor() {}
12
+
13
+ abort() {
14
+ if (this.signal.aborted) return
15
+
16
+ this.signal.aborted = true
17
+ this.listeners.forEach(f => f())
18
+ }
19
+ }