@cloudbase/app 2.25.3 → 2.25.5-alpha.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.
- package/dist/cjs/libs/request.js +32 -13
- package/dist/esm/libs/request.js +32 -13
- package/dist/miniprogram/index.js +1 -1
- package/package.json +4 -4
- package/src/libs/request.ts +39 -18
package/dist/cjs/libs/request.js
CHANGED
|
@@ -89,15 +89,16 @@ function bindHooks(instance, name, hooks) {
|
|
|
89
89
|
Object.assign(headers, appendedHeaders);
|
|
90
90
|
});
|
|
91
91
|
var originData = options.data;
|
|
92
|
-
originData
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
92
|
+
originData
|
|
93
|
+
&& (function () {
|
|
94
|
+
if (isFormData(originData)) {
|
|
95
|
+
Object.keys(data).forEach(function (key) {
|
|
96
|
+
originData.append(key, data[key]);
|
|
97
|
+
});
|
|
98
|
+
return;
|
|
99
|
+
}
|
|
100
|
+
options.data = __assign(__assign({}, originData), data);
|
|
101
|
+
})();
|
|
101
102
|
options.headers = __assign(__assign({}, (options.headers || {})), headers);
|
|
102
103
|
return originMethod.call(instance, options);
|
|
103
104
|
};
|
|
@@ -288,7 +289,8 @@ var CloudbaseRequest = (function () {
|
|
|
288
289
|
search = (options === null || options === void 0 ? void 0 : options.search) !== undefined ? options.search : params.search;
|
|
289
290
|
formatQuery = __assign(__assign({}, ((options === null || options === void 0 ? void 0 : options.defaultQuery) || {})), { env: this.config.env });
|
|
290
291
|
parse && (formatQuery.parse = true);
|
|
291
|
-
inQuery
|
|
292
|
+
inQuery
|
|
293
|
+
&& (formatQuery = __assign(__assign({}, inQuery), formatQuery));
|
|
292
294
|
endPointMode = this.config.endPointMode || 'CLOUD_API';
|
|
293
295
|
url = (0, common_1.getEndPointInfo)(this.config.env, endPointMode);
|
|
294
296
|
BASE_URL = url.baseUrl;
|
|
@@ -394,7 +396,7 @@ var CloudbaseRequest = (function () {
|
|
|
394
396
|
CloudbaseRequest.prototype.gateWay = function (options, customReqOpts) {
|
|
395
397
|
var _a;
|
|
396
398
|
return __awaiter(this, void 0, void 0, function () {
|
|
397
|
-
var url, name, data, _b, path, method, _c, header, jsonData, requestId, _d, baseUrl, protocol, endpoint, response, _e;
|
|
399
|
+
var url, name, data, _b, path, method, _c, header, jsonData, requestId, _d, baseUrl, protocol, endpoint, isGetAndHead, dataParse_1, response, _e;
|
|
398
400
|
var _f;
|
|
399
401
|
return __generator(this, function (_g) {
|
|
400
402
|
switch (_g.label) {
|
|
@@ -418,7 +420,24 @@ var CloudbaseRequest = (function () {
|
|
|
418
420
|
requestId = utilities_1.utils.generateRequestId();
|
|
419
421
|
_d = (0, common_1.getEndPointInfo)(this.config.env, 'GATEWAY'), baseUrl = _d.baseUrl, protocol = _d.protocol;
|
|
420
422
|
endpoint = "".concat(protocol).concat(baseUrl).concat(url || "/".concat(path, "/").concat(name));
|
|
421
|
-
|
|
423
|
+
isGetAndHead = ['GET', 'HEAD'].includes((_a = method === null || method === void 0 ? void 0 : method.toUpperCase) === null || _a === void 0 ? void 0 : _a.call(method));
|
|
424
|
+
if (isGetAndHead) {
|
|
425
|
+
try {
|
|
426
|
+
dataParse_1 = {};
|
|
427
|
+
try {
|
|
428
|
+
dataParse_1 = JSON.parse(data);
|
|
429
|
+
}
|
|
430
|
+
catch (error) {
|
|
431
|
+
dataParse_1 = data || {};
|
|
432
|
+
}
|
|
433
|
+
endpoint = "".concat(endpoint).concat(endpoint.includes('?') ? '&' : '?').concat(Object.keys(dataParse_1)
|
|
434
|
+
.map(function (key) { return "".concat(key, "=").concat(dataParse_1[key]); })
|
|
435
|
+
.join('&'));
|
|
436
|
+
}
|
|
437
|
+
catch (error) {
|
|
438
|
+
}
|
|
439
|
+
}
|
|
440
|
+
return [4, this.fetch(__assign(__assign({ method: method || 'POST', headers: __assign({ 'Content-Type': 'application/json; charset=utf-8', 'X-Request-Id': requestId }, header) }, (isGetAndHead ? {} : { body: jsonData })), { url: endpoint, customReqOpts: customReqOpts }))];
|
|
422
441
|
case 1:
|
|
423
442
|
response = _g.sent();
|
|
424
443
|
_e = [__assign({ requestId: requestId }, response)];
|
|
@@ -441,4 +460,4 @@ function getRequestByEnvId(env) {
|
|
|
441
460
|
return requestMap[env];
|
|
442
461
|
}
|
|
443
462
|
exports.getRequestByEnvId = getRequestByEnvId;
|
|
444
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWJzL3JlcXVlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDhDQUFtRztBQVNuRyxrREFBa0U7QUFVbEUsaUNBQXVDO0FBQ3ZDLHFDQUFvQztBQUM1QixJQUFBLE1BQU0sR0FBSyxxQkFBUyxPQUFkLENBQWM7QUFDcEIsSUFBQSxRQUFRLEdBQTRCLGlCQUFLLFNBQWpDLEVBQUUsVUFBVSxHQUFnQixpQkFBSyxXQUFyQixFQUFFLFNBQVMsR0FBSyxpQkFBSyxVQUFWLENBQVU7QUFHakQsSUFBTSwyQkFBMkIsR0FBRztJQUNsQyxhQUFhO0lBQ2IsYUFBYTtJQUNiLHVCQUF1QjtJQUN2Qix3QkFBd0I7SUFDeEIsYUFBYTtJQUNiLHVDQUF1QztJQUN2QyxpQ0FBaUM7SUFDakMsMEJBQTBCO0lBQzFCLDZCQUE2QjtJQUM3Qiw2QkFBNkI7SUFDN0IsMkJBQTJCO0NBQzVCLENBQUE7QUFFRCxTQUFTLFNBQVMsQ0FBQyxRQUE2QixFQUFFLElBQVksRUFBRSxLQUEyQjtJQUN6RixJQUFNLFlBQVksR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDbkMsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLFVBQVUsT0FBd0I7UUFDakQsSUFBTSxJQUFJLEdBQUcsRUFBRSxDQUFBO1FBQ2YsSUFBTSxPQUFPLEdBQUcsRUFBRSxDQUFBO1FBQ2xCLEtBQUssQ0FBQyxPQUFPLENBQUMsVUFBQyxJQUFJO1lBQ1gsSUFBQSxLQUFtRCxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsRUFBdkUsWUFBWSxVQUFBLEVBQVcsZUFBZSxhQUFpQyxDQUFBO1lBQ3JGLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLFlBQVksQ0FBQyxDQUFB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RixHQUFHLEVBQUUsUUFBUSxFQUNiLGFBQWEsZUFBQSxJQUNiLEVBQUE7O3dCQVZJLFFBQVEsR0FBRyxTQVVmO3lDQUVPLFNBQVMsV0FBQSxJQUFLLFFBQVE7O3dCQUFRLFdBQU0sUUFBUSxDQUFDLElBQUksRUFBQTs0QkFBMUQsOENBQWlDLE9BQUksR0FBRSxTQUFtQixVQUFFOzs7O0tBQzdEO0lBQ0gsdUJBQUM7QUFBRCxDQUFDLEFBdlVELElBdVVDO0FBdlVZLDRDQUFnQjtBQXlVN0IsSUFBTSxVQUFVLEdBQXlCLEVBQUUsQ0FBQTtBQUUzQyxTQUFnQixXQUFXLENBQUMsTUFBK0I7SUFDekQsVUFBVSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLGdCQUFnQix1QkFDeEMsTUFBTSxLQUNULEtBQUssRUFBRSxJQUFJLElBQ1gsQ0FBQTtBQUNKLENBQUM7QUFMRCxrQ0FLQztBQUVELFNBQWdCLGlCQUFpQixDQUFDLEdBQVc7SUFDM0MsT0FBTyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUE7QUFDeEIsQ0FBQztBQUZELDhDQUVDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgREFUQV9WRVJTSU9OLCBnZXRTZGtWZXJzaW9uLCBnZXRCYXNlRW5kUG9pbnQsIGdldEVuZFBvaW50SW5mbyB9IGZyb20gJy4uL2NvbnN0YW50cy9jb21tb24nXG5pbXBvcnQge1xuICBJUmVxdWVzdE9wdGlvbnMsXG4gIFNES1JlcXVlc3RJbnRlcmZhY2UsXG4gIFJlc3BvbnNlT2JqZWN0LFxuICBJVXBsb2FkUmVxdWVzdE9wdGlvbnMsXG4gIElSZXF1ZXN0Q29uZmlnLFxuICBJRmV0Y2hPcHRpb25zLFxufSBmcm9tICdAY2xvdWRiYXNlL2FkYXB0ZXItaW50ZXJmYWNlJ1xuaW1wb3J0IHsgdXRpbHMsIGNvbnN0YW50cywgbGFuZ0V2ZW50IH0gZnJvbSAnQGNsb3VkYmFzZS91dGlsaXRpZXMnXG5pbXBvcnQgeyBFbmRQb2ludEtleSwgS1YgfSBmcm9tICdAY2xvdWRiYXNlL3R5cGVzJ1xuaW1wb3J0IHsgSUN1c3RvbVJlcU9wdHMgfSBmcm9tICdAY2xvdWRiYXNlL3R5cGVzL2Z1bmN0aW9ucydcbmltcG9ydCB7XG4gIElHZXRBY2Nlc3NUb2tlblJlc3VsdCxcbiAgSUNsb3VkYmFzZVJlcXVlc3RDb25maWcsXG4gIElBcHBlbmRlZFJlcXVlc3RJbmZvLFxuICBJUmVxdWVzdEJlZm9yZUhvb2ssXG59IGZyb20gJ0BjbG91ZGJhc2UvdHlwZXMvcmVxdWVzdCdcbmltcG9ydCB7IElDbG91ZGJhc2VDYWNoZSB9IGZyb20gJ0BjbG91ZGJhc2UvdHlwZXMvY2FjaGUnXG5pbXBvcnQgeyBnZXRMb2NhbENhY2hlIH0gZnJvbSAnLi9jYWNoZSdcbmltcG9ydCB7IFBsYXRmb3JtIH0gZnJvbSAnLi9hZGFwdGVyJ1xuY29uc3QgeyBFUlJPUlMgfSA9IGNvbnN0YW50c1xuY29uc3QgeyBnZW5TZXFJZCwgaXNGb3JtRGF0YSwgZm9ybWF0VXJsIH0gPSB1dGlsc1xuXG4vLyDkuIvpnaLlh6Dnp40gYWN0aW9uIOS4jemcgOimgSBhY2Nlc3MgdG9rZW5cbmNvbnN0IEFDVElPTlNfV0lUSE9VVF9BQ0NFU1NUT0tFTiA9IFtcbiAgJ2F1dGguZ2V0Snd0JyxcbiAgJ2F1dGgubG9nb3V0JyxcbiAgJ2F1dGguc2lnbkluV2l0aFRpY2tldCcsXG4gICdhdXRoLnNpZ25JbkFub255bW91c2x5JyxcbiAgJ2F1dGguc2lnbkluJyxcbiAgJ2F1dGguZmV0Y2hBY2Nlc3NUb2tlbldpdGhSZWZyZXNoVG9rZW4nLFxuICAnYXV0aC5zaWduVXBXaXRoRW1haWxBbmRQYXNzd29yZCcsXG4gICdhdXRoLmFjdGl2YXRlRW5kVXNlck1haWwnLFxuICAnYXV0aC5zZW5kUGFzc3dvcmRSZXNldEVtYWlsJyxcbiAgJ2F1dGgucmVzZXRQYXNzd29yZFdpdGhUb2tlbicsXG4gICdhdXRoLmlzVXNlcm5hbWVSZWdpc3RlcmVkJyxcbl1cblxuZnVuY3Rpb24gYmluZEhvb2tzKGluc3RhbmNlOiBTREtSZXF1ZXN0SW50ZXJmYWNlLCBuYW1lOiBzdHJpbmcsIGhvb2tzOiBJUmVxdWVzdEJlZm9yZUhvb2tbXSkge1xuICBjb25zdCBvcmlnaW5NZXRob2QgPSBpbnN0YW5jZVtuYW1lXVxuICBpbnN0YW5jZVtuYW1lXSA9IGZ1bmN0aW9uIChvcHRpb25zOiBJUmVxdWVzdE9wdGlvbnMpIHtcbiAgICBjb25zdCBkYXRhID0ge31cbiAgICBjb25zdCBoZWFkZXJzID0ge31cbiAgICBob29rcy5mb3JFYWNoKChob29rKSA9PiB7XG4gICAgICBjb25zdCB7IGRhdGE6IGFwcGVuZGVkRGF0YSwgaGVhZGVyczogYXBwZW5kZWRIZWFkZXJzIH0gPSBob29rLmNhbGwoaW5zdGFuY2UsIG9wdGlvbnMpXG4gICAgICBPYmplY3QuYXNzaWduKGRhdGEsIGFwcGVuZGVkRGF0YSlcbiAgICAgIE9iamVjdC5hc3NpZ24oaGVhZGVycywgYXBwZW5kZWRIZWFkZXJzKVxuICAgIH0pXG4gICAgY29uc3Qgb3JpZ2luRGF0YSA9IG9wdGlvbnMuZGF0YVxuICAgIG9yaWdpbkRhdGEgJiYgKCgpID0+IHtcbiAgICAgIGlmIChpc0Zvcm1EYXRhKG9yaWdpbkRhdGEpKSB7XG4gICAgICAgIE9iamVjdC5rZXlzKGRhdGEpLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgICAgIChvcmlnaW5EYXRhIGFzIEZvcm1EYXRhKS5hcHBlbmQoa2V5LCBkYXRhW2tleV0pXG4gICAgICAgIH0pXG4gICAgICAgIHJldHVyblxuICAgICAgfVxuICAgICAgb3B0aW9ucy5kYXRhID0ge1xuICAgICAgICAuLi5vcmlnaW5EYXRhLFxuICAgICAgICAuLi5kYXRhLFxuICAgICAgfVxuICAgIH0pKClcbiAgICBvcHRpb25zLmhlYWRlcnMgPSB7XG4gICAgICAuLi4ob3B0aW9ucy5oZWFkZXJzIHx8IHt9KSxcbiAgICAgIC4uLmhlYWRlcnMsXG4gICAgfVxuICAgIHJldHVybiAob3JpZ2luTWV0aG9kIGFzIEZ1bmN0aW9uKS5jYWxsKGluc3RhbmNlLCBvcHRpb25zKVxuICB9XG59XG5mdW5jdGlvbiBiZWZvcmVFYWNoKCk6IElBcHBlbmRlZFJlcXVlc3RJbmZvIHtcbiAgY29uc3Qgc2VxSWQgPSBnZW5TZXFJZCgpXG4gIHJldHVybiB7XG4gICAgZGF0YToge1xuICAgICAgc2VxSWQsXG4gICAgfSxcbiAgICBoZWFkZXJzOiB7XG4gICAgICAnWC1TREstVmVyc2lvbic6IGBAY2xvdWRiYXNlL2pzLXNkay8ke2dldFNka1ZlcnNpb24oKX1gLFxuICAgICAgJ3gtc2VxaWQnOiBzZXFJZCxcbiAgICB9LFxuICB9XG59XG5leHBvcnQgaW50ZXJmYWNlIElHYXRlV2F5T3B0aW9ucyB7XG4gIG5hbWU/OiBzdHJpbmdcbiAgZGF0YT86IGFueVxuICBwYXRoPzogc3RyaW5nXG4gIG1ldGhvZDogc3RyaW5nXG4gIGhlYWRlcj86IHt9XG4gIHVybD86IHN0cmluZ1xufVxuZXhwb3J0IGludGVyZmFjZSBJQ2xvdWRiYXNlUmVxdWVzdCB7XG4gIHBvc3Q6IChvcHRpb25zOiBJUmVxdWVzdE9wdGlvbnMpID0+IFByb21pc2U8UmVzcG9uc2VPYmplY3Q+XG4gIHVwbG9hZDogKG9wdGlvbnM6IElVcGxvYWRSZXF1ZXN0T3B0aW9ucykgPT4gUHJvbWlzZTxSZXNwb25zZU9iamVjdD5cbiAgZG93bmxvYWQ6IChvcHRpb25zOiBJUmVxdWVzdE9wdGlvbnMpID0+IFByb21pc2U8UmVzcG9uc2VPYmplY3Q+XG4gIHJlcXVlc3Q6IChhY3Rpb246IHN0cmluZywgcGFyYW1zOiBLVjxhbnk+LCBvcHRpb25zPzogS1Y8YW55PikgPT4gUHJvbWlzZTxSZXNwb25zZU9iamVjdD5cbiAgc2VuZDogKGFjdGlvbjogc3RyaW5nLCBkYXRhOiBLVjxhbnk+KSA9PiBQcm9taXNlPGFueT5cbiAgZmV0Y2g6IChvcHRpb25zOiBJRmV0Y2hPcHRpb25zKSA9PiBQcm9taXNlPFJlc3BvbnNlT2JqZWN0PlxufVxuXG4vKipcbiAqIEBjbGFzcyBDbG91ZGJhc2VSZXF1ZXN0XG4gKi9cbmV4cG9ydCBjbGFzcyBDbG91ZGJhc2VSZXF1ZXN0IGltcGxlbWVudHMgSUNsb3VkYmFzZVJlcXVlc3Qge1xuICBjb25maWc6IElDbG91ZGJhc2VSZXF1ZXN0Q29uZmlnXG4gIHByaXZhdGUgcmVxQ2xhc3M6IFNES1JlcXVlc3RJbnRlcmZhY2VcbiAgLy8g6K+35rGC5aSx6LSl5piv5ZCm5oqb5Ye6RXJyb3JcbiAgcHJpdmF0ZSB0aHJvd1doZW5SZXF1ZXN0RmFpbCA9IGZhbHNlXG4gIC8vIOaMgeS5heWMluacrOWcsOWtmOWCqFxuICBwcml2YXRlIGxvY2FsQ2FjaGU6IElDbG91ZGJhc2VDYWNoZVxuICAvKipcbiAgICog5Yid5aeL5YyWXG4gICAqIEBwYXJhbSBjb25maWdcbiAgICovXG4gIGNvbnN0cnVjdG9yKGNvbmZpZzogSUNsb3VkYmFzZVJlcXVlc3RDb25maWcgJiB7IHRocm93PzogYm9vbGVhbiB9KSB7XG4gICAgdGhpcy5jb25maWcgPSBjb25maWdcbiAgICBjb25zdCByZXFDb25maWc6IElSZXF1ZXN0Q29uZmlnID0ge1xuICAgICAgdGltZW91dDogdGhpcy5jb25maWcudGltZW91dCxcbiAgICAgIHRpbWVvdXRNc2c6IGBbQGNsb3VkYmFzZS9qcy1zZGtdIOivt+axguWcqCR7dGhpcy5jb25maWcudGltZW91dCAvIDEwMDB9c+WGheacquWujOaIkO+8jOW3suS4reaWrWAsXG4gICAgICByZXN0cmljdGVkTWV0aG9kczogWydwb3N0JywgJ3B1dCddLFxuICAgIH1cbiAgICB0aGlzLnJlcUNsYXNzID0gbmV3IFBsYXRmb3JtLmFkYXB0ZXIucmVxQ2xhc3MocmVxQ29uZmlnKVxuICAgIHRoaXMudGhyb3dXaGVuUmVxdWVzdEZhaWwgPSBjb25maWcudGhyb3cgfHwgZmFsc2VcbiAgICB0aGlzLmxvY2FsQ2FjaGUgPSBnZXRMb2NhbENhY2hlKHRoaXMuY29uZmlnLmVudilcblxuICAgIGlmICh0aGlzLmNvbmZpZy5lbmRQb2ludE1vZGUgIT09ICdHQVRFV0FZJykge1xuICAgICAgYmluZEhvb2tzKHRoaXMucmVxQ2xhc3MsICdwb3N0JywgW2JlZm9yZUVhY2hdKVxuICAgICAgYmluZEhvb2tzKHRoaXMucmVxQ2xhc3MsICd1cGxvYWQnLCBbYmVmb3JlRWFjaF0pXG4gICAgICBiaW5kSG9va3ModGhpcy5yZXFDbGFzcywgJ2Rvd25sb2FkJywgW2JlZm9yZUVhY2hdKVxuICAgIH1cblxuICAgIGxhbmdFdmVudC5idXMub24obGFuZ0V2ZW50LkxBTkdfQ0hBTkdFX0VWRU5ULCAocGFyYW1zKSA9PiB7XG4gICAgICB0aGlzLmNvbmZpZy5pMThuID0gcGFyYW1zLmRhdGE/LmkxOG4gfHwgdGhpcy5jb25maWcuaTE4blxuICAgIH0pXG4gIH1cblxuICBwdWJsaWMgYXN5bmMgZ2V0QWNjZXNzVG9rZW4odG9rZW4gPSBudWxsKSB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGVxZXFlcVxuICAgIGlmICh0b2tlbiAhPSBudWxsKSB7XG4gICAgICByZXR1cm4gdG9rZW5cbiAgICB9XG4gICAgY29uc3QgYXBwID0gdGhpcy5jb25maWcuX2Zyb21BcHBcblxuICAgIGlmICghYXBwLm9hdXRoSW5zdGFuY2UpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcigneW91IGNhblxcJ3QgcmVxdWVzdCB3aXRob3V0IGF1dGgnKVxuICAgIH1cblxuICAgIGNvbnN0IHsgb2F1dGhJbnN0YW5jZSB9ID0gYXBwXG4gICAgY29uc3Qgb2F1dGhDbGllbnQgPSBvYXV0aEluc3RhbmNlLm9hdXRoMmNsaWVudFxuICAgIHJldHVybiAoYXdhaXQgdGhpcy5nZXRPYXV0aEFjY2Vzc1Rva2VuVjIob2F1dGhDbGllbnQpKS5hY2Nlc3NUb2tlblxuICB9XG5cbiAgcHVibGljIGdldERlZmF1bHRIZWFkZXJzKCkge1xuICAgIHJldHVybiB7XG4gICAgICBbdGhpcy5jb25maWcuaTE4bj8uTEFOR19IRUFERVJfS0VZXTogdGhpcy5jb25maWcuaTE4bj8ubGFuZyxcbiAgICAgICdYLVNESy1WZXJzaW9uJzogYEBjbG91ZGJhc2UvanMtc2RrLyR7Z2V0U2RrVmVyc2lvbigpfWAsXG4gICAgfVxuICB9XG5cbiAgcHVibGljIGFzeW5jIHBvc3Qob3B0aW9uczogSVJlcXVlc3RPcHRpb25zLCBjdXN0b21SZXFPcHRzPzogSUN1c3RvbVJlcU9wdHMpOiBQcm9taXNlPFJlc3BvbnNlT2JqZWN0PiB7XG4gICAgY29uc3QgcmVzID0gYXdhaXQgdGhpcy5yZXFDbGFzcy5wb3N0KHtcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICBoZWFkZXJzOiB7IC4uLm9wdGlvbnMuaGVhZGVycywgLi4udGhpcy5nZXREZWZhdWx0SGVhZGVycygpIH0sXG4gICAgICBjdXN0b21SZXFPcHRzLFxuICAgIH0pXG4gICAgcmV0dXJuIHJlc1xuICB9XG4gIHB1YmxpYyBhc3luYyB1cGxvYWQob3B0aW9uczogSVVwbG9hZFJlcXVlc3RPcHRpb25zKTogUHJvbWlzZTxSZXNwb25zZU9iamVjdD4ge1xuICAgIGNvbnN0IHJlcyA9IGF3YWl0IHRoaXMucmVxQ2xhc3MudXBsb2FkKHsgLi4ub3B0aW9ucywgaGVhZGVyczogeyAuLi5vcHRpb25zLmhlYWRlcnMsIC4uLnRoaXMuZ2V0RGVmYXVsdEhlYWRlcnMoKSB9IH0pXG4gICAgcmV0dXJuIHJlc1xuICB9XG4gIHB1YmxpYyBhc3luYyBkb3dubG9hZChvcHRpb25zOiBJUmVxdWVzdE9wdGlvbnMpOiBQcm9taXNlPFJlc3BvbnNlT2JqZWN0PiB7XG4gICAgY29uc3QgcmVzID0gYXdhaXQgdGhpcy5yZXFDbGFzcy5kb3dubG9hZCh7XG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgaGVhZGVyczogeyAuLi5vcHRpb25zLmhlYWRlcnMsIC4uLnRoaXMuZ2V0RGVmYXVsdEhlYWRlcnMoKSB9LFxuICAgIH0pXG4gICAgcmV0dXJuIHJlc1xuICB9XG5cbiAgcHVibGljIGdldEJhc2VFbmRQb2ludChlbmRQb2ludEtleTogRW5kUG9pbnRLZXkgPSAnQ0xPVURfQVBJJykge1xuICAgIHJldHVybiBnZXRCYXNlRW5kUG9pbnQodGhpcy5jb25maWcuZW52LCBlbmRQb2ludEtleSlcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBnZXRPYXV0aEFjY2Vzc1Rva2VuVjIob2F1dGhDbGllbnQ6IGFueSk6IFByb21pc2U8SUdldEFjY2Vzc1Rva2VuUmVzdWx0PiB7XG4gICAgY29uc3QgdmFsaWRBY2Nlc3NUb2tlbiA9IGF3YWl0IG9hdXRoQ2xpZW50LmdldEFjY2Vzc1Rva2VuKClcbiAgICBjb25zdCBjcmVkZW50aWFscyA9IGF3YWl0IG9hdXRoQ2xpZW50LmdldENyZWRlbnRpYWxzKClcbiAgICByZXR1cm4ge1xuICAgICAgYWNjZXNzVG9rZW46IHZhbGlkQWNjZXNzVG9rZW4sXG4gICAgICBhY2Nlc3NUb2tlbkV4cGlyZTogbmV3IERhdGUoY3JlZGVudGlhbHMuZXhwaXJlc19hdCkuZ2V0VGltZSgpLFxuICAgIH1cbiAgfVxuXG4gIC8qIGVzbGludC1kaXNhYmxlIGNvbXBsZXhpdHkgKi9cbiAgcHVibGljIGFzeW5jIHJlcXVlc3QoXG4gICAgYWN0aW9uOiBzdHJpbmcsXG4gICAgcGFyYW1zOiBLVjxhbnk+LFxuICAgIG9wdGlvbnM/OiB7XG4gICAgICBvblVwbG9hZFByb2dyZXNzPzogRnVuY3Rpb25cbiAgICAgIHBhdGhuYW1lPzogc3RyaW5nXG4gICAgICBwYXJzZT86IGJvb2xlYW5cbiAgICAgIGluUXVlcnk/OiBLVjxhbnk+XG4gICAgICBzZWFyY2g/OiBzdHJpbmdcbiAgICAgIGRlZmF1bHRRdWVyeT86IEtWPGFueT5cbiAgICAgIGhlYWRlcnM/OiBLVjxzdHJpbmc+XG4gICAgfSxcbiAgICBjdXN0b21SZXFPcHRzPzogSUN1c3RvbVJlcU9wdHMsXG4gICk6IFByb21pc2U8UmVzcG9uc2VPYmplY3Q+IHtcbiAgICBjb25zdCB0Y2JUcmFjZUtleSA9IGB4LXRjYi10cmFjZV8ke3RoaXMuY29uZmlnLmVudn1gXG4gICAgbGV0IGNvbnRlbnRUeXBlID0gJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCdcblxuICAgIGNvbnN0IHRtcE9iajogS1Y8YW55PiA9IHtcbiAgICAgIGFjdGlvbixcbiAgICAgIGRhdGFWZXJzaW9uOiBEQVRBX1ZFUlNJT04sXG4gICAgICBlbnY6IHRoaXMuY29uZmlnLmVudixcbiAgICAgIC4uLnBhcmFtcyxcbiAgICB9XG5cbiAgICBpZiAoQUNUSU9OU19XSVRIT1VUX0FDQ0VTU1RPS0VOLmluZGV4T2YoYWN0aW9uKSA9PT0gLTEpIHtcbiAgICAgIGNvbnN0IGFwcCA9IHRoaXMuY29uZmlnLl9mcm9tQXBwXG5cbiAgICAgIGlmICghYXBwLm9hdXRoSW5zdGFuY2UpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCd5b3UgY2FuXFwndCByZXF1ZXN0IHdpdGhvdXQgYXV0aCcpXG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHsgb2F1dGhJbnN0YW5jZSB9ID0gYXBwXG4gICAgICBjb25zdCBvYXV0aENsaWVudCA9IG9hdXRoSW5zdGFuY2Uub2F1dGgyY2xpZW50XG4gICAgICB0bXBPYmouYWNjZXNzX3Rva2VuID0gKGF3YWl0IHRoaXMuZ2V0T2F1dGhBY2Nlc3NUb2tlblYyKG9hdXRoQ2xpZW50KSkuYWNjZXNzVG9rZW5cbiAgICB9XG5cbiAgICAvLyDmi7xib2R55ZKMY29udGVudC10eXBlXG4gICAgbGV0IHBheWxvYWRcbiAgICBpZiAoYWN0aW9uID09PSAnc3RvcmFnZS51cGxvYWRGaWxlJykge1xuICAgICAgcGF5bG9hZCA9IG5ldyBGb3JtRGF0YSgpXG4gICAgICBPYmplY3Qua2V5cyhwYXlsb2FkKS5mb3JFYWNoKChrZXkpID0+IHtcbiAgICAgICAgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChwYXlsb2FkLCBrZXkpICYmIHBheWxvYWRba2V5XSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgcGF5bG9hZC5hcHBlbmQoa2V5LCB0bXBPYmpba2V5XSlcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICAgIGNvbnRlbnRUeXBlID0gJ211bHRpcGFydC9mb3JtLWRhdGEnXG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnRlbnRUeXBlID0gJ2FwcGxpY2F0aW9uL2pzb247Y2hhcnNldD1VVEYtOCdcbiAgICAgIHBheWxvYWQgPSB7fVxuICAgICAgT2JqZWN0LmtleXModG1wT2JqKS5mb3JFYWNoKChrZXkpID0+IHtcbiAgICAgICAgaWYgKHRtcE9ialtrZXldICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICBwYXlsb2FkW2tleV0gPSB0bXBPYmpba2V5XVxuICAgICAgICB9XG4gICAgICB9KVxuICAgIH1cbiAgICBjb25zdCBvcHRzOiBhbnkgPSB7XG4gICAgICBoZWFkZXJzOiB7XG4gICAgICAgICdjb250ZW50LXR5cGUnOiBjb250ZW50VHlwZSxcbiAgICAgICAgLi4udGhpcy5nZXREZWZhdWx0SGVhZGVycygpLFxuICAgICAgICAuLi5vcHRpb25zPy5oZWFkZXJzLFxuICAgICAgfSxcbiAgICB9XG4gICAgaWYgKG9wdGlvbnM/Lm9uVXBsb2FkUHJvZ3Jlc3MpIHtcbiAgICAgIG9wdHMub25VcGxvYWRQcm9ncmVzcyA9IG9wdGlvbnMub25VcGxvYWRQcm9ncmVzc1xuICAgIH1cblxuICAgIGlmICh0aGlzLmNvbmZpZy5yZWdpb24pIHtcbiAgICAgIG9wdHMuaGVhZGVyc1snWC1UQ0ItUmVnaW9uJ10gPSB0aGlzLmNvbmZpZy5yZWdpb25cbiAgICB9XG5cbiAgICBjb25zdCB0cmFjZUhlYWRlciA9IHRoaXMubG9jYWxDYWNoZS5nZXRTdG9yZSh0Y2JUcmFjZUtleSlcbiAgICBpZiAodHJhY2VIZWFkZXIpIHtcbiAgICAgIG9wdHMuaGVhZGVyc1snWC1UQ0ItVHJhY2UnXSA9IHRyYWNlSGVhZGVyXG4gICAgfVxuXG4gICAgLy8g5Y+R5Ye66K+35rGCXG4gICAgLy8g5paw55qEIHVybCDpnIDopoHmkLrluKYgZW52IOWPguaVsOi/m+ihjCBDT1JTIOagoemqjFxuICAgIC8vIOivt+axgumTvuaOpeaUr+aMgea3u+WKoOWKqOaAgSBxdWVyeSDlj4LmlbDvvIzmlrnkvr/nlKjmiLfosIPor5XlrprkvY3or7fmsYJcbiAgICBjb25zdCBwYXJzZSA9IG9wdGlvbnM/LnBhcnNlICE9PSB1bmRlZmluZWQgPyBvcHRpb25zLnBhcnNlIDogcGFyYW1zLnBhcnNlXG4gICAgY29uc3QgaW5RdWVyeSA9IG9wdGlvbnM/LmluUXVlcnkgIT09IHVuZGVmaW5lZCA/IG9wdGlvbnMuaW5RdWVyeSA6IHBhcmFtcy5pblF1ZXJ5XG4gICAgY29uc3Qgc2VhcmNoID0gb3B0aW9ucz8uc2VhcmNoICE9PSB1bmRlZmluZWQgPyBvcHRpb25zLnNlYXJjaCA6IHBhcmFtcy5zZWFyY2hcblxuICAgIGxldCBmb3JtYXRRdWVyeTogUmVjb3JkPHN0cmluZywgYW55PiA9IHtcbiAgICAgIC4uLihvcHRpb25zPy5kZWZhdWx0UXVlcnkgfHwge30pLFxuICAgICAgZW52OiB0aGlzLmNvbmZpZy5lbnYsXG4gICAgfVxuICAgIC8vIOWwneivleino+aekOWTjeW6lOaVsOaNruS4uiBKU09OXG4gICAgcGFyc2UgJiYgKGZvcm1hdFF1ZXJ5LnBhcnNlID0gdHJ1ZSlcbiAgICBpblF1ZXJ5ICYmIChmb3JtYXRRdWVyeSA9IHtcbiAgICAgIC4uLmluUXVlcnksXG4gICAgICAuLi5mb3JtYXRRdWVyeSxcbiAgICB9KVxuXG4gICAgY29uc3QgZW5kUG9pbnRNb2RlID0gdGhpcy5jb25maWcuZW5kUG9pbnRNb2RlIHx8ICdDTE9VRF9BUEknXG5cbiAgICBjb25zdCB1cmwgPSBnZXRFbmRQb2ludEluZm8odGhpcy5jb25maWcuZW52LCBlbmRQb2ludE1vZGUpXG4gICAgbGV0IEJBU0VfVVJMID0gdXJsLmJhc2VVcmxcbiAgICBjb25zdCBQUk9UT0NPTCA9IHVybC5wcm90b2NvbFxuXG4gICAgaWYgKGVuZFBvaW50TW9kZSA9PT0gJ0dBVEVXQVknKSB7XG4gICAgICBpZiAoL14oKGRhdGFiYXNlKVxcLil8KGF1dGhcXC53c1dlYlNpZ24pLy50ZXN0KGFjdGlvbikpIHtcbiAgICAgICAgY29uc3QgdXJsID0gZ2V0RW5kUG9pbnRJbmZvKHRoaXMuY29uZmlnLmVudiwgJ0NMT1VEX0FQSScpXG4gICAgICAgIEJBU0VfVVJMID0gYCR7dXJsLmJhc2VVcmwubWF0Y2goL1xcL1xcLyhbXi8/I10qKS8pWzBdfS93ZWJgXG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8g55Sf5oiQ6K+35rGCIHVybFxuICAgIGxldCBuZXdVcmxcbiAgICBpZiAob3B0aW9ucy5wYXRobmFtZSkge1xuICAgICAgbmV3VXJsID0gZm9ybWF0VXJsKFxuICAgICAgICBQUk9UT0NPTCxcbiAgICAgICAgYCR7Z2V0QmFzZUVuZFBvaW50KHRoaXMuY29uZmlnLmVudiwgZW5kUG9pbnRNb2RlKT8ucmVwbGFjZSgvXmh0dHBzPzovLCAnJyl9LyR7b3B0aW9ucy5wYXRobmFtZX1gLFxuICAgICAgICBmb3JtYXRRdWVyeSxcbiAgICAgIClcbiAgICB9IGVsc2Uge1xuICAgICAgbmV3VXJsID0gZm9ybWF0VXJsKFBST1RPQ09MLCBCQVNFX1VSTCwgZm9ybWF0UXVlcnkpXG4gICAgfVxuXG4gICAgaWYgKHNlYXJjaCkge1xuICAgICAgbmV3VXJsICs9IHNlYXJjaFxuICAgIH1cblxuICAgIGNvbnN0IHJlczogUmVzcG9uc2VPYmplY3QgPSBhd2FpdCB0aGlzLnBvc3QoXG4gICAgICB7XG4gICAgICAgIHVybDogbmV3VXJsLFxuICAgICAgICBkYXRhOiBwYXlsb2FkLFxuICAgICAgICAuLi5vcHRzLFxuICAgICAgfSxcbiAgICAgIGN1c3RvbVJlcU9wdHMsXG4gICAgKVxuXG4gICAgLy8g5L+d5a2YIHRyYWNlIGhlYWRlclxuICAgIGNvbnN0IHJlc1RyYWNlSGVhZGVyID0gcmVzLmhlYWRlcj8uWyd4LXRjYi10cmFjZSddXG4gICAgaWYgKHJlc1RyYWNlSGVhZGVyKSB7XG4gICAgICB0aGlzLmxvY2FsQ2FjaGUuc2V0U3RvcmUodGNiVHJhY2VLZXksIHJlc1RyYWNlSGVhZGVyKVxuICAgIH1cblxuICAgIGlmICgoTnVtYmVyKHJlcy5zdGF0dXMpICE9PSAyMDAgJiYgTnVtYmVyKHJlcy5zdGF0dXNDb2RlKSAhPT0gMjAwKSB8fCAhcmVzLmRhdGEpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignbmV0d29yayByZXF1ZXN0IGVycm9yJylcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzXG4gIH1cblxuICBwdWJsaWMgYXN5bmMgZmV0Y2gob3B0aW9uczogSUZldGNoT3B0aW9ucyAmIHsgdG9rZW4/OiBzdHJpbmc7IGN1c3RvbVJlcU9wdHM/OiBJQ3VzdG9tUmVxT3B0cyB9LCk6IFByb21pc2U8UmVzcG9uc2VPYmplY3Q+IHtcbiAgICBjb25zdCB7IHRva2VuLCBoZWFkZXJzID0ge30sIC4uLnJlc3RPcHRpb25zIH0gPSBvcHRpb25zXG5cbiAgICBjb25zdCBkb0ZldGNoID0gYXN5bmMgKCkgPT4gdGhpcy5yZXFDbGFzcy5mZXRjaCh7XG4gICAgICBoZWFkZXJzOiB7XG4gICAgICAgIC8vICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicsXG4gICAgICAgIC8vICdYLVJlcXVlc3QtSWQnOiBgJHt1dGlscy5nZW5lcmF0ZVJlcXVlc3RJZCgpfWAsXG4gICAgICAgIC8vICdYLVJlcXVlc3QtVGltZXN0YW1wJzogYCR7RGF0ZS5ub3coKX1gLFxuICAgICAgICAnWC1TREstVmVyc2lvbic6IGBAY2xvdWRiYXNlL2pzLXNkay8ke2dldFNka1ZlcnNpb24oKX1gLFxuICAgICAgICBBdXRob3JpemF0aW9uOiBgQmVhcmVyICR7YXdhaXQgdGhpcy5nZXRBY2Nlc3NUb2tlbih0b2tlbil9YCxcbiAgICAgICAgLi4udGhpcy5nZXREZWZhdWx0SGVhZGVycygpLFxuICAgICAgICAuLi5oZWFkZXJzLFxuICAgICAgfSxcbiAgICAgIC4uLnJlc3RPcHRpb25zLFxuICAgIH0pXG5cbiAgICB0cnkge1xuICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgZG9GZXRjaCgpXG4gICAgICByZXR1cm4gcmVzdWx0XG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICBpZiAoZXJyPy5jb2RlID09PSAnQUNDRVNTX1RPS0VOX0VYUElSRUQnKSB7XG4gICAgICAgIC8vIOWmguaenOaYr+WboOS4uiB0b2tlbiDov4fmnJ/lpLHotKXvvIzliLcgdG9rZW4g5ZCO5YaN6K+V5LiA5qyhXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5jb25maWc/Ll9mcm9tQXBwPy5vYXV0aEluc3RhbmNlPy5hdXRoQXBpPy5yZWZyZXNoVG9rZW5Gb3JjZSAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgIHRocm93IGVyclxuICAgICAgICB9XG4gICAgICAgIGF3YWl0IHRoaXMuY29uZmlnPy5fZnJvbUFwcD8ub2F1dGhJbnN0YW5jZT8uYXV0aEFwaT8ucmVmcmVzaFRva2VuRm9yY2UoKVxuICAgICAgICByZXR1cm4gZG9GZXRjaCgpXG4gICAgICB9XG4gICAgICAvLyDlhbbku5bljp/lm6DlkJHkuIrmipvlh7pcblxuICAgICAgdGhyb3cgZXJyXG4gICAgfVxuICB9XG5cbiAgcHVibGljIGFzeW5jIHNlbmQoXG4gICAgYWN0aW9uOiBzdHJpbmcsXG4gICAgZGF0YTogS1Y8YW55PiA9IHt9LFxuICAgIG9wdGlvbnM6IEtWPGFueT4gPSB7fSxcbiAgICBjdXN0b21SZXFPcHRzPzogSUN1c3RvbVJlcU9wdHMsXG4gICk6IFByb21pc2U8YW55PiB7XG4gICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLnJlcXVlc3QoXG4gICAgICBhY3Rpb24sXG4gICAgICBkYXRhLFxuICAgICAgeyAuLi5vcHRpb25zLCBvblVwbG9hZFByb2dyZXNzOiBkYXRhLm9uVXBsb2FkUHJvZ3Jlc3MgfSxcbiAgICAgIGN1c3RvbVJlcU9wdHMsXG4gICAgKVxuXG4gICAgaWYgKHJlc3BvbnNlLmRhdGEuY29kZSAmJiB0aGlzLnRocm93V2hlblJlcXVlc3RGYWlsKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgICBjb2RlOiBFUlJPUlMuT1BFUkFUSU9OX0ZBSUwsXG4gICAgICAgIG1zZzogYFske3Jlc3BvbnNlLmRhdGEuY29kZX1dICR7cmVzcG9uc2UuZGF0YS5tZXNzYWdlfWAsXG4gICAgICB9KSwpXG4gICAgfVxuXG4gICAgcmV0dXJuIHJlc3BvbnNlLmRhdGFcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBnYXRlV2F5KG9wdGlvbnM6IElHYXRlV2F5T3B0aW9ucywgY3VzdG9tUmVxT3B0cz86IElDdXN0b21SZXFPcHRzKSB7XG4gICAgY29uc3QgeyB1cmwsIG5hbWUsIGRhdGEsIHBhdGggPSAnJywgbWV0aG9kLCBoZWFkZXIgPSB7fSB9ID0gb3B0aW9uc1xuXG4gICAgaWYgKCghbmFtZSB8fCAhcGF0aCkgJiYgIXVybCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKEpTT04uc3RyaW5naWZ5KHtcbiAgICAgICAgY29kZTogRVJST1JTLklOVkFMSURfUEFSQU1TLFxuICAgICAgICBtc2c6ICdbZ2F0ZVdheV0gaW52YWxpZCBmdW5jdGlvbiBuYW1lIG9yIHBhdGggb3IgdXJsJyxcbiAgICAgIH0pLClcbiAgICB9XG4gICAgbGV0IGpzb25EYXRhXG4gICAgdHJ5IHtcbiAgICAgIGpzb25EYXRhID0gZGF0YSA/IEpTT04uc3RyaW5naWZ5KGRhdGEpIDogJydcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgICBjb2RlOiBFUlJPUlMuSU5WQUxJRF9QQVJBTVMsXG4gICAgICAgIG1zZzogJ1tnYXRlV2F5XSBpbnZhbGlkIGRhdGEnLFxuICAgICAgfSksKVxuICAgIH1cblxuICAgIGNvbnN0IHJlcXVlc3RJZCA9IHV0aWxzLmdlbmVyYXRlUmVxdWVzdElkKClcbiAgICBjb25zdCB7IGJhc2VVcmwsIHByb3RvY29sIH0gPSBnZXRFbmRQb2ludEluZm8odGhpcy5jb25maWcuZW52LCAnR0FURVdBWScpXG4gICAgY29uc3QgZW5kcG9pbnQgPSBgJHtwcm90b2NvbH0ke2Jhc2VVcmx9JHt1cmwgfHwgYC8ke3BhdGh9LyR7bmFtZX1gfWBcbiAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHRoaXMuZmV0Y2goe1xuICAgICAgbWV0aG9kOiBtZXRob2QgfHwgJ1BPU1QnLFxuICAgICAgaGVhZGVyczoge1xuICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb247IGNoYXJzZXQ9dXRmLTgnLFxuICAgICAgICAnWC1SZXF1ZXN0LUlkJzogcmVxdWVzdElkLFxuICAgICAgICAuLi5oZWFkZXIsXG4gICAgICB9LFxuICAgICAgLi4uKFsnR0VUJywgJ0hFQUQnXS5pbmNsdWRlcyhtZXRob2Q/LnRvVXBwZXJDYXNlPy4oKSkgPyB7fSA6IHsgYm9keToganNvbkRhdGEgfSksXG4gICAgICB1cmw6IGVuZHBvaW50LFxuICAgICAgY3VzdG9tUmVxT3B0cyxcbiAgICB9KVxuXG4gICAgcmV0dXJuIHsgcmVxdWVzdElkLCAuLi5yZXNwb25zZSwgZGF0YTogYXdhaXQgcmVzcG9uc2UuZGF0YSB9XG4gIH1cbn1cblxuY29uc3QgcmVxdWVzdE1hcDogS1Y8Q2xvdWRiYXNlUmVxdWVzdD4gPSB7fVxuXG5leHBvcnQgZnVuY3Rpb24gaW5pdFJlcXVlc3QoY29uZmlnOiBJQ2xvdWRiYXNlUmVxdWVzdENvbmZpZykge1xuICByZXF1ZXN0TWFwW2NvbmZpZy5lbnZdID0gbmV3IENsb3VkYmFzZVJlcXVlc3Qoe1xuICAgIC4uLmNvbmZpZyxcbiAgICB0aHJvdzogdHJ1ZSxcbiAgfSlcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFJlcXVlc3RCeUVudklkKGVudjogc3RyaW5nKTogQ2xvdWRiYXNlUmVxdWVzdCB7XG4gIHJldHVybiByZXF1ZXN0TWFwW2Vudl1cbn1cbiJdfQ==
|
|
463
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWJzL3JlcXVlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDhDQUFtRztBQVNuRyxrREFBa0U7QUFVbEUsaUNBQXVDO0FBQ3ZDLHFDQUFvQztBQUM1QixJQUFBLE1BQU0sR0FBSyxxQkFBUyxPQUFkLENBQWM7QUFDcEIsSUFBQSxRQUFRLEdBQTRCLGlCQUFLLFNBQWpDLEVBQUUsVUFBVSxHQUFnQixpQkFBSyxXQUFyQixFQUFFLFNBQVMsR0FBSyxpQkFBSyxVQUFWLENBQVU7QUFHakQsSUFBTSwyQkFBMkIsR0FBRztJQUNsQyxhQUFhO0lBQ2IsYUFBYTtJQUNiLHVCQUF1QjtJQUN2Qix3QkFBd0I7SUFDeEIsYUFBYTtJQUNiLHVDQUF1QztJQUN2QyxpQ0FBaUM7SUFDakMsMEJBQTBCO0lBQzFCLDZCQUE2QjtJQUM3Qiw2QkFBNkI7SUFDN0IsMkJBQTJCO0NBQzVCLENBQUE7QUFFRCxTQUFTLFNBQVMsQ0FBQyxRQUE2QixFQUFFLElBQVksRUFBRSxLQUEyQjtJQUN6RixJQUFNLFlBQVksR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDbkMsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLFVBQVUsT0FBd0I7UUFDakQsSUFBTSxJQUFJLEdBQUcsRUFBRSxDQUFBO1FBQ2YsSUFBTSxPQUFPLEdBQUcsRUFBRSxDQUFBO1FBQ2xCLEtBQUssQ0FBQyxPQUFPLENBQUMsVUFBQyxJQUFJO1lBQ1gsSUFBQSxLQUFtRCxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsRUFBdkUsWUFBWSxVQUFBLEVBQVcsZUFBZSxhQUFpQyxDQUFBO1lBQ3JGLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLFlBQVksQ0FBQyxDQUFB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QUM7QUFMRCxrQ0FLQztBQUVELFNBQWdCLGlCQUFpQixDQUFDLEdBQVc7SUFDM0MsT0FBTyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUE7QUFDeEIsQ0FBQztBQUZELDhDQUVDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgREFUQV9WRVJTSU9OLCBnZXRTZGtWZXJzaW9uLCBnZXRCYXNlRW5kUG9pbnQsIGdldEVuZFBvaW50SW5mbyB9IGZyb20gJy4uL2NvbnN0YW50cy9jb21tb24nXG5pbXBvcnQge1xuICBJUmVxdWVzdE9wdGlvbnMsXG4gIFNES1JlcXVlc3RJbnRlcmZhY2UsXG4gIFJlc3BvbnNlT2JqZWN0LFxuICBJVXBsb2FkUmVxdWVzdE9wdGlvbnMsXG4gIElSZXF1ZXN0Q29uZmlnLFxuICBJRmV0Y2hPcHRpb25zLFxufSBmcm9tICdAY2xvdWRiYXNlL2FkYXB0ZXItaW50ZXJmYWNlJ1xuaW1wb3J0IHsgdXRpbHMsIGNvbnN0YW50cywgbGFuZ0V2ZW50IH0gZnJvbSAnQGNsb3VkYmFzZS91dGlsaXRpZXMnXG5pbXBvcnQgeyBFbmRQb2ludEtleSwgS1YgfSBmcm9tICdAY2xvdWRiYXNlL3R5cGVzJ1xuaW1wb3J0IHsgSUN1c3RvbVJlcU9wdHMgfSBmcm9tICdAY2xvdWRiYXNlL3R5cGVzL2Z1bmN0aW9ucydcbmltcG9ydCB7XG4gIElHZXRBY2Nlc3NUb2tlblJlc3VsdCxcbiAgSUNsb3VkYmFzZVJlcXVlc3RDb25maWcsXG4gIElBcHBlbmRlZFJlcXVlc3RJbmZvLFxuICBJUmVxdWVzdEJlZm9yZUhvb2ssXG59IGZyb20gJ0BjbG91ZGJhc2UvdHlwZXMvcmVxdWVzdCdcbmltcG9ydCB7IElDbG91ZGJhc2VDYWNoZSB9IGZyb20gJ0BjbG91ZGJhc2UvdHlwZXMvY2FjaGUnXG5pbXBvcnQgeyBnZXRMb2NhbENhY2hlIH0gZnJvbSAnLi9jYWNoZSdcbmltcG9ydCB7IFBsYXRmb3JtIH0gZnJvbSAnLi9hZGFwdGVyJ1xuY29uc3QgeyBFUlJPUlMgfSA9IGNvbnN0YW50c1xuY29uc3QgeyBnZW5TZXFJZCwgaXNGb3JtRGF0YSwgZm9ybWF0VXJsIH0gPSB1dGlsc1xuXG4vLyDkuIvpnaLlh6Dnp40gYWN0aW9uIOS4jemcgOimgSBhY2Nlc3MgdG9rZW5cbmNvbnN0IEFDVElPTlNfV0lUSE9VVF9BQ0NFU1NUT0tFTiA9IFtcbiAgJ2F1dGguZ2V0Snd0JyxcbiAgJ2F1dGgubG9nb3V0JyxcbiAgJ2F1dGguc2lnbkluV2l0aFRpY2tldCcsXG4gICdhdXRoLnNpZ25JbkFub255bW91c2x5JyxcbiAgJ2F1dGguc2lnbkluJyxcbiAgJ2F1dGguZmV0Y2hBY2Nlc3NUb2tlbldpdGhSZWZyZXNoVG9rZW4nLFxuICAnYXV0aC5zaWduVXBXaXRoRW1haWxBbmRQYXNzd29yZCcsXG4gICdhdXRoLmFjdGl2YXRlRW5kVXNlck1haWwnLFxuICAnYXV0aC5zZW5kUGFzc3dvcmRSZXNldEVtYWlsJyxcbiAgJ2F1dGgucmVzZXRQYXNzd29yZFdpdGhUb2tlbicsXG4gICdhdXRoLmlzVXNlcm5hbWVSZWdpc3RlcmVkJyxcbl1cblxuZnVuY3Rpb24gYmluZEhvb2tzKGluc3RhbmNlOiBTREtSZXF1ZXN0SW50ZXJmYWNlLCBuYW1lOiBzdHJpbmcsIGhvb2tzOiBJUmVxdWVzdEJlZm9yZUhvb2tbXSkge1xuICBjb25zdCBvcmlnaW5NZXRob2QgPSBpbnN0YW5jZVtuYW1lXVxuICBpbnN0YW5jZVtuYW1lXSA9IGZ1bmN0aW9uIChvcHRpb25zOiBJUmVxdWVzdE9wdGlvbnMpIHtcbiAgICBjb25zdCBkYXRhID0ge31cbiAgICBjb25zdCBoZWFkZXJzID0ge31cbiAgICBob29rcy5mb3JFYWNoKChob29rKSA9PiB7XG4gICAgICBjb25zdCB7IGRhdGE6IGFwcGVuZGVkRGF0YSwgaGVhZGVyczogYXBwZW5kZWRIZWFkZXJzIH0gPSBob29rLmNhbGwoaW5zdGFuY2UsIG9wdGlvbnMpXG4gICAgICBPYmplY3QuYXNzaWduKGRhdGEsIGFwcGVuZGVkRGF0YSlcbiAgICAgIE9iamVjdC5hc3NpZ24oaGVhZGVycywgYXBwZW5kZWRIZWFkZXJzKVxuICAgIH0pXG4gICAgY29uc3Qgb3JpZ2luRGF0YSA9IG9wdGlvbnMuZGF0YVxuICAgIG9yaWdpbkRhdGFcbiAgICAgICYmICgoKSA9PiB7XG4gICAgICAgIGlmIChpc0Zvcm1EYXRhKG9yaWdpbkRhdGEpKSB7XG4gICAgICAgICAgT2JqZWN0LmtleXMoZGF0YSkuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgICAgICAgICAob3JpZ2luRGF0YSBhcyBGb3JtRGF0YSkuYXBwZW5kKGtleSwgZGF0YVtrZXldKVxuICAgICAgICAgIH0pXG4gICAgICAgICAgcmV0dXJuXG4gICAgICAgIH1cbiAgICAgICAgb3B0aW9ucy5kYXRhID0ge1xuICAgICAgICAgIC4uLm9yaWdpbkRhdGEsXG4gICAgICAgICAgLi4uZGF0YSxcbiAgICAgICAgfVxuICAgICAgfSkoKVxuICAgIG9wdGlvbnMuaGVhZGVycyA9IHtcbiAgICAgIC4uLihvcHRpb25zLmhlYWRlcnMgfHwge30pLFxuICAgICAgLi4uaGVhZGVycyxcbiAgICB9XG4gICAgcmV0dXJuIChvcmlnaW5NZXRob2QgYXMgRnVuY3Rpb24pLmNhbGwoaW5zdGFuY2UsIG9wdGlvbnMpXG4gIH1cbn1cbmZ1bmN0aW9uIGJlZm9yZUVhY2goKTogSUFwcGVuZGVkUmVxdWVzdEluZm8ge1xuICBjb25zdCBzZXFJZCA9IGdlblNlcUlkKClcbiAgcmV0dXJuIHtcbiAgICBkYXRhOiB7XG4gICAgICBzZXFJZCxcbiAgICB9LFxuICAgIGhlYWRlcnM6IHtcbiAgICAgICdYLVNESy1WZXJzaW9uJzogYEBjbG91ZGJhc2UvanMtc2RrLyR7Z2V0U2RrVmVyc2lvbigpfWAsXG4gICAgICAneC1zZXFpZCc6IHNlcUlkLFxuICAgIH0sXG4gIH1cbn1cbmV4cG9ydCBpbnRlcmZhY2UgSUdhdGVXYXlPcHRpb25zIHtcbiAgbmFtZT86IHN0cmluZ1xuICBkYXRhPzogYW55XG4gIHBhdGg/OiBzdHJpbmdcbiAgbWV0aG9kOiBzdHJpbmdcbiAgaGVhZGVyPzoge31cbiAgdXJsPzogc3RyaW5nXG59XG5leHBvcnQgaW50ZXJmYWNlIElDbG91ZGJhc2VSZXF1ZXN0IHtcbiAgcG9zdDogKG9wdGlvbnM6IElSZXF1ZXN0T3B0aW9ucykgPT4gUHJvbWlzZTxSZXNwb25zZU9iamVjdD5cbiAgdXBsb2FkOiAob3B0aW9uczogSVVwbG9hZFJlcXVlc3RPcHRpb25zKSA9PiBQcm9taXNlPFJlc3BvbnNlT2JqZWN0PlxuICBkb3dubG9hZDogKG9wdGlvbnM6IElSZXF1ZXN0T3B0aW9ucykgPT4gUHJvbWlzZTxSZXNwb25zZU9iamVjdD5cbiAgcmVxdWVzdDogKGFjdGlvbjogc3RyaW5nLCBwYXJhbXM6IEtWPGFueT4sIG9wdGlvbnM/OiBLVjxhbnk+KSA9PiBQcm9taXNlPFJlc3BvbnNlT2JqZWN0PlxuICBzZW5kOiAoYWN0aW9uOiBzdHJpbmcsIGRhdGE6IEtWPGFueT4pID0+IFByb21pc2U8YW55PlxuICBmZXRjaDogKG9wdGlvbnM6IElGZXRjaE9wdGlvbnMpID0+IFByb21pc2U8UmVzcG9uc2VPYmplY3Q+XG59XG5cbi8qKlxuICogQGNsYXNzIENsb3VkYmFzZVJlcXVlc3RcbiAqL1xuZXhwb3J0IGNsYXNzIENsb3VkYmFzZVJlcXVlc3QgaW1wbGVtZW50cyBJQ2xvdWRiYXNlUmVxdWVzdCB7XG4gIGNvbmZpZzogSUNsb3VkYmFzZVJlcXVlc3RDb25maWdcbiAgcHJpdmF0ZSByZXFDbGFzczogU0RLUmVxdWVzdEludGVyZmFjZVxuICAvLyDor7fmsYLlpLHotKXmmK/lkKbmipvlh7pFcnJvclxuICBwcml2YXRlIHRocm93V2hlblJlcXVlc3RGYWlsID0gZmFsc2VcbiAgLy8g5oyB5LmF5YyW5pys5Zyw5a2Y5YKoXG4gIHByaXZhdGUgbG9jYWxDYWNoZTogSUNsb3VkYmFzZUNhY2hlXG4gIC8qKlxuICAgKiDliJ3lp4vljJZcbiAgICogQHBhcmFtIGNvbmZpZ1xuICAgKi9cbiAgY29uc3RydWN0b3IoY29uZmlnOiBJQ2xvdWRiYXNlUmVxdWVzdENvbmZpZyAmIHsgdGhyb3c/OiBib29sZWFuIH0pIHtcbiAgICB0aGlzLmNvbmZpZyA9IGNvbmZpZ1xuICAgIGNvbnN0IHJlcUNvbmZpZzogSVJlcXVlc3RDb25maWcgPSB7XG4gICAgICB0aW1lb3V0OiB0aGlzLmNvbmZpZy50aW1lb3V0LFxuICAgICAgdGltZW91dE1zZzogYFtAY2xvdWRiYXNlL2pzLXNka10g6K+35rGC5ZyoJHt0aGlzLmNvbmZpZy50aW1lb3V0IC8gMTAwMH1z5YaF5pyq5a6M5oiQ77yM5bey5Lit5patYCxcbiAgICAgIHJlc3RyaWN0ZWRNZXRob2RzOiBbJ3Bvc3QnLCAncHV0J10sXG4gICAgfVxuICAgIHRoaXMucmVxQ2xhc3MgPSBuZXcgUGxhdGZvcm0uYWRhcHRlci5yZXFDbGFzcyhyZXFDb25maWcpXG4gICAgdGhpcy50aHJvd1doZW5SZXF1ZXN0RmFpbCA9IGNvbmZpZy50aHJvdyB8fCBmYWxzZVxuICAgIHRoaXMubG9jYWxDYWNoZSA9IGdldExvY2FsQ2FjaGUodGhpcy5jb25maWcuZW52KVxuXG4gICAgaWYgKHRoaXMuY29uZmlnLmVuZFBvaW50TW9kZSAhPT0gJ0dBVEVXQVknKSB7XG4gICAgICBiaW5kSG9va3ModGhpcy5yZXFDbGFzcywgJ3Bvc3QnLCBbYmVmb3JlRWFjaF0pXG4gICAgICBiaW5kSG9va3ModGhpcy5yZXFDbGFzcywgJ3VwbG9hZCcsIFtiZWZvcmVFYWNoXSlcbiAgICAgIGJpbmRIb29rcyh0aGlzLnJlcUNsYXNzLCAnZG93bmxvYWQnLCBbYmVmb3JlRWFjaF0pXG4gICAgfVxuXG4gICAgbGFuZ0V2ZW50LmJ1cy5vbihsYW5nRXZlbnQuTEFOR19DSEFOR0VfRVZFTlQsIChwYXJhbXMpID0+IHtcbiAgICAgIHRoaXMuY29uZmlnLmkxOG4gPSBwYXJhbXMuZGF0YT8uaTE4biB8fCB0aGlzLmNvbmZpZy5pMThuXG4gICAgfSlcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBnZXRBY2Nlc3NUb2tlbih0b2tlbiA9IG51bGwpIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZXFlcWVxXG4gICAgaWYgKHRva2VuICE9IG51bGwpIHtcbiAgICAgIHJldHVybiB0b2tlblxuICAgIH1cbiAgICBjb25zdCBhcHAgPSB0aGlzLmNvbmZpZy5fZnJvbUFwcFxuXG4gICAgaWYgKCFhcHAub2F1dGhJbnN0YW5jZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCd5b3UgY2FuXFwndCByZXF1ZXN0IHdpdGhvdXQgYXV0aCcpXG4gICAgfVxuXG4gICAgY29uc3QgeyBvYXV0aEluc3RhbmNlIH0gPSBhcHBcbiAgICBjb25zdCBvYXV0aENsaWVudCA9IG9hdXRoSW5zdGFuY2Uub2F1dGgyY2xpZW50XG4gICAgcmV0dXJuIChhd2FpdCB0aGlzLmdldE9hdXRoQWNjZXNzVG9rZW5WMihvYXV0aENsaWVudCkpLmFjY2Vzc1Rva2VuXG4gIH1cblxuICBwdWJsaWMgZ2V0RGVmYXVsdEhlYWRlcnMoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIFt0aGlzLmNvbmZpZy5pMThuPy5MQU5HX0hFQURFUl9LRVldOiB0aGlzLmNvbmZpZy5pMThuPy5sYW5nLFxuICAgICAgJ1gtU0RLLVZlcnNpb24nOiBgQGNsb3VkYmFzZS9qcy1zZGsvJHtnZXRTZGtWZXJzaW9uKCl9YCxcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgcG9zdChvcHRpb25zOiBJUmVxdWVzdE9wdGlvbnMsIGN1c3RvbVJlcU9wdHM/OiBJQ3VzdG9tUmVxT3B0cyk6IFByb21pc2U8UmVzcG9uc2VPYmplY3Q+IHtcbiAgICBjb25zdCByZXMgPSBhd2FpdCB0aGlzLnJlcUNsYXNzLnBvc3Qoe1xuICAgICAgLi4ub3B0aW9ucyxcbiAgICAgIGhlYWRlcnM6IHsgLi4ub3B0aW9ucy5oZWFkZXJzLCAuLi50aGlzLmdldERlZmF1bHRIZWFkZXJzKCkgfSxcbiAgICAgIGN1c3RvbVJlcU9wdHMsXG4gICAgfSlcbiAgICByZXR1cm4gcmVzXG4gIH1cbiAgcHVibGljIGFzeW5jIHVwbG9hZChvcHRpb25zOiBJVXBsb2FkUmVxdWVzdE9wdGlvbnMpOiBQcm9taXNlPFJlc3BvbnNlT2JqZWN0PiB7XG4gICAgY29uc3QgcmVzID0gYXdhaXQgdGhpcy5yZXFDbGFzcy51cGxvYWQoeyAuLi5vcHRpb25zLCBoZWFkZXJzOiB7IC4uLm9wdGlvbnMuaGVhZGVycywgLi4udGhpcy5nZXREZWZhdWx0SGVhZGVycygpIH0gfSlcbiAgICByZXR1cm4gcmVzXG4gIH1cbiAgcHVibGljIGFzeW5jIGRvd25sb2FkKG9wdGlvbnM6IElSZXF1ZXN0T3B0aW9ucyk6IFByb21pc2U8UmVzcG9uc2VPYmplY3Q+IHtcbiAgICBjb25zdCByZXMgPSBhd2FpdCB0aGlzLnJlcUNsYXNzLmRvd25sb2FkKHtcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICBoZWFkZXJzOiB7IC4uLm9wdGlvbnMuaGVhZGVycywgLi4udGhpcy5nZXREZWZhdWx0SGVhZGVycygpIH0sXG4gICAgfSlcbiAgICByZXR1cm4gcmVzXG4gIH1cblxuICBwdWJsaWMgZ2V0QmFzZUVuZFBvaW50KGVuZFBvaW50S2V5OiBFbmRQb2ludEtleSA9ICdDTE9VRF9BUEknKSB7XG4gICAgcmV0dXJuIGdldEJhc2VFbmRQb2ludCh0aGlzLmNvbmZpZy5lbnYsIGVuZFBvaW50S2V5KVxuICB9XG5cbiAgcHVibGljIGFzeW5jIGdldE9hdXRoQWNjZXNzVG9rZW5WMihvYXV0aENsaWVudDogYW55KTogUHJvbWlzZTxJR2V0QWNjZXNzVG9rZW5SZXN1bHQ+IHtcbiAgICBjb25zdCB2YWxpZEFjY2Vzc1Rva2VuID0gYXdhaXQgb2F1dGhDbGllbnQuZ2V0QWNjZXNzVG9rZW4oKVxuICAgIGNvbnN0IGNyZWRlbnRpYWxzID0gYXdhaXQgb2F1dGhDbGllbnQuZ2V0Q3JlZGVudGlhbHMoKVxuICAgIHJldHVybiB7XG4gICAgICBhY2Nlc3NUb2tlbjogdmFsaWRBY2Nlc3NUb2tlbixcbiAgICAgIGFjY2Vzc1Rva2VuRXhwaXJlOiBuZXcgRGF0ZShjcmVkZW50aWFscy5leHBpcmVzX2F0KS5nZXRUaW1lKCksXG4gICAgfVxuICB9XG5cbiAgLyogZXNsaW50LWRpc2FibGUgY29tcGxleGl0eSAqL1xuICBwdWJsaWMgYXN5bmMgcmVxdWVzdChcbiAgICBhY3Rpb246IHN0cmluZyxcbiAgICBwYXJhbXM6IEtWPGFueT4sXG4gICAgb3B0aW9ucz86IHtcbiAgICAgIG9uVXBsb2FkUHJvZ3Jlc3M/OiBGdW5jdGlvblxuICAgICAgcGF0aG5hbWU/OiBzdHJpbmdcbiAgICAgIHBhcnNlPzogYm9vbGVhblxuICAgICAgaW5RdWVyeT86IEtWPGFueT5cbiAgICAgIHNlYXJjaD86IHN0cmluZ1xuICAgICAgZGVmYXVsdFF1ZXJ5PzogS1Y8YW55PlxuICAgICAgaGVhZGVycz86IEtWPHN0cmluZz5cbiAgICB9LFxuICAgIGN1c3RvbVJlcU9wdHM/OiBJQ3VzdG9tUmVxT3B0cyxcbiAgKTogUHJvbWlzZTxSZXNwb25zZU9iamVjdD4ge1xuICAgIGNvbnN0IHRjYlRyYWNlS2V5ID0gYHgtdGNiLXRyYWNlXyR7dGhpcy5jb25maWcuZW52fWBcbiAgICBsZXQgY29udGVudFR5cGUgPSAnYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkJ1xuXG4gICAgY29uc3QgdG1wT2JqOiBLVjxhbnk+ID0ge1xuICAgICAgYWN0aW9uLFxuICAgICAgZGF0YVZlcnNpb246IERBVEFfVkVSU0lPTixcbiAgICAgIGVudjogdGhpcy5jb25maWcuZW52LFxuICAgICAgLi4ucGFyYW1zLFxuICAgIH1cblxuICAgIGlmIChBQ1RJT05TX1dJVEhPVVRfQUNDRVNTVE9LRU4uaW5kZXhPZihhY3Rpb24pID09PSAtMSkge1xuICAgICAgY29uc3QgYXBwID0gdGhpcy5jb25maWcuX2Zyb21BcHBcblxuICAgICAgaWYgKCFhcHAub2F1dGhJbnN0YW5jZSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ3lvdSBjYW5cXCd0IHJlcXVlc3Qgd2l0aG91dCBhdXRoJylcbiAgICAgIH1cblxuICAgICAgY29uc3QgeyBvYXV0aEluc3RhbmNlIH0gPSBhcHBcbiAgICAgIGNvbnN0IG9hdXRoQ2xpZW50ID0gb2F1dGhJbnN0YW5jZS5vYXV0aDJjbGllbnRcbiAgICAgIHRtcE9iai5hY2Nlc3NfdG9rZW4gPSAoYXdhaXQgdGhpcy5nZXRPYXV0aEFjY2Vzc1Rva2VuVjIob2F1dGhDbGllbnQpKS5hY2Nlc3NUb2tlblxuICAgIH1cblxuICAgIC8vIOaLvGJvZHnlkoxjb250ZW50LXR5cGVcbiAgICBsZXQgcGF5bG9hZFxuICAgIGlmIChhY3Rpb24gPT09ICdzdG9yYWdlLnVwbG9hZEZpbGUnKSB7XG4gICAgICBwYXlsb2FkID0gbmV3IEZvcm1EYXRhKClcbiAgICAgIE9iamVjdC5rZXlzKHBheWxvYWQpLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgICBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHBheWxvYWQsIGtleSkgJiYgcGF5bG9hZFtrZXldICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICBwYXlsb2FkLmFwcGVuZChrZXksIHRtcE9ialtrZXldKVxuICAgICAgICB9XG4gICAgICB9KVxuICAgICAgY29udGVudFR5cGUgPSAnbXVsdGlwYXJ0L2Zvcm0tZGF0YSdcbiAgICB9IGVsc2Uge1xuICAgICAgY29udGVudFR5cGUgPSAnYXBwbGljYXRpb24vanNvbjtjaGFyc2V0PVVURi04J1xuICAgICAgcGF5bG9hZCA9IHt9XG4gICAgICBPYmplY3Qua2V5cyh0bXBPYmopLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgICBpZiAodG1wT2JqW2tleV0gIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIHBheWxvYWRba2V5XSA9IHRtcE9ialtrZXldXG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgfVxuICAgIGNvbnN0IG9wdHM6IGFueSA9IHtcbiAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgJ2NvbnRlbnQtdHlwZSc6IGNvbnRlbnRUeXBlLFxuICAgICAgICAuLi50aGlzLmdldERlZmF1bHRIZWFkZXJzKCksXG4gICAgICAgIC4uLm9wdGlvbnM/LmhlYWRlcnMsXG4gICAgICB9LFxuICAgIH1cbiAgICBpZiAob3B0aW9ucz8ub25VcGxvYWRQcm9ncmVzcykge1xuICAgICAgb3B0cy5vblVwbG9hZFByb2dyZXNzID0gb3B0aW9ucy5vblVwbG9hZFByb2dyZXNzXG4gICAgfVxuXG4gICAgaWYgKHRoaXMuY29uZmlnLnJlZ2lvbikge1xuICAgICAgb3B0cy5oZWFkZXJzWydYLVRDQi1SZWdpb24nXSA9IHRoaXMuY29uZmlnLnJlZ2lvblxuICAgIH1cblxuICAgIGNvbnN0IHRyYWNlSGVhZGVyID0gdGhpcy5sb2NhbENhY2hlLmdldFN0b3JlKHRjYlRyYWNlS2V5KVxuICAgIGlmICh0cmFjZUhlYWRlcikge1xuICAgICAgb3B0cy5oZWFkZXJzWydYLVRDQi1UcmFjZSddID0gdHJhY2VIZWFkZXJcbiAgICB9XG5cbiAgICAvLyDlj5Hlh7ror7fmsYJcbiAgICAvLyDmlrDnmoQgdXJsIOmcgOimgeaQuuW4piBlbnYg5Y+C5pWw6L+b6KGMIENPUlMg5qCh6aqMXG4gICAgLy8g6K+35rGC6ZO+5o6l5pSv5oyB5re75Yqg5Yqo5oCBIHF1ZXJ5IOWPguaVsO+8jOaWueS+v+eUqOaIt+iwg+ivleWumuS9jeivt+axglxuICAgIGNvbnN0IHBhcnNlID0gb3B0aW9ucz8ucGFyc2UgIT09IHVuZGVmaW5lZCA/IG9wdGlvbnMucGFyc2UgOiBwYXJhbXMucGFyc2VcbiAgICBjb25zdCBpblF1ZXJ5ID0gb3B0aW9ucz8uaW5RdWVyeSAhPT0gdW5kZWZpbmVkID8gb3B0aW9ucy5pblF1ZXJ5IDogcGFyYW1zLmluUXVlcnlcbiAgICBjb25zdCBzZWFyY2ggPSBvcHRpb25zPy5zZWFyY2ggIT09IHVuZGVmaW5lZCA/IG9wdGlvbnMuc2VhcmNoIDogcGFyYW1zLnNlYXJjaFxuXG4gICAgbGV0IGZvcm1hdFF1ZXJ5OiBSZWNvcmQ8c3RyaW5nLCBhbnk+ID0ge1xuICAgICAgLi4uKG9wdGlvbnM/LmRlZmF1bHRRdWVyeSB8fCB7fSksXG4gICAgICBlbnY6IHRoaXMuY29uZmlnLmVudixcbiAgICB9XG4gICAgLy8g5bCd6K+V6Kej5p6Q5ZON5bqU5pWw5o2u5Li6IEpTT05cbiAgICBwYXJzZSAmJiAoZm9ybWF0UXVlcnkucGFyc2UgPSB0cnVlKVxuICAgIGluUXVlcnlcbiAgICAgICYmIChmb3JtYXRRdWVyeSA9IHtcbiAgICAgICAgLi4uaW5RdWVyeSxcbiAgICAgICAgLi4uZm9ybWF0UXVlcnksXG4gICAgICB9KVxuXG4gICAgY29uc3QgZW5kUG9pbnRNb2RlID0gdGhpcy5jb25maWcuZW5kUG9pbnRNb2RlIHx8ICdDTE9VRF9BUEknXG5cbiAgICBjb25zdCB1cmwgPSBnZXRFbmRQb2ludEluZm8odGhpcy5jb25maWcuZW52LCBlbmRQb2ludE1vZGUpXG4gICAgbGV0IEJBU0VfVVJMID0gdXJsLmJhc2VVcmxcbiAgICBjb25zdCBQUk9UT0NPTCA9IHVybC5wcm90b2NvbFxuXG4gICAgaWYgKGVuZFBvaW50TW9kZSA9PT0gJ0dBVEVXQVknKSB7XG4gICAgICBpZiAoL14oKGRhdGFiYXNlKVxcLil8KGF1dGhcXC53c1dlYlNpZ24pLy50ZXN0KGFjdGlvbikpIHtcbiAgICAgICAgY29uc3QgdXJsID0gZ2V0RW5kUG9pbnRJbmZvKHRoaXMuY29uZmlnLmVudiwgJ0NMT1VEX0FQSScpXG4gICAgICAgIEJBU0VfVVJMID0gYCR7dXJsLmJhc2VVcmwubWF0Y2goL1xcL1xcLyhbXi8/I10qKS8pWzBdfS93ZWJgXG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8g55Sf5oiQ6K+35rGCIHVybFxuICAgIGxldCBuZXdVcmxcbiAgICBpZiAob3B0aW9ucy5wYXRobmFtZSkge1xuICAgICAgbmV3VXJsID0gZm9ybWF0VXJsKFxuICAgICAgICBQUk9UT0NPTCxcbiAgICAgICAgYCR7Z2V0QmFzZUVuZFBvaW50KHRoaXMuY29uZmlnLmVudiwgZW5kUG9pbnRNb2RlKT8ucmVwbGFjZSgvXmh0dHBzPzovLCAnJyl9LyR7b3B0aW9ucy5wYXRobmFtZX1gLFxuICAgICAgICBmb3JtYXRRdWVyeSxcbiAgICAgIClcbiAgICB9IGVsc2Uge1xuICAgICAgbmV3VXJsID0gZm9ybWF0VXJsKFBST1RPQ09MLCBCQVNFX1VSTCwgZm9ybWF0UXVlcnkpXG4gICAgfVxuXG4gICAgaWYgKHNlYXJjaCkge1xuICAgICAgbmV3VXJsICs9IHNlYXJjaFxuICAgIH1cblxuICAgIGNvbnN0IHJlczogUmVzcG9uc2VPYmplY3QgPSBhd2FpdCB0aGlzLnBvc3QoXG4gICAgICB7XG4gICAgICAgIHVybDogbmV3VXJsLFxuICAgICAgICBkYXRhOiBwYXlsb2FkLFxuICAgICAgICAuLi5vcHRzLFxuICAgICAgfSxcbiAgICAgIGN1c3RvbVJlcU9wdHMsXG4gICAgKVxuXG4gICAgLy8g5L+d5a2YIHRyYWNlIGhlYWRlclxuICAgIGNvbnN0IHJlc1RyYWNlSGVhZGVyID0gcmVzLmhlYWRlcj8uWyd4LXRjYi10cmFjZSddXG4gICAgaWYgKHJlc1RyYWNlSGVhZGVyKSB7XG4gICAgICB0aGlzLmxvY2FsQ2FjaGUuc2V0U3RvcmUodGNiVHJhY2VLZXksIHJlc1RyYWNlSGVhZGVyKVxuICAgIH1cblxuICAgIGlmICgoTnVtYmVyKHJlcy5zdGF0dXMpICE9PSAyMDAgJiYgTnVtYmVyKHJlcy5zdGF0dXNDb2RlKSAhPT0gMjAwKSB8fCAhcmVzLmRhdGEpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignbmV0d29yayByZXF1ZXN0IGVycm9yJylcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzXG4gIH1cblxuICBwdWJsaWMgYXN5bmMgZmV0Y2gob3B0aW9uczogSUZldGNoT3B0aW9ucyAmIHsgdG9rZW4/OiBzdHJpbmc7IGN1c3RvbVJlcU9wdHM/OiBJQ3VzdG9tUmVxT3B0cyB9LCk6IFByb21pc2U8UmVzcG9uc2VPYmplY3Q+IHtcbiAgICBjb25zdCB7IHRva2VuLCBoZWFkZXJzID0ge30sIC4uLnJlc3RPcHRpb25zIH0gPSBvcHRpb25zXG5cbiAgICBjb25zdCBkb0ZldGNoID0gYXN5bmMgKCkgPT4gdGhpcy5yZXFDbGFzcy5mZXRjaCh7XG4gICAgICBoZWFkZXJzOiB7XG4gICAgICAgIC8vICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicsXG4gICAgICAgIC8vICdYLVJlcXVlc3QtSWQnOiBgJHt1dGlscy5nZW5lcmF0ZVJlcXVlc3RJZCgpfWAsXG4gICAgICAgIC8vICdYLVJlcXVlc3QtVGltZXN0YW1wJzogYCR7RGF0ZS5ub3coKX1gLFxuICAgICAgICAnWC1TREstVmVyc2lvbic6IGBAY2xvdWRiYXNlL2pzLXNkay8ke2dldFNka1ZlcnNpb24oKX1gLFxuICAgICAgICBBdXRob3JpemF0aW9uOiBgQmVhcmVyICR7YXdhaXQgdGhpcy5nZXRBY2Nlc3NUb2tlbih0b2tlbil9YCxcbiAgICAgICAgLi4udGhpcy5nZXREZWZhdWx0SGVhZGVycygpLFxuICAgICAgICAuLi5oZWFkZXJzLFxuICAgICAgfSxcbiAgICAgIC4uLnJlc3RPcHRpb25zLFxuICAgIH0pXG5cbiAgICB0cnkge1xuICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgZG9GZXRjaCgpXG4gICAgICByZXR1cm4gcmVzdWx0XG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICBpZiAoZXJyPy5jb2RlID09PSAnQUNDRVNTX1RPS0VOX0VYUElSRUQnKSB7XG4gICAgICAgIC8vIOWmguaenOaYr+WboOS4uiB0b2tlbiDov4fmnJ/lpLHotKXvvIzliLcgdG9rZW4g5ZCO5YaN6K+V5LiA5qyhXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5jb25maWc/Ll9mcm9tQXBwPy5vYXV0aEluc3RhbmNlPy5hdXRoQXBpPy5yZWZyZXNoVG9rZW5Gb3JjZSAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgIHRocm93IGVyclxuICAgICAgICB9XG4gICAgICAgIGF3YWl0IHRoaXMuY29uZmlnPy5fZnJvbUFwcD8ub2F1dGhJbnN0YW5jZT8uYXV0aEFwaT8ucmVmcmVzaFRva2VuRm9yY2UoKVxuICAgICAgICByZXR1cm4gZG9GZXRjaCgpXG4gICAgICB9XG4gICAgICAvLyDlhbbku5bljp/lm6DlkJHkuIrmipvlh7pcblxuICAgICAgdGhyb3cgZXJyXG4gICAgfVxuICB9XG5cbiAgcHVibGljIGFzeW5jIHNlbmQoXG4gICAgYWN0aW9uOiBzdHJpbmcsXG4gICAgZGF0YTogS1Y8YW55PiA9IHt9LFxuICAgIG9wdGlvbnM6IEtWPGFueT4gPSB7fSxcbiAgICBjdXN0b21SZXFPcHRzPzogSUN1c3RvbVJlcU9wdHMsXG4gICk6IFByb21pc2U8YW55PiB7XG4gICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLnJlcXVlc3QoXG4gICAgICBhY3Rpb24sXG4gICAgICBkYXRhLFxuICAgICAgeyAuLi5vcHRpb25zLCBvblVwbG9hZFByb2dyZXNzOiBkYXRhLm9uVXBsb2FkUHJvZ3Jlc3MgfSxcbiAgICAgIGN1c3RvbVJlcU9wdHMsXG4gICAgKVxuXG4gICAgaWYgKHJlc3BvbnNlLmRhdGEuY29kZSAmJiB0aGlzLnRocm93V2hlblJlcXVlc3RGYWlsKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgICBjb2RlOiBFUlJPUlMuT1BFUkFUSU9OX0ZBSUwsXG4gICAgICAgIG1zZzogYFske3Jlc3BvbnNlLmRhdGEuY29kZX1dICR7cmVzcG9uc2UuZGF0YS5tZXNzYWdlfWAsXG4gICAgICB9KSwpXG4gICAgfVxuXG4gICAgcmV0dXJuIHJlc3BvbnNlLmRhdGFcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBnYXRlV2F5KG9wdGlvbnM6IElHYXRlV2F5T3B0aW9ucywgY3VzdG9tUmVxT3B0cz86IElDdXN0b21SZXFPcHRzKSB7XG4gICAgY29uc3QgeyB1cmwsIG5hbWUsIGRhdGEsIHBhdGggPSAnJywgbWV0aG9kLCBoZWFkZXIgPSB7fSB9ID0gb3B0aW9uc1xuXG4gICAgaWYgKCghbmFtZSB8fCAhcGF0aCkgJiYgIXVybCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKEpTT04uc3RyaW5naWZ5KHtcbiAgICAgICAgY29kZTogRVJST1JTLklOVkFMSURfUEFSQU1TLFxuICAgICAgICBtc2c6ICdbZ2F0ZVdheV0gaW52YWxpZCBmdW5jdGlvbiBuYW1lIG9yIHBhdGggb3IgdXJsJyxcbiAgICAgIH0pLClcbiAgICB9XG4gICAgbGV0IGpzb25EYXRhXG4gICAgdHJ5IHtcbiAgICAgIGpzb25EYXRhID0gZGF0YSA/IEpTT04uc3RyaW5naWZ5KGRhdGEpIDogJydcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgICBjb2RlOiBFUlJPUlMuSU5WQUxJRF9QQVJBTVMsXG4gICAgICAgIG1zZzogJ1tnYXRlV2F5XSBpbnZhbGlkIGRhdGEnLFxuICAgICAgfSksKVxuICAgIH1cblxuICAgIGNvbnN0IHJlcXVlc3RJZCA9IHV0aWxzLmdlbmVyYXRlUmVxdWVzdElkKClcbiAgICBjb25zdCB7IGJhc2VVcmwsIHByb3RvY29sIH0gPSBnZXRFbmRQb2ludEluZm8odGhpcy5jb25maWcuZW52LCAnR0FURVdBWScpXG4gICAgbGV0IGVuZHBvaW50ID0gYCR7cHJvdG9jb2x9JHtiYXNlVXJsfSR7dXJsIHx8IGAvJHtwYXRofS8ke25hbWV9YH1gXG5cbiAgICBjb25zdCBpc0dldEFuZEhlYWQgPSBbJ0dFVCcsICdIRUFEJ10uaW5jbHVkZXMobWV0aG9kPy50b1VwcGVyQ2FzZT8uKCkpXG5cbiAgICBpZiAoaXNHZXRBbmRIZWFkKSB7XG4gICAgICB0cnkge1xuICAgICAgICBsZXQgZGF0YVBhcnNlID0ge31cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBkYXRhUGFyc2UgPSBKU09OLnBhcnNlKGRhdGEgYXMgYW55KVxuICAgICAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICAgIGRhdGFQYXJzZSA9IGRhdGEgfHwge31cbiAgICAgICAgfVxuICAgICAgICBlbmRwb2ludCA9IGAke2VuZHBvaW50fSR7ZW5kcG9pbnQuaW5jbHVkZXMoJz8nKSA/ICcmJyA6ICc/J30ke09iamVjdC5rZXlzKGRhdGFQYXJzZSlcbiAgICAgICAgICAubWFwKGtleSA9PiBgJHtrZXl9PSR7ZGF0YVBhcnNlW2tleV19YClcbiAgICAgICAgICAuam9pbignJicpfWBcbiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgIC8vXG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLmZldGNoKHtcbiAgICAgIG1ldGhvZDogbWV0aG9kIHx8ICdQT1NUJyxcbiAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uOyBjaGFyc2V0PXV0Zi04JyxcbiAgICAgICAgJ1gtUmVxdWVzdC1JZCc6IHJlcXVlc3RJZCxcbiAgICAgICAgLi4uaGVhZGVyLFxuICAgICAgfSxcbiAgICAgIC4uLihpc0dldEFuZEhlYWQgPyB7fSA6IHsgYm9keToganNvbkRhdGEgfSksXG4gICAgICB1cmw6IGVuZHBvaW50LFxuICAgICAgY3VzdG9tUmVxT3B0cyxcbiAgICB9KVxuXG4gICAgcmV0dXJuIHsgcmVxdWVzdElkLCAuLi5yZXNwb25zZSwgZGF0YTogYXdhaXQgcmVzcG9uc2UuZGF0YSB9XG4gIH1cbn1cblxuY29uc3QgcmVxdWVzdE1hcDogS1Y8Q2xvdWRiYXNlUmVxdWVzdD4gPSB7fVxuXG5leHBvcnQgZnVuY3Rpb24gaW5pdFJlcXVlc3QoY29uZmlnOiBJQ2xvdWRiYXNlUmVxdWVzdENvbmZpZykge1xuICByZXF1ZXN0TWFwW2NvbmZpZy5lbnZdID0gbmV3IENsb3VkYmFzZVJlcXVlc3Qoe1xuICAgIC4uLmNvbmZpZyxcbiAgICB0aHJvdzogdHJ1ZSxcbiAgfSlcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFJlcXVlc3RCeUVudklkKGVudjogc3RyaW5nKTogQ2xvdWRiYXNlUmVxdWVzdCB7XG4gIHJldHVybiByZXF1ZXN0TWFwW2Vudl1cbn1cbiJdfQ==
|
package/dist/esm/libs/request.js
CHANGED
|
@@ -86,15 +86,16 @@ function bindHooks(instance, name, hooks) {
|
|
|
86
86
|
Object.assign(headers, appendedHeaders);
|
|
87
87
|
});
|
|
88
88
|
var originData = options.data;
|
|
89
|
-
originData
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
89
|
+
originData
|
|
90
|
+
&& (function () {
|
|
91
|
+
if (isFormData(originData)) {
|
|
92
|
+
Object.keys(data).forEach(function (key) {
|
|
93
|
+
originData.append(key, data[key]);
|
|
94
|
+
});
|
|
95
|
+
return;
|
|
96
|
+
}
|
|
97
|
+
options.data = __assign(__assign({}, originData), data);
|
|
98
|
+
})();
|
|
98
99
|
options.headers = __assign(__assign({}, (options.headers || {})), headers);
|
|
99
100
|
return originMethod.call(instance, options);
|
|
100
101
|
};
|
|
@@ -285,7 +286,8 @@ var CloudbaseRequest = (function () {
|
|
|
285
286
|
search = (options === null || options === void 0 ? void 0 : options.search) !== undefined ? options.search : params.search;
|
|
286
287
|
formatQuery = __assign(__assign({}, ((options === null || options === void 0 ? void 0 : options.defaultQuery) || {})), { env: this.config.env });
|
|
287
288
|
parse && (formatQuery.parse = true);
|
|
288
|
-
inQuery
|
|
289
|
+
inQuery
|
|
290
|
+
&& (formatQuery = __assign(__assign({}, inQuery), formatQuery));
|
|
289
291
|
endPointMode = this.config.endPointMode || 'CLOUD_API';
|
|
290
292
|
url = getEndPointInfo(this.config.env, endPointMode);
|
|
291
293
|
BASE_URL = url.baseUrl;
|
|
@@ -391,7 +393,7 @@ var CloudbaseRequest = (function () {
|
|
|
391
393
|
CloudbaseRequest.prototype.gateWay = function (options, customReqOpts) {
|
|
392
394
|
var _a;
|
|
393
395
|
return __awaiter(this, void 0, void 0, function () {
|
|
394
|
-
var url, name, data, _b, path, method, _c, header, jsonData, requestId, _d, baseUrl, protocol, endpoint, response, _e;
|
|
396
|
+
var url, name, data, _b, path, method, _c, header, jsonData, requestId, _d, baseUrl, protocol, endpoint, isGetAndHead, dataParse_1, response, _e;
|
|
395
397
|
var _f;
|
|
396
398
|
return __generator(this, function (_g) {
|
|
397
399
|
switch (_g.label) {
|
|
@@ -415,7 +417,24 @@ var CloudbaseRequest = (function () {
|
|
|
415
417
|
requestId = utils.generateRequestId();
|
|
416
418
|
_d = getEndPointInfo(this.config.env, 'GATEWAY'), baseUrl = _d.baseUrl, protocol = _d.protocol;
|
|
417
419
|
endpoint = "".concat(protocol).concat(baseUrl).concat(url || "/".concat(path, "/").concat(name));
|
|
418
|
-
|
|
420
|
+
isGetAndHead = ['GET', 'HEAD'].includes((_a = method === null || method === void 0 ? void 0 : method.toUpperCase) === null || _a === void 0 ? void 0 : _a.call(method));
|
|
421
|
+
if (isGetAndHead) {
|
|
422
|
+
try {
|
|
423
|
+
dataParse_1 = {};
|
|
424
|
+
try {
|
|
425
|
+
dataParse_1 = JSON.parse(data);
|
|
426
|
+
}
|
|
427
|
+
catch (error) {
|
|
428
|
+
dataParse_1 = data || {};
|
|
429
|
+
}
|
|
430
|
+
endpoint = "".concat(endpoint).concat(endpoint.includes('?') ? '&' : '?').concat(Object.keys(dataParse_1)
|
|
431
|
+
.map(function (key) { return "".concat(key, "=").concat(dataParse_1[key]); })
|
|
432
|
+
.join('&'));
|
|
433
|
+
}
|
|
434
|
+
catch (error) {
|
|
435
|
+
}
|
|
436
|
+
}
|
|
437
|
+
return [4, this.fetch(__assign(__assign({ method: method || 'POST', headers: __assign({ 'Content-Type': 'application/json; charset=utf-8', 'X-Request-Id': requestId }, header) }, (isGetAndHead ? {} : { body: jsonData })), { url: endpoint, customReqOpts: customReqOpts }))];
|
|
419
438
|
case 1:
|
|
420
439
|
response = _g.sent();
|
|
421
440
|
_e = [__assign({ requestId: requestId }, response)];
|
|
@@ -436,4 +455,4 @@ export function initRequest(config) {
|
|
|
436
455
|
export function getRequestByEnvId(env) {
|
|
437
456
|
return requestMap[env];
|
|
438
457
|
}
|
|
439
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWJzL3JlcXVlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsYUFBYSxFQUFFLGVBQWUsRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQVNuRyxPQUFPLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQVVsRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sU0FBUyxDQUFBO0FBQ3ZDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxXQUFXLENBQUE7QUFDNUIsSUFBQSxNQUFNLEdBQUssU0FBUyxPQUFkLENBQWM7QUFDcEIsSUFBQSxRQUFRLEdBQTRCLEtBQUssU0FBakMsRUFBRSxVQUFVLEdBQWdCLEtBQUssV0FBckIsRUFBRSxTQUFTLEdBQUssS0FBSyxVQUFWLENBQVU7QUFHakQsSUFBTSwyQkFBMkIsR0FBRztJQUNsQyxhQUFhO0lBQ2IsYUFBYTtJQUNiLHVCQUF1QjtJQUN2Qix3QkFBd0I7SUFDeEIsYUFBYTtJQUNiLHVDQUF1QztJQUN2QyxpQ0FBaUM7SUFDakMsMEJBQTBCO0lBQzFCLDZCQUE2QjtJQUM3Qiw2QkFBNkI7SUFDN0IsMkJBQTJCO0NBQzVCLENBQUE7QUFFRCxTQUFTLFNBQVMsQ0FBQyxRQUE2QixFQUFFLElBQVksRUFBRSxLQUEyQjtJQUN6RixJQUFNLFlBQVksR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDbkMsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLFVBQVUsT0FBd0I7UUFDakQsSUFBTSxJQUFJLEdBQUcsRUFBRSxDQUFBO1FBQ2YsSUFBTSxPQUFPLEdBQUcsRUFBRSxDQUFBO1FBQ2xCLEtBQUssQ0FBQyxPQUFP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QkFBTixNQUFNLENBQUUsV0FBVyxzREFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLENBQUMsS0FDaEYsR0FBRyxFQUFFLFFBQVEsRUFDYixhQUFhLGVBQUEsSUFDYixFQUFBOzt3QkFWSSxRQUFRLEdBQUcsU0FVZjt5Q0FFTyxTQUFTLFdBQUEsSUFBSyxRQUFROzt3QkFBUSxXQUFNLFFBQVEsQ0FBQyxJQUFJLEVBQUE7NEJBQTFELDhDQUFpQyxPQUFJLEdBQUUsU0FBbUIsVUFBRTs7OztLQUM3RDtJQUNILHVCQUFDO0FBQUQsQ0FBQyxBQXZVRCxJQXVVQzs7QUFFRCxJQUFNLFVBQVUsR0FBeUIsRUFBRSxDQUFBO0FBRTNDLE1BQU0sVUFBVSxXQUFXLENBQUMsTUFBK0I7SUFDekQsVUFBVSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLGdCQUFnQix1QkFDeEMsTUFBTSxLQUNULEtBQUssRUFBRSxJQUFJLElBQ1gsQ0FBQTtBQUNKLENBQUM7QUFFRCxNQUFNLFVBQVUsaUJBQWlCLENBQUMsR0FBVztJQUMzQyxPQUFPLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQTtBQUN4QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgREFUQV9WRVJTSU9OLCBnZXRTZGtWZXJzaW9uLCBnZXRCYXNlRW5kUG9pbnQsIGdldEVuZFBvaW50SW5mbyB9IGZyb20gJy4uL2NvbnN0YW50cy9jb21tb24nXG5pbXBvcnQge1xuICBJUmVxdWVzdE9wdGlvbnMsXG4gIFNES1JlcXVlc3RJbnRlcmZhY2UsXG4gIFJlc3BvbnNlT2JqZWN0LFxuICBJVXBsb2FkUmVxdWVzdE9wdGlvbnMsXG4gIElSZXF1ZXN0Q29uZmlnLFxuICBJRmV0Y2hPcHRpb25zLFxufSBmcm9tICdAY2xvdWRiYXNlL2FkYXB0ZXItaW50ZXJmYWNlJ1xuaW1wb3J0IHsgdXRpbHMsIGNvbnN0YW50cywgbGFuZ0V2ZW50IH0gZnJvbSAnQGNsb3VkYmFzZS91dGlsaXRpZXMnXG5pbXBvcnQgeyBFbmRQb2ludEtleSwgS1YgfSBmcm9tICdAY2xvdWRiYXNlL3R5cGVzJ1xuaW1wb3J0IHsgSUN1c3RvbVJlcU9wdHMgfSBmcm9tICdAY2xvdWRiYXNlL3R5cGVzL2Z1bmN0aW9ucydcbmltcG9ydCB7XG4gIElHZXRBY2Nlc3NUb2tlblJlc3VsdCxcbiAgSUNsb3VkYmFzZVJlcXVlc3RDb25maWcsXG4gIElBcHBlbmRlZFJlcXVlc3RJbmZvLFxuICBJUmVxdWVzdEJlZm9yZUhvb2ssXG59IGZyb20gJ0BjbG91ZGJhc2UvdHlwZXMvcmVxdWVzdCdcbmltcG9ydCB7IElDbG91ZGJhc2VDYWNoZSB9IGZyb20gJ0BjbG91ZGJhc2UvdHlwZXMvY2FjaGUnXG5pbXBvcnQgeyBnZXRMb2NhbENhY2hlIH0gZnJvbSAnLi9jYWNoZSdcbmltcG9ydCB7IFBsYXRmb3JtIH0gZnJvbSAnLi9hZGFwdGVyJ1xuY29uc3QgeyBFUlJPUlMgfSA9IGNvbnN0YW50c1xuY29uc3QgeyBnZW5TZXFJZCwgaXNGb3JtRGF0YSwgZm9ybWF0VXJsIH0gPSB1dGlsc1xuXG4vLyDkuIvpnaLlh6Dnp40gYWN0aW9uIOS4jemcgOimgSBhY2Nlc3MgdG9rZW5cbmNvbnN0IEFDVElPTlNfV0lUSE9VVF9BQ0NFU1NUT0tFTiA9IFtcbiAgJ2F1dGguZ2V0Snd0JyxcbiAgJ2F1dGgubG9nb3V0JyxcbiAgJ2F1dGguc2lnbkluV2l0aFRpY2tldCcsXG4gICdhdXRoLnNpZ25JbkFub255bW91c2x5JyxcbiAgJ2F1dGguc2lnbkluJyxcbiAgJ2F1dGguZmV0Y2hBY2Nlc3NUb2tlbldpdGhSZWZyZXNoVG9rZW4nLFxuICAnYXV0aC5zaWduVXBXaXRoRW1haWxBbmRQYXNzd29yZCcsXG4gICdhdXRoLmFjdGl2YXRlRW5kVXNlck1haWwnLFxuICAnYXV0aC5zZW5kUGFzc3dvcmRSZXNldEVtYWlsJyxcbiAgJ2F1dGgucmVzZXRQYXNzd29yZFdpdGhUb2tlbicsXG4gICdhdXRoLmlzVXNlcm5hbWVSZWdpc3RlcmVkJyxcbl1cblxuZnVuY3Rpb24gYmluZEhvb2tzKGluc3RhbmNlOiBTREtSZXF1ZXN0SW50ZXJmYWNlLCBuYW1lOiBzdHJpbmcsIGhvb2tzOiBJUmVxdWVzdEJlZm9yZUhvb2tbXSkge1xuICBjb25zdCBvcmlnaW5NZXRob2QgPSBpbnN0YW5jZVtuYW1lXVxuICBpbnN0YW5jZVtuYW1lXSA9IGZ1bmN0aW9uIChvcHRpb25zOiBJUmVxdWVzdE9wdGlvbnMpIHtcbiAgICBjb25zdCBkYXRhID0ge31cbiAgICBjb25zdCBoZWFkZXJzID0ge31cbiAgICBob29rcy5mb3JFYWNoKChob29rKSA9PiB7XG4gICAgICBjb25zdCB7IGRhdGE6IGFwcGVuZGVkRGF0YSwgaGVhZGVyczogYXBwZW5kZWRIZWFkZXJzIH0gPSBob29rLmNhbGwoaW5zdGFuY2UsIG9wdGlvbnMpXG4gICAgICBPYmplY3QuYXNzaWduKGRhdGEsIGFwcGVuZGVkRGF0YSlcbiAgICAgIE9iamVjdC5hc3NpZ24oaGVhZGVycywgYXBwZW5kZWRIZWFkZXJzKVxuICAgIH0pXG4gICAgY29uc3Qgb3JpZ2luRGF0YSA9IG9wdGlvbnMuZGF0YVxuICAgIG9yaWdpbkRhdGEgJiYgKCgpID0+IHtcbiAgICAgIGlmIChpc0Zvcm1EYXRhKG9yaWdpbkRhdGEpKSB7XG4gICAgICAgIE9iamVjdC5rZXlzKGRhdGEpLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgICAgIChvcmlnaW5EYXRhIGFzIEZvcm1EYXRhKS5hcHBlbmQoa2V5LCBkYXRhW2tleV0pXG4gICAgICAgIH0pXG4gICAgICAgIHJldHVyblxuICAgICAgfVxuICAgICAgb3B0aW9ucy5kYXRhID0ge1xuICAgICAgICAuLi5vcmlnaW5EYXRhLFxuICAgICAgICAuLi5kYXRhLFxuICAgICAgfVxuICAgIH0pKClcbiAgICBvcHRpb25zLmhlYWRlcnMgPSB7XG4gICAgICAuLi4ob3B0aW9ucy5oZWFkZXJzIHx8IHt9KSxcbiAgICAgIC4uLmhlYWRlcnMsXG4gICAgfVxuICAgIHJldHVybiAob3JpZ2luTWV0aG9kIGFzIEZ1bmN0aW9uKS5jYWxsKGluc3RhbmNlLCBvcHRpb25zKVxuICB9XG59XG5mdW5jdGlvbiBiZWZvcmVFYWNoKCk6IElBcHBlbmRlZFJlcXVlc3RJbmZvIHtcbiAgY29uc3Qgc2VxSWQgPSBnZW5TZXFJZCgpXG4gIHJldHVybiB7XG4gICAgZGF0YToge1xuICAgICAgc2VxSWQsXG4gICAgfSxcbiAgICBoZWFkZXJzOiB7XG4gICAgICAnWC1TREstVmVyc2lvbic6IGBAY2xvdWRiYXNlL2pzLXNkay8ke2dldFNka1ZlcnNpb24oKX1gLFxuICAgICAgJ3gtc2VxaWQnOiBzZXFJZCxcbiAgICB9LFxuICB9XG59XG5leHBvcnQgaW50ZXJmYWNlIElHYXRlV2F5T3B0aW9ucyB7XG4gIG5hbWU/OiBzdHJpbmdcbiAgZGF0YT86IGFueVxuICBwYXRoPzogc3RyaW5nXG4gIG1ldGhvZDogc3RyaW5nXG4gIGhlYWRlcj86IHt9XG4gIHVybD86IHN0cmluZ1xufVxuZXhwb3J0IGludGVyZmFjZSBJQ2xvdWRiYXNlUmVxdWVzdCB7XG4gIHBvc3Q6IChvcHRpb25zOiBJUmVxdWVzdE9wdGlvbnMpID0+IFByb21pc2U8UmVzcG9uc2VPYmplY3Q+XG4gIHVwbG9hZDogKG9wdGlvbnM6IElVcGxvYWRSZXF1ZXN0T3B0aW9ucykgPT4gUHJvbWlzZTxSZXNwb25zZU9iamVjdD5cbiAgZG93bmxvYWQ6IChvcHRpb25zOiBJUmVxdWVzdE9wdGlvbnMpID0+IFByb21pc2U8UmVzcG9uc2VPYmplY3Q+XG4gIHJlcXVlc3Q6IChhY3Rpb246IHN0cmluZywgcGFyYW1zOiBLVjxhbnk+LCBvcHRpb25zPzogS1Y8YW55PikgPT4gUHJvbWlzZTxSZXNwb25zZU9iamVjdD5cbiAgc2VuZDogKGFjdGlvbjogc3RyaW5nLCBkYXRhOiBLVjxhbnk+KSA9PiBQcm9taXNlPGFueT5cbiAgZmV0Y2g6IChvcHRpb25zOiBJRmV0Y2hPcHRpb25zKSA9PiBQcm9taXNlPFJlc3BvbnNlT2JqZWN0PlxufVxuXG4vKipcbiAqIEBjbGFzcyBDbG91ZGJhc2VSZXF1ZXN0XG4gKi9cbmV4cG9ydCBjbGFzcyBDbG91ZGJhc2VSZXF1ZXN0IGltcGxlbWVudHMgSUNsb3VkYmFzZVJlcXVlc3Qge1xuICBjb25maWc6IElDbG91ZGJhc2VSZXF1ZXN0Q29uZmlnXG4gIHByaXZhdGUgcmVxQ2xhc3M6IFNES1JlcXVlc3RJbnRlcmZhY2VcbiAgLy8g6K+35rGC5aSx6LSl5piv5ZCm5oqb5Ye6RXJyb3JcbiAgcHJpdmF0ZSB0aHJvd1doZW5SZXF1ZXN0RmFpbCA9IGZhbHNlXG4gIC8vIOaMgeS5heWMluacrOWcsOWtmOWCqFxuICBwcml2YXRlIGxvY2FsQ2FjaGU6IElDbG91ZGJhc2VDYWNoZVxuICAvKipcbiAgICog5Yid5aeL5YyWXG4gICAqIEBwYXJhbSBjb25maWdcbiAgICovXG4gIGNvbnN0cnVjdG9yKGNvbmZpZzogSUNsb3VkYmFzZVJlcXVlc3RDb25maWcgJiB7IHRocm93PzogYm9vbGVhbiB9KSB7XG4gICAgdGhpcy5jb25maWcgPSBjb25maWdcbiAgICBjb25zdCByZXFDb25maWc6IElSZXF1ZXN0Q29uZmlnID0ge1xuICAgICAgdGltZW91dDogdGhpcy5jb25maWcudGltZW91dCxcbiAgICAgIHRpbWVvdXRNc2c6IGBbQGNsb3VkYmFzZS9qcy1zZGtdIOivt+axguWcqCR7dGhpcy5jb25maWcudGltZW91dCAvIDEwMDB9c+WGheacquWujOaIkO+8jOW3suS4reaWrWAsXG4gICAgICByZXN0cmljdGVkTWV0aG9kczogWydwb3N0JywgJ3B1dCddLFxuICAgIH1cbiAgICB0aGlzLnJlcUNsYXNzID0gbmV3IFBsYXRmb3JtLmFkYXB0ZXIucmVxQ2xhc3MocmVxQ29uZmlnKVxuICAgIHRoaXMudGhyb3dXaGVuUmVxdWVzdEZhaWwgPSBjb25maWcudGhyb3cgfHwgZmFsc2VcbiAgICB0aGlzLmxvY2FsQ2FjaGUgPSBnZXRMb2NhbENhY2hlKHRoaXMuY29uZmlnLmVudilcblxuICAgIGlmICh0aGlzLmNvbmZpZy5lbmRQb2ludE1vZGUgIT09ICdHQVRFV0FZJykge1xuICAgICAgYmluZEhvb2tzKHRoaXMucmVxQ2xhc3MsICdwb3N0JywgW2JlZm9yZUVhY2hdKVxuICAgICAgYmluZEhvb2tzKHRoaXMucmVxQ2xhc3MsICd1cGxvYWQnLCBbYmVmb3JlRWFjaF0pXG4gICAgICBiaW5kSG9va3ModGhpcy5yZXFDbGFzcywgJ2Rvd25sb2FkJywgW2JlZm9yZUVhY2hdKVxuICAgIH1cblxuICAgIGxhbmdFdmVudC5idXMub24obGFuZ0V2ZW50LkxBTkdfQ0hBTkdFX0VWRU5ULCAocGFyYW1zKSA9PiB7XG4gICAgICB0aGlzLmNvbmZpZy5pMThuID0gcGFyYW1zLmRhdGE/LmkxOG4gfHwgdGhpcy5jb25maWcuaTE4blxuICAgIH0pXG4gIH1cblxuICBwdWJsaWMgYXN5bmMgZ2V0QWNjZXNzVG9rZW4odG9rZW4gPSBudWxsKSB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGVxZXFlcVxuICAgIGlmICh0b2tlbiAhPSBudWxsKSB7XG4gICAgICByZXR1cm4gdG9rZW5cbiAgICB9XG4gICAgY29uc3QgYXBwID0gdGhpcy5jb25maWcuX2Zyb21BcHBcblxuICAgIGlmICghYXBwLm9hdXRoSW5zdGFuY2UpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcigneW91IGNhblxcJ3QgcmVxdWVzdCB3aXRob3V0IGF1dGgnKVxuICAgIH1cblxuICAgIGNvbnN0IHsgb2F1dGhJbnN0YW5jZSB9ID0gYXBwXG4gICAgY29uc3Qgb2F1dGhDbGllbnQgPSBvYXV0aEluc3RhbmNlLm9hdXRoMmNsaWVudFxuICAgIHJldHVybiAoYXdhaXQgdGhpcy5nZXRPYXV0aEFjY2Vzc1Rva2VuVjIob2F1dGhDbGllbnQpKS5hY2Nlc3NUb2tlblxuICB9XG5cbiAgcHVibGljIGdldERlZmF1bHRIZWFkZXJzKCkge1xuICAgIHJldHVybiB7XG4gICAgICBbdGhpcy5jb25maWcuaTE4bj8uTEFOR19IRUFERVJfS0VZXTogdGhpcy5jb25maWcuaTE4bj8ubGFuZyxcbiAgICAgICdYLVNESy1WZXJzaW9uJzogYEBjbG91ZGJhc2UvanMtc2RrLyR7Z2V0U2RrVmVyc2lvbigpfWAsXG4gICAgfVxuICB9XG5cbiAgcHVibGljIGFzeW5jIHBvc3Qob3B0aW9uczogSVJlcXVlc3RPcHRpb25zLCBjdXN0b21SZXFPcHRzPzogSUN1c3RvbVJlcU9wdHMpOiBQcm9taXNlPFJlc3BvbnNlT2JqZWN0PiB7XG4gICAgY29uc3QgcmVzID0gYXdhaXQgdGhpcy5yZXFDbGFzcy5wb3N0KHtcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICBoZWFkZXJzOiB7IC4uLm9wdGlvbnMuaGVhZGVycywgLi4udGhpcy5nZXREZWZhdWx0SGVhZGVycygpIH0sXG4gICAgICBjdXN0b21SZXFPcHRzLFxuICAgIH0pXG4gICAgcmV0dXJuIHJlc1xuICB9XG4gIHB1YmxpYyBhc3luYyB1cGxvYWQob3B0aW9uczogSVVwbG9hZFJlcXVlc3RPcHRpb25zKTogUHJvbWlzZTxSZXNwb25zZU9iamVjdD4ge1xuICAgIGNvbnN0IHJlcyA9IGF3YWl0IHRoaXMucmVxQ2xhc3MudXBsb2FkKHsgLi4ub3B0aW9ucywgaGVhZGVyczogeyAuLi5vcHRpb25zLmhlYWRlcnMsIC4uLnRoaXMuZ2V0RGVmYXVsdEhlYWRlcnMoKSB9IH0pXG4gICAgcmV0dXJuIHJlc1xuICB9XG4gIHB1YmxpYyBhc3luYyBkb3dubG9hZChvcHRpb25zOiBJUmVxdWVzdE9wdGlvbnMpOiBQcm9taXNlPFJlc3BvbnNlT2JqZWN0PiB7XG4gICAgY29uc3QgcmVzID0gYXdhaXQgdGhpcy5yZXFDbGFzcy5kb3dubG9hZCh7XG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgaGVhZGVyczogeyAuLi5vcHRpb25zLmhlYWRlcnMsIC4uLnRoaXMuZ2V0RGVmYXVsdEhlYWRlcnMoKSB9LFxuICAgIH0pXG4gICAgcmV0dXJuIHJlc1xuICB9XG5cbiAgcHVibGljIGdldEJhc2VFbmRQb2ludChlbmRQb2ludEtleTogRW5kUG9pbnRLZXkgPSAnQ0xPVURfQVBJJykge1xuICAgIHJldHVybiBnZXRCYXNlRW5kUG9pbnQodGhpcy5jb25maWcuZW52LCBlbmRQb2ludEtleSlcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBnZXRPYXV0aEFjY2Vzc1Rva2VuVjIob2F1dGhDbGllbnQ6IGFueSk6IFByb21pc2U8SUdldEFjY2Vzc1Rva2VuUmVzdWx0PiB7XG4gICAgY29uc3QgdmFsaWRBY2Nlc3NUb2tlbiA9IGF3YWl0IG9hdXRoQ2xpZW50LmdldEFjY2Vzc1Rva2VuKClcbiAgICBjb25zdCBjcmVkZW50aWFscyA9IGF3YWl0IG9hdXRoQ2xpZW50LmdldENyZWRlbnRpYWxzKClcbiAgICByZXR1cm4ge1xuICAgICAgYWNjZXNzVG9rZW46IHZhbGlkQWNjZXNzVG9rZW4sXG4gICAgICBhY2Nlc3NUb2tlbkV4cGlyZTogbmV3IERhdGUoY3JlZGVudGlhbHMuZXhwaXJlc19hdCkuZ2V0VGltZSgpLFxuICAgIH1cbiAgfVxuXG4gIC8qIGVzbGludC1kaXNhYmxlIGNvbXBsZXhpdHkgKi9cbiAgcHVibGljIGFzeW5jIHJlcXVlc3QoXG4gICAgYWN0aW9uOiBzdHJpbmcsXG4gICAgcGFyYW1zOiBLVjxhbnk+LFxuICAgIG9wdGlvbnM/OiB7XG4gICAgICBvblVwbG9hZFByb2dyZXNzPzogRnVuY3Rpb25cbiAgICAgIHBhdGhuYW1lPzogc3RyaW5nXG4gICAgICBwYXJzZT86IGJvb2xlYW5cbiAgICAgIGluUXVlcnk/OiBLVjxhbnk+XG4gICAgICBzZWFyY2g/OiBzdHJpbmdcbiAgICAgIGRlZmF1bHRRdWVyeT86IEtWPGFueT5cbiAgICAgIGhlYWRlcnM/OiBLVjxzdHJpbmc+XG4gICAgfSxcbiAgICBjdXN0b21SZXFPcHRzPzogSUN1c3RvbVJlcU9wdHMsXG4gICk6IFByb21pc2U8UmVzcG9uc2VPYmplY3Q+IHtcbiAgICBjb25zdCB0Y2JUcmFjZUtleSA9IGB4LXRjYi10cmFjZV8ke3RoaXMuY29uZmlnLmVudn1gXG4gICAgbGV0IGNvbnRlbnRUeXBlID0gJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCdcblxuICAgIGNvbnN0IHRtcE9iajogS1Y8YW55PiA9IHtcbiAgICAgIGFjdGlvbixcbiAgICAgIGRhdGFWZXJzaW9uOiBEQVRBX1ZFUlNJT04sXG4gICAgICBlbnY6IHRoaXMuY29uZmlnLmVudixcbiAgICAgIC4uLnBhcmFtcyxcbiAgICB9XG5cbiAgICBpZiAoQUNUSU9OU19XSVRIT1VUX0FDQ0VTU1RPS0VOLmluZGV4T2YoYWN0aW9uKSA9PT0gLTEpIHtcbiAgICAgIGNvbnN0IGFwcCA9IHRoaXMuY29uZmlnLl9mcm9tQXBwXG5cbiAgICAgIGlmICghYXBwLm9hdXRoSW5zdGFuY2UpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCd5b3UgY2FuXFwndCByZXF1ZXN0IHdpdGhvdXQgYXV0aCcpXG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHsgb2F1dGhJbnN0YW5jZSB9ID0gYXBwXG4gICAgICBjb25zdCBvYXV0aENsaWVudCA9IG9hdXRoSW5zdGFuY2Uub2F1dGgyY2xpZW50XG4gICAgICB0bXBPYmouYWNjZXNzX3Rva2VuID0gKGF3YWl0IHRoaXMuZ2V0T2F1dGhBY2Nlc3NUb2tlblYyKG9hdXRoQ2xpZW50KSkuYWNjZXNzVG9rZW5cbiAgICB9XG5cbiAgICAvLyDmi7xib2R55ZKMY29udGVudC10eXBlXG4gICAgbGV0IHBheWxvYWRcbiAgICBpZiAoYWN0aW9uID09PSAnc3RvcmFnZS51cGxvYWRGaWxlJykge1xuICAgICAgcGF5bG9hZCA9IG5ldyBGb3JtRGF0YSgpXG4gICAgICBPYmplY3Qua2V5cyhwYXlsb2FkKS5mb3JFYWNoKChrZXkpID0+IHtcbiAgICAgICAgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChwYXlsb2FkLCBrZXkpICYmIHBheWxvYWRba2V5XSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgcGF5bG9hZC5hcHBlbmQoa2V5LCB0bXBPYmpba2V5XSlcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICAgIGNvbnRlbnRUeXBlID0gJ211bHRpcGFydC9mb3JtLWRhdGEnXG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnRlbnRUeXBlID0gJ2FwcGxpY2F0aW9uL2pzb247Y2hhcnNldD1VVEYtOCdcbiAgICAgIHBheWxvYWQgPSB7fVxuICAgICAgT2JqZWN0LmtleXModG1wT2JqKS5mb3JFYWNoKChrZXkpID0+IHtcbiAgICAgICAgaWYgKHRtcE9ialtrZXldICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICBwYXlsb2FkW2tleV0gPSB0bXBPYmpba2V5XVxuICAgICAgICB9XG4gICAgICB9KVxuICAgIH1cbiAgICBjb25zdCBvcHRzOiBhbnkgPSB7XG4gICAgICBoZWFkZXJzOiB7XG4gICAgICAgICdjb250ZW50LXR5cGUnOiBjb250ZW50VHlwZSxcbiAgICAgICAgLi4udGhpcy5nZXREZWZhdWx0SGVhZGVycygpLFxuICAgICAgICAuLi5vcHRpb25zPy5oZWFkZXJzLFxuICAgICAgfSxcbiAgICB9XG4gICAgaWYgKG9wdGlvbnM/Lm9uVXBsb2FkUHJvZ3Jlc3MpIHtcbiAgICAgIG9wdHMub25VcGxvYWRQcm9ncmVzcyA9IG9wdGlvbnMub25VcGxvYWRQcm9ncmVzc1xuICAgIH1cblxuICAgIGlmICh0aGlzLmNvbmZpZy5yZWdpb24pIHtcbiAgICAgIG9wdHMuaGVhZGVyc1snWC1UQ0ItUmVnaW9uJ10gPSB0aGlzLmNvbmZpZy5yZWdpb25cbiAgICB9XG5cbiAgICBjb25zdCB0cmFjZUhlYWRlciA9IHRoaXMubG9jYWxDYWNoZS5nZXRTdG9yZSh0Y2JUcmFjZUtleSlcbiAgICBpZiAodHJhY2VIZWFkZXIpIHtcbiAgICAgIG9wdHMuaGVhZGVyc1snWC1UQ0ItVHJhY2UnXSA9IHRyYWNlSGVhZGVyXG4gICAgfVxuXG4gICAgLy8g5Y+R5Ye66K+35rGCXG4gICAgLy8g5paw55qEIHVybCDpnIDopoHmkLrluKYgZW52IOWPguaVsOi/m+ihjCBDT1JTIOagoemqjFxuICAgIC8vIOivt+axgumTvuaOpeaUr+aMgea3u+WKoOWKqOaAgSBxdWVyeSDlj4LmlbDvvIzmlrnkvr/nlKjmiLfosIPor5XlrprkvY3or7fmsYJcbiAgICBjb25zdCBwYXJzZSA9IG9wdGlvbnM/LnBhcnNlICE9PSB1bmRlZmluZWQgPyBvcHRpb25zLnBhcnNlIDogcGFyYW1zLnBhcnNlXG4gICAgY29uc3QgaW5RdWVyeSA9IG9wdGlvbnM/LmluUXVlcnkgIT09IHVuZGVmaW5lZCA/IG9wdGlvbnMuaW5RdWVyeSA6IHBhcmFtcy5pblF1ZXJ5XG4gICAgY29uc3Qgc2VhcmNoID0gb3B0aW9ucz8uc2VhcmNoICE9PSB1bmRlZmluZWQgPyBvcHRpb25zLnNlYXJjaCA6IHBhcmFtcy5zZWFyY2hcblxuICAgIGxldCBmb3JtYXRRdWVyeTogUmVjb3JkPHN0cmluZywgYW55PiA9IHtcbiAgICAgIC4uLihvcHRpb25zPy5kZWZhdWx0UXVlcnkgfHwge30pLFxuICAgICAgZW52OiB0aGlzLmNvbmZpZy5lbnYsXG4gICAgfVxuICAgIC8vIOWwneivleino+aekOWTjeW6lOaVsOaNruS4uiBKU09OXG4gICAgcGFyc2UgJiYgKGZvcm1hdFF1ZXJ5LnBhcnNlID0gdHJ1ZSlcbiAgICBpblF1ZXJ5ICYmIChmb3JtYXRRdWVyeSA9IHtcbiAgICAgIC4uLmluUXVlcnksXG4gICAgICAuLi5mb3JtYXRRdWVyeSxcbiAgICB9KVxuXG4gICAgY29uc3QgZW5kUG9pbnRNb2RlID0gdGhpcy5jb25maWcuZW5kUG9pbnRNb2RlIHx8ICdDTE9VRF9BUEknXG5cbiAgICBjb25zdCB1cmwgPSBnZXRFbmRQb2ludEluZm8odGhpcy5jb25maWcuZW52LCBlbmRQb2ludE1vZGUpXG4gICAgbGV0IEJBU0VfVVJMID0gdXJsLmJhc2VVcmxcbiAgICBjb25zdCBQUk9UT0NPTCA9IHVybC5wcm90b2NvbFxuXG4gICAgaWYgKGVuZFBvaW50TW9kZSA9PT0gJ0dBVEVXQVknKSB7XG4gICAgICBpZiAoL14oKGRhdGFiYXNlKVxcLil8KGF1dGhcXC53c1dlYlNpZ24pLy50ZXN0KGFjdGlvbikpIHtcbiAgICAgICAgY29uc3QgdXJsID0gZ2V0RW5kUG9pbnRJbmZvKHRoaXMuY29uZmlnLmVudiwgJ0NMT1VEX0FQSScpXG4gICAgICAgIEJBU0VfVVJMID0gYCR7dXJsLmJhc2VVcmwubWF0Y2goL1xcL1xcLyhbXi8/I10qKS8pWzBdfS93ZWJgXG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8g55Sf5oiQ6K+35rGCIHVybFxuICAgIGxldCBuZXdVcmxcbiAgICBpZiAob3B0aW9ucy5wYXRobmFtZSkge1xuICAgICAgbmV3VXJsID0gZm9ybWF0VXJsKFxuICAgICAgICBQUk9UT0NPTCxcbiAgICAgICAgYCR7Z2V0QmFzZUVuZFBvaW50KHRoaXMuY29uZmlnLmVudiwgZW5kUG9pbnRNb2RlKT8ucmVwbGFjZSgvXmh0dHBzPzovLCAnJyl9LyR7b3B0aW9ucy5wYXRobmFtZX1gLFxuICAgICAgICBmb3JtYXRRdWVyeSxcbiAgICAgIClcbiAgICB9IGVsc2Uge1xuICAgICAgbmV3VXJsID0gZm9ybWF0VXJsKFBST1RPQ09MLCBCQVNFX1VSTCwgZm9ybWF0UXVlcnkpXG4gICAgfVxuXG4gICAgaWYgKHNlYXJjaCkge1xuICAgICAgbmV3VXJsICs9IHNlYXJjaFxuICAgIH1cblxuICAgIGNvbnN0IHJlczogUmVzcG9uc2VPYmplY3QgPSBhd2FpdCB0aGlzLnBvc3QoXG4gICAgICB7XG4gICAgICAgIHVybDogbmV3VXJsLFxuICAgICAgICBkYXRhOiBwYXlsb2FkLFxuICAgICAgICAuLi5vcHRzLFxuICAgICAgfSxcbiAgICAgIGN1c3RvbVJlcU9wdHMsXG4gICAgKVxuXG4gICAgLy8g5L+d5a2YIHRyYWNlIGhlYWRlclxuICAgIGNvbnN0IHJlc1RyYWNlSGVhZGVyID0gcmVzLmhlYWRlcj8uWyd4LXRjYi10cmFjZSddXG4gICAgaWYgKHJlc1RyYWNlSGVhZGVyKSB7XG4gICAgICB0aGlzLmxvY2FsQ2FjaGUuc2V0U3RvcmUodGNiVHJhY2VLZXksIHJlc1RyYWNlSGVhZGVyKVxuICAgIH1cblxuICAgIGlmICgoTnVtYmVyKHJlcy5zdGF0dXMpICE9PSAyMDAgJiYgTnVtYmVyKHJlcy5zdGF0dXNDb2RlKSAhPT0gMjAwKSB8fCAhcmVzLmRhdGEpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignbmV0d29yayByZXF1ZXN0IGVycm9yJylcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzXG4gIH1cblxuICBwdWJsaWMgYXN5bmMgZmV0Y2gob3B0aW9uczogSUZldGNoT3B0aW9ucyAmIHsgdG9rZW4/OiBzdHJpbmc7IGN1c3RvbVJlcU9wdHM/OiBJQ3VzdG9tUmVxT3B0cyB9LCk6IFByb21pc2U8UmVzcG9uc2VPYmplY3Q+IHtcbiAgICBjb25zdCB7IHRva2VuLCBoZWFkZXJzID0ge30sIC4uLnJlc3RPcHRpb25zIH0gPSBvcHRpb25zXG5cbiAgICBjb25zdCBkb0ZldGNoID0gYXN5bmMgKCkgPT4gdGhpcy5yZXFDbGFzcy5mZXRjaCh7XG4gICAgICBoZWFkZXJzOiB7XG4gICAgICAgIC8vICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicsXG4gICAgICAgIC8vICdYLVJlcXVlc3QtSWQnOiBgJHt1dGlscy5nZW5lcmF0ZVJlcXVlc3RJZCgpfWAsXG4gICAgICAgIC8vICdYLVJlcXVlc3QtVGltZXN0YW1wJzogYCR7RGF0ZS5ub3coKX1gLFxuICAgICAgICAnWC1TREstVmVyc2lvbic6IGBAY2xvdWRiYXNlL2pzLXNkay8ke2dldFNka1ZlcnNpb24oKX1gLFxuICAgICAgICBBdXRob3JpemF0aW9uOiBgQmVhcmVyICR7YXdhaXQgdGhpcy5nZXRBY2Nlc3NUb2tlbih0b2tlbil9YCxcbiAgICAgICAgLi4udGhpcy5nZXREZWZhdWx0SGVhZGVycygpLFxuICAgICAgICAuLi5oZWFkZXJzLFxuICAgICAgfSxcbiAgICAgIC4uLnJlc3RPcHRpb25zLFxuICAgIH0pXG5cbiAgICB0cnkge1xuICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgZG9GZXRjaCgpXG4gICAgICByZXR1cm4gcmVzdWx0XG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICBpZiAoZXJyPy5jb2RlID09PSAnQUNDRVNTX1RPS0VOX0VYUElSRUQnKSB7XG4gICAgICAgIC8vIOWmguaenOaYr+WboOS4uiB0b2tlbiDov4fmnJ/lpLHotKXvvIzliLcgdG9rZW4g5ZCO5YaN6K+V5LiA5qyhXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5jb25maWc/Ll9mcm9tQXBwPy5vYXV0aEluc3RhbmNlPy5hdXRoQXBpPy5yZWZyZXNoVG9rZW5Gb3JjZSAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgIHRocm93IGVyclxuICAgICAgICB9XG4gICAgICAgIGF3YWl0IHRoaXMuY29uZmlnPy5fZnJvbUFwcD8ub2F1dGhJbnN0YW5jZT8uYXV0aEFwaT8ucmVmcmVzaFRva2VuRm9yY2UoKVxuICAgICAgICByZXR1cm4gZG9GZXRjaCgpXG4gICAgICB9XG4gICAgICAvLyDlhbbku5bljp/lm6DlkJHkuIrmipvlh7pcblxuICAgICAgdGhyb3cgZXJyXG4gICAgfVxuICB9XG5cbiAgcHVibGljIGFzeW5jIHNlbmQoXG4gICAgYWN0aW9uOiBzdHJpbmcsXG4gICAgZGF0YTogS1Y8YW55PiA9IHt9LFxuICAgIG9wdGlvbnM6IEtWPGFueT4gPSB7fSxcbiAgICBjdXN0b21SZXFPcHRzPzogSUN1c3RvbVJlcU9wdHMsXG4gICk6IFByb21pc2U8YW55PiB7XG4gICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLnJlcXVlc3QoXG4gICAgICBhY3Rpb24sXG4gICAgICBkYXRhLFxuICAgICAgeyAuLi5vcHRpb25zLCBvblVwbG9hZFByb2dyZXNzOiBkYXRhLm9uVXBsb2FkUHJvZ3Jlc3MgfSxcbiAgICAgIGN1c3RvbVJlcU9wdHMsXG4gICAgKVxuXG4gICAgaWYgKHJlc3BvbnNlLmRhdGEuY29kZSAmJiB0aGlzLnRocm93V2hlblJlcXVlc3RGYWlsKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgICBjb2RlOiBFUlJPUlMuT1BFUkFUSU9OX0ZBSUwsXG4gICAgICAgIG1zZzogYFske3Jlc3BvbnNlLmRhdGEuY29kZX1dICR7cmVzcG9uc2UuZGF0YS5tZXNzYWdlfWAsXG4gICAgICB9KSwpXG4gICAgfVxuXG4gICAgcmV0dXJuIHJlc3BvbnNlLmRhdGFcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBnYXRlV2F5KG9wdGlvbnM6IElHYXRlV2F5T3B0aW9ucywgY3VzdG9tUmVxT3B0cz86IElDdXN0b21SZXFPcHRzKSB7XG4gICAgY29uc3QgeyB1cmwsIG5hbWUsIGRhdGEsIHBhdGggPSAnJywgbWV0aG9kLCBoZWFkZXIgPSB7fSB9ID0gb3B0aW9uc1xuXG4gICAgaWYgKCghbmFtZSB8fCAhcGF0aCkgJiYgIXVybCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKEpTT04uc3RyaW5naWZ5KHtcbiAgICAgICAgY29kZTogRVJST1JTLklOVkFMSURfUEFSQU1TLFxuICAgICAgICBtc2c6ICdbZ2F0ZVdheV0gaW52YWxpZCBmdW5jdGlvbiBuYW1lIG9yIHBhdGggb3IgdXJsJyxcbiAgICAgIH0pLClcbiAgICB9XG4gICAgbGV0IGpzb25EYXRhXG4gICAgdHJ5IHtcbiAgICAgIGpzb25EYXRhID0gZGF0YSA/IEpTT04uc3RyaW5naWZ5KGRhdGEpIDogJydcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgICBjb2RlOiBFUlJPUlMuSU5WQUxJRF9QQVJBTVMsXG4gICAgICAgIG1zZzogJ1tnYXRlV2F5XSBpbnZhbGlkIGRhdGEnLFxuICAgICAgfSksKVxuICAgIH1cblxuICAgIGNvbnN0IHJlcXVlc3RJZCA9IHV0aWxzLmdlbmVyYXRlUmVxdWVzdElkKClcbiAgICBjb25zdCB7IGJhc2VVcmwsIHByb3RvY29sIH0gPSBnZXRFbmRQb2ludEluZm8odGhpcy5jb25maWcuZW52LCAnR0FURVdBWScpXG4gICAgY29uc3QgZW5kcG9pbnQgPSBgJHtwcm90b2NvbH0ke2Jhc2VVcmx9JHt1cmwgfHwgYC8ke3BhdGh9LyR7bmFtZX1gfWBcbiAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHRoaXMuZmV0Y2goe1xuICAgICAgbWV0aG9kOiBtZXRob2QgfHwgJ1BPU1QnLFxuICAgICAgaGVhZGVyczoge1xuICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb247IGNoYXJzZXQ9dXRmLTgnLFxuICAgICAgICAnWC1SZXF1ZXN0LUlkJzogcmVxdWVzdElkLFxuICAgICAgICAuLi5oZWFkZXIsXG4gICAgICB9LFxuICAgICAgLi4uKFsnR0VUJywgJ0hFQUQnXS5pbmNsdWRlcyhtZXRob2Q/LnRvVXBwZXJDYXNlPy4oKSkgPyB7fSA6IHsgYm9keToganNvbkRhdGEgfSksXG4gICAgICB1cmw6IGVuZHBvaW50LFxuICAgICAgY3VzdG9tUmVxT3B0cyxcbiAgICB9KVxuXG4gICAgcmV0dXJuIHsgcmVxdWVzdElkLCAuLi5yZXNwb25zZSwgZGF0YTogYXdhaXQgcmVzcG9uc2UuZGF0YSB9XG4gIH1cbn1cblxuY29uc3QgcmVxdWVzdE1hcDogS1Y8Q2xvdWRiYXNlUmVxdWVzdD4gPSB7fVxuXG5leHBvcnQgZnVuY3Rpb24gaW5pdFJlcXVlc3QoY29uZmlnOiBJQ2xvdWRiYXNlUmVxdWVzdENvbmZpZykge1xuICByZXF1ZXN0TWFwW2NvbmZpZy5lbnZdID0gbmV3IENsb3VkYmFzZVJlcXVlc3Qoe1xuICAgIC4uLmNvbmZpZyxcbiAgICB0aHJvdzogdHJ1ZSxcbiAgfSlcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFJlcXVlc3RCeUVudklkKGVudjogc3RyaW5nKTogQ2xvdWRiYXNlUmVxdWVzdCB7XG4gIHJldHVybiByZXF1ZXN0TWFwW2Vudl1cbn1cbiJdfQ==
|
|
458
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWJzL3JlcXVlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsYUFBYSxFQUFFLGVBQWUsRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQVNuRyxPQUFPLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQVVsRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sU0FBUyxDQUFBO0FBQ3ZDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxXQUFXLENBQUE7QUFDNUIsSUFBQSxNQUFNLEdBQUssU0FBUyxPQUFkLENBQWM7QUFDcEIsSUFBQSxRQUFRLEdBQTRCLEtBQUssU0FBakMsRUFBRSxVQUFVLEdBQWdCLEtBQUssV0FBckIsRUFBRSxTQUFTLEdBQUssS0FBSyxVQUFWLENBQVU7QUFHakQsSUFBTSwyQkFBMkIsR0FBRztJQUNsQyxhQUFhO0lBQ2IsYUFBYTtJQUNiLHVCQUF1QjtJQUN2Qix3QkFBd0I7SUFDeEIsYUFBYTtJQUNiLHVDQUF1QztJQUN2QyxpQ0FBaUM7SUFDakMsMEJBQTBCO0lBQzFCLDZCQUE2QjtJQUM3Qiw2QkFBNkI7SUFDN0IsMkJBQTJCO0NBQzVCLENBQUE7QUFFRCxTQUFTLFNBQVMsQ0FBQyxRQUE2QixFQUFFLElBQVksRUFBRSxLQUEyQjtJQUN6RixJQUFNLFlBQVksR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDbkMsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLFVBQVUsT0FBd0I7UUFDakQsSUFBTSxJQUFJLEdBQUcsRUFBRSxDQUFBO1FBQ2YsSUFBTSxPQUFPLEdBQUcsRUFBRSxDQUFBO1FBQ2xCLEtBQUssQ0FBQyxPQUFP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QUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLGdCQUFnQix1QkFDeEMsTUFBTSxLQUNULEtBQUssRUFBRSxJQUFJLElBQ1gsQ0FBQTtBQUNKLENBQUM7QUFFRCxNQUFNLFVBQVUsaUJBQWlCLENBQUMsR0FBVztJQUMzQyxPQUFPLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQTtBQUN4QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgREFUQV9WRVJTSU9OLCBnZXRTZGtWZXJzaW9uLCBnZXRCYXNlRW5kUG9pbnQsIGdldEVuZFBvaW50SW5mbyB9IGZyb20gJy4uL2NvbnN0YW50cy9jb21tb24nXG5pbXBvcnQge1xuICBJUmVxdWVzdE9wdGlvbnMsXG4gIFNES1JlcXVlc3RJbnRlcmZhY2UsXG4gIFJlc3BvbnNlT2JqZWN0LFxuICBJVXBsb2FkUmVxdWVzdE9wdGlvbnMsXG4gIElSZXF1ZXN0Q29uZmlnLFxuICBJRmV0Y2hPcHRpb25zLFxufSBmcm9tICdAY2xvdWRiYXNlL2FkYXB0ZXItaW50ZXJmYWNlJ1xuaW1wb3J0IHsgdXRpbHMsIGNvbnN0YW50cywgbGFuZ0V2ZW50IH0gZnJvbSAnQGNsb3VkYmFzZS91dGlsaXRpZXMnXG5pbXBvcnQgeyBFbmRQb2ludEtleSwgS1YgfSBmcm9tICdAY2xvdWRiYXNlL3R5cGVzJ1xuaW1wb3J0IHsgSUN1c3RvbVJlcU9wdHMgfSBmcm9tICdAY2xvdWRiYXNlL3R5cGVzL2Z1bmN0aW9ucydcbmltcG9ydCB7XG4gIElHZXRBY2Nlc3NUb2tlblJlc3VsdCxcbiAgSUNsb3VkYmFzZVJlcXVlc3RDb25maWcsXG4gIElBcHBlbmRlZFJlcXVlc3RJbmZvLFxuICBJUmVxdWVzdEJlZm9yZUhvb2ssXG59IGZyb20gJ0BjbG91ZGJhc2UvdHlwZXMvcmVxdWVzdCdcbmltcG9ydCB7IElDbG91ZGJhc2VDYWNoZSB9IGZyb20gJ0BjbG91ZGJhc2UvdHlwZXMvY2FjaGUnXG5pbXBvcnQgeyBnZXRMb2NhbENhY2hlIH0gZnJvbSAnLi9jYWNoZSdcbmltcG9ydCB7IFBsYXRmb3JtIH0gZnJvbSAnLi9hZGFwdGVyJ1xuY29uc3QgeyBFUlJPUlMgfSA9IGNvbnN0YW50c1xuY29uc3QgeyBnZW5TZXFJZCwgaXNGb3JtRGF0YSwgZm9ybWF0VXJsIH0gPSB1dGlsc1xuXG4vLyDkuIvpnaLlh6Dnp40gYWN0aW9uIOS4jemcgOimgSBhY2Nlc3MgdG9rZW5cbmNvbnN0IEFDVElPTlNfV0lUSE9VVF9BQ0NFU1NUT0tFTiA9IFtcbiAgJ2F1dGguZ2V0Snd0JyxcbiAgJ2F1dGgubG9nb3V0JyxcbiAgJ2F1dGguc2lnbkluV2l0aFRpY2tldCcsXG4gICdhdXRoLnNpZ25JbkFub255bW91c2x5JyxcbiAgJ2F1dGguc2lnbkluJyxcbiAgJ2F1dGguZmV0Y2hBY2Nlc3NUb2tlbldpdGhSZWZyZXNoVG9rZW4nLFxuICAnYXV0aC5zaWduVXBXaXRoRW1haWxBbmRQYXNzd29yZCcsXG4gICdhdXRoLmFjdGl2YXRlRW5kVXNlck1haWwnLFxuICAnYXV0aC5zZW5kUGFzc3dvcmRSZXNldEVtYWlsJyxcbiAgJ2F1dGgucmVzZXRQYXNzd29yZFdpdGhUb2tlbicsXG4gICdhdXRoLmlzVXNlcm5hbWVSZWdpc3RlcmVkJyxcbl1cblxuZnVuY3Rpb24gYmluZEhvb2tzKGluc3RhbmNlOiBTREtSZXF1ZXN0SW50ZXJmYWNlLCBuYW1lOiBzdHJpbmcsIGhvb2tzOiBJUmVxdWVzdEJlZm9yZUhvb2tbXSkge1xuICBjb25zdCBvcmlnaW5NZXRob2QgPSBpbnN0YW5jZVtuYW1lXVxuICBpbnN0YW5jZVtuYW1lXSA9IGZ1bmN0aW9uIChvcHRpb25zOiBJUmVxdWVzdE9wdGlvbnMpIHtcbiAgICBjb25zdCBkYXRhID0ge31cbiAgICBjb25zdCBoZWFkZXJzID0ge31cbiAgICBob29rcy5mb3JFYWNoKChob29rKSA9PiB7XG4gICAgICBjb25zdCB7IGRhdGE6IGFwcGVuZGVkRGF0YSwgaGVhZGVyczogYXBwZW5kZWRIZWFkZXJzIH0gPSBob29rLmNhbGwoaW5zdGFuY2UsIG9wdGlvbnMpXG4gICAgICBPYmplY3QuYXNzaWduKGRhdGEsIGFwcGVuZGVkRGF0YSlcbiAgICAgIE9iamVjdC5hc3NpZ24oaGVhZGVycywgYXBwZW5kZWRIZWFkZXJzKVxuICAgIH0pXG4gICAgY29uc3Qgb3JpZ2luRGF0YSA9IG9wdGlvbnMuZGF0YVxuICAgIG9yaWdpbkRhdGFcbiAgICAgICYmICgoKSA9PiB7XG4gICAgICAgIGlmIChpc0Zvcm1EYXRhKG9yaWdpbkRhdGEpKSB7XG4gICAgICAgICAgT2JqZWN0LmtleXMoZGF0YSkuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgICAgICAgICAob3JpZ2luRGF0YSBhcyBGb3JtRGF0YSkuYXBwZW5kKGtleSwgZGF0YVtrZXldKVxuICAgICAgICAgIH0pXG4gICAgICAgICAgcmV0dXJuXG4gICAgICAgIH1cbiAgICAgICAgb3B0aW9ucy5kYXRhID0ge1xuICAgICAgICAgIC4uLm9yaWdpbkRhdGEsXG4gICAgICAgICAgLi4uZGF0YSxcbiAgICAgICAgfVxuICAgICAgfSkoKVxuICAgIG9wdGlvbnMuaGVhZGVycyA9IHtcbiAgICAgIC4uLihvcHRpb25zLmhlYWRlcnMgfHwge30pLFxuICAgICAgLi4uaGVhZGVycyxcbiAgICB9XG4gICAgcmV0dXJuIChvcmlnaW5NZXRob2QgYXMgRnVuY3Rpb24pLmNhbGwoaW5zdGFuY2UsIG9wdGlvbnMpXG4gIH1cbn1cbmZ1bmN0aW9uIGJlZm9yZUVhY2goKTogSUFwcGVuZGVkUmVxdWVzdEluZm8ge1xuICBjb25zdCBzZXFJZCA9IGdlblNlcUlkKClcbiAgcmV0dXJuIHtcbiAgICBkYXRhOiB7XG4gICAgICBzZXFJZCxcbiAgICB9LFxuICAgIGhlYWRlcnM6IHtcbiAgICAgICdYLVNESy1WZXJzaW9uJzogYEBjbG91ZGJhc2UvanMtc2RrLyR7Z2V0U2RrVmVyc2lvbigpfWAsXG4gICAgICAneC1zZXFpZCc6IHNlcUlkLFxuICAgIH0sXG4gIH1cbn1cbmV4cG9ydCBpbnRlcmZhY2UgSUdhdGVXYXlPcHRpb25zIHtcbiAgbmFtZT86IHN0cmluZ1xuICBkYXRhPzogYW55XG4gIHBhdGg/OiBzdHJpbmdcbiAgbWV0aG9kOiBzdHJpbmdcbiAgaGVhZGVyPzoge31cbiAgdXJsPzogc3RyaW5nXG59XG5leHBvcnQgaW50ZXJmYWNlIElDbG91ZGJhc2VSZXF1ZXN0IHtcbiAgcG9zdDogKG9wdGlvbnM6IElSZXF1ZXN0T3B0aW9ucykgPT4gUHJvbWlzZTxSZXNwb25zZU9iamVjdD5cbiAgdXBsb2FkOiAob3B0aW9uczogSVVwbG9hZFJlcXVlc3RPcHRpb25zKSA9PiBQcm9taXNlPFJlc3BvbnNlT2JqZWN0PlxuICBkb3dubG9hZDogKG9wdGlvbnM6IElSZXF1ZXN0T3B0aW9ucykgPT4gUHJvbWlzZTxSZXNwb25zZU9iamVjdD5cbiAgcmVxdWVzdDogKGFjdGlvbjogc3RyaW5nLCBwYXJhbXM6IEtWPGFueT4sIG9wdGlvbnM/OiBLVjxhbnk+KSA9PiBQcm9taXNlPFJlc3BvbnNlT2JqZWN0PlxuICBzZW5kOiAoYWN0aW9uOiBzdHJpbmcsIGRhdGE6IEtWPGFueT4pID0+IFByb21pc2U8YW55PlxuICBmZXRjaDogKG9wdGlvbnM6IElGZXRjaE9wdGlvbnMpID0+IFByb21pc2U8UmVzcG9uc2VPYmplY3Q+XG59XG5cbi8qKlxuICogQGNsYXNzIENsb3VkYmFzZVJlcXVlc3RcbiAqL1xuZXhwb3J0IGNsYXNzIENsb3VkYmFzZVJlcXVlc3QgaW1wbGVtZW50cyBJQ2xvdWRiYXNlUmVxdWVzdCB7XG4gIGNvbmZpZzogSUNsb3VkYmFzZVJlcXVlc3RDb25maWdcbiAgcHJpdmF0ZSByZXFDbGFzczogU0RLUmVxdWVzdEludGVyZmFjZVxuICAvLyDor7fmsYLlpLHotKXmmK/lkKbmipvlh7pFcnJvclxuICBwcml2YXRlIHRocm93V2hlblJlcXVlc3RGYWlsID0gZmFsc2VcbiAgLy8g5oyB5LmF5YyW5pys5Zyw5a2Y5YKoXG4gIHByaXZhdGUgbG9jYWxDYWNoZTogSUNsb3VkYmFzZUNhY2hlXG4gIC8qKlxuICAgKiDliJ3lp4vljJZcbiAgICogQHBhcmFtIGNvbmZpZ1xuICAgKi9cbiAgY29uc3RydWN0b3IoY29uZmlnOiBJQ2xvdWRiYXNlUmVxdWVzdENvbmZpZyAmIHsgdGhyb3c/OiBib29sZWFuIH0pIHtcbiAgICB0aGlzLmNvbmZpZyA9IGNvbmZpZ1xuICAgIGNvbnN0IHJlcUNvbmZpZzogSVJlcXVlc3RDb25maWcgPSB7XG4gICAgICB0aW1lb3V0OiB0aGlzLmNvbmZpZy50aW1lb3V0LFxuICAgICAgdGltZW91dE1zZzogYFtAY2xvdWRiYXNlL2pzLXNka10g6K+35rGC5ZyoJHt0aGlzLmNvbmZpZy50aW1lb3V0IC8gMTAwMH1z5YaF5pyq5a6M5oiQ77yM5bey5Lit5patYCxcbiAgICAgIHJlc3RyaWN0ZWRNZXRob2RzOiBbJ3Bvc3QnLCAncHV0J10sXG4gICAgfVxuICAgIHRoaXMucmVxQ2xhc3MgPSBuZXcgUGxhdGZvcm0uYWRhcHRlci5yZXFDbGFzcyhyZXFDb25maWcpXG4gICAgdGhpcy50aHJvd1doZW5SZXF1ZXN0RmFpbCA9IGNvbmZpZy50aHJvdyB8fCBmYWxzZVxuICAgIHRoaXMubG9jYWxDYWNoZSA9IGdldExvY2FsQ2FjaGUodGhpcy5jb25maWcuZW52KVxuXG4gICAgaWYgKHRoaXMuY29uZmlnLmVuZFBvaW50TW9kZSAhPT0gJ0dBVEVXQVknKSB7XG4gICAgICBiaW5kSG9va3ModGhpcy5yZXFDbGFzcywgJ3Bvc3QnLCBbYmVmb3JlRWFjaF0pXG4gICAgICBiaW5kSG9va3ModGhpcy5yZXFDbGFzcywgJ3VwbG9hZCcsIFtiZWZvcmVFYWNoXSlcbiAgICAgIGJpbmRIb29rcyh0aGlzLnJlcUNsYXNzLCAnZG93bmxvYWQnLCBbYmVmb3JlRWFjaF0pXG4gICAgfVxuXG4gICAgbGFuZ0V2ZW50LmJ1cy5vbihsYW5nRXZlbnQuTEFOR19DSEFOR0VfRVZFTlQsIChwYXJhbXMpID0+IHtcbiAgICAgIHRoaXMuY29uZmlnLmkxOG4gPSBwYXJhbXMuZGF0YT8uaTE4biB8fCB0aGlzLmNvbmZpZy5pMThuXG4gICAgfSlcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBnZXRBY2Nlc3NUb2tlbih0b2tlbiA9IG51bGwpIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZXFlcWVxXG4gICAgaWYgKHRva2VuICE9IG51bGwpIHtcbiAgICAgIHJldHVybiB0b2tlblxuICAgIH1cbiAgICBjb25zdCBhcHAgPSB0aGlzLmNvbmZpZy5fZnJvbUFwcFxuXG4gICAgaWYgKCFhcHAub2F1dGhJbnN0YW5jZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCd5b3UgY2FuXFwndCByZXF1ZXN0IHdpdGhvdXQgYXV0aCcpXG4gICAgfVxuXG4gICAgY29uc3QgeyBvYXV0aEluc3RhbmNlIH0gPSBhcHBcbiAgICBjb25zdCBvYXV0aENsaWVudCA9IG9hdXRoSW5zdGFuY2Uub2F1dGgyY2xpZW50XG4gICAgcmV0dXJuIChhd2FpdCB0aGlzLmdldE9hdXRoQWNjZXNzVG9rZW5WMihvYXV0aENsaWVudCkpLmFjY2Vzc1Rva2VuXG4gIH1cblxuICBwdWJsaWMgZ2V0RGVmYXVsdEhlYWRlcnMoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIFt0aGlzLmNvbmZpZy5pMThuPy5MQU5HX0hFQURFUl9LRVldOiB0aGlzLmNvbmZpZy5pMThuPy5sYW5nLFxuICAgICAgJ1gtU0RLLVZlcnNpb24nOiBgQGNsb3VkYmFzZS9qcy1zZGsvJHtnZXRTZGtWZXJzaW9uKCl9YCxcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgcG9zdChvcHRpb25zOiBJUmVxdWVzdE9wdGlvbnMsIGN1c3RvbVJlcU9wdHM/OiBJQ3VzdG9tUmVxT3B0cyk6IFByb21pc2U8UmVzcG9uc2VPYmplY3Q+IHtcbiAgICBjb25zdCByZXMgPSBhd2FpdCB0aGlzLnJlcUNsYXNzLnBvc3Qoe1xuICAgICAgLi4ub3B0aW9ucyxcbiAgICAgIGhlYWRlcnM6IHsgLi4ub3B0aW9ucy5oZWFkZXJzLCAuLi50aGlzLmdldERlZmF1bHRIZWFkZXJzKCkgfSxcbiAgICAgIGN1c3RvbVJlcU9wdHMsXG4gICAgfSlcbiAgICByZXR1cm4gcmVzXG4gIH1cbiAgcHVibGljIGFzeW5jIHVwbG9hZChvcHRpb25zOiBJVXBsb2FkUmVxdWVzdE9wdGlvbnMpOiBQcm9taXNlPFJlc3BvbnNlT2JqZWN0PiB7XG4gICAgY29uc3QgcmVzID0gYXdhaXQgdGhpcy5yZXFDbGFzcy51cGxvYWQoeyAuLi5vcHRpb25zLCBoZWFkZXJzOiB7IC4uLm9wdGlvbnMuaGVhZGVycywgLi4udGhpcy5nZXREZWZhdWx0SGVhZGVycygpIH0gfSlcbiAgICByZXR1cm4gcmVzXG4gIH1cbiAgcHVibGljIGFzeW5jIGRvd25sb2FkKG9wdGlvbnM6IElSZXF1ZXN0T3B0aW9ucyk6IFByb21pc2U8UmVzcG9uc2VPYmplY3Q+IHtcbiAgICBjb25zdCByZXMgPSBhd2FpdCB0aGlzLnJlcUNsYXNzLmRvd25sb2FkKHtcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICBoZWFkZXJzOiB7IC4uLm9wdGlvbnMuaGVhZGVycywgLi4udGhpcy5nZXREZWZhdWx0SGVhZGVycygpIH0sXG4gICAgfSlcbiAgICByZXR1cm4gcmVzXG4gIH1cblxuICBwdWJsaWMgZ2V0QmFzZUVuZFBvaW50KGVuZFBvaW50S2V5OiBFbmRQb2ludEtleSA9ICdDTE9VRF9BUEknKSB7XG4gICAgcmV0dXJuIGdldEJhc2VFbmRQb2ludCh0aGlzLmNvbmZpZy5lbnYsIGVuZFBvaW50S2V5KVxuICB9XG5cbiAgcHVibGljIGFzeW5jIGdldE9hdXRoQWNjZXNzVG9rZW5WMihvYXV0aENsaWVudDogYW55KTogUHJvbWlzZTxJR2V0QWNjZXNzVG9rZW5SZXN1bHQ+IHtcbiAgICBjb25zdCB2YWxpZEFjY2Vzc1Rva2VuID0gYXdhaXQgb2F1dGhDbGllbnQuZ2V0QWNjZXNzVG9rZW4oKVxuICAgIGNvbnN0IGNyZWRlbnRpYWxzID0gYXdhaXQgb2F1dGhDbGllbnQuZ2V0Q3JlZGVudGlhbHMoKVxuICAgIHJldHVybiB7XG4gICAgICBhY2Nlc3NUb2tlbjogdmFsaWRBY2Nlc3NUb2tlbixcbiAgICAgIGFjY2Vzc1Rva2VuRXhwaXJlOiBuZXcgRGF0ZShjcmVkZW50aWFscy5leHBpcmVzX2F0KS5nZXRUaW1lKCksXG4gICAgfVxuICB9XG5cbiAgLyogZXNsaW50LWRpc2FibGUgY29tcGxleGl0eSAqL1xuICBwdWJsaWMgYXN5bmMgcmVxdWVzdChcbiAgICBhY3Rpb246IHN0cmluZyxcbiAgICBwYXJhbXM6IEtWPGFueT4sXG4gICAgb3B0aW9ucz86IHtcbiAgICAgIG9uVXBsb2FkUHJvZ3Jlc3M/OiBGdW5jdGlvblxuICAgICAgcGF0aG5hbWU/OiBzdHJpbmdcbiAgICAgIHBhcnNlPzogYm9vbGVhblxuICAgICAgaW5RdWVyeT86IEtWPGFueT5cbiAgICAgIHNlYXJjaD86IHN0cmluZ1xuICAgICAgZGVmYXVsdFF1ZXJ5PzogS1Y8YW55PlxuICAgICAgaGVhZGVycz86IEtWPHN0cmluZz5cbiAgICB9LFxuICAgIGN1c3RvbVJlcU9wdHM/OiBJQ3VzdG9tUmVxT3B0cyxcbiAgKTogUHJvbWlzZTxSZXNwb25zZU9iamVjdD4ge1xuICAgIGNvbnN0IHRjYlRyYWNlS2V5ID0gYHgtdGNiLXRyYWNlXyR7dGhpcy5jb25maWcuZW52fWBcbiAgICBsZXQgY29udGVudFR5cGUgPSAnYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkJ1xuXG4gICAgY29uc3QgdG1wT2JqOiBLVjxhbnk+ID0ge1xuICAgICAgYWN0aW9uLFxuICAgICAgZGF0YVZlcnNpb246IERBVEFfVkVSU0lPTixcbiAgICAgIGVudjogdGhpcy5jb25maWcuZW52LFxuICAgICAgLi4ucGFyYW1zLFxuICAgIH1cblxuICAgIGlmIChBQ1RJT05TX1dJVEhPVVRfQUNDRVNTVE9LRU4uaW5kZXhPZihhY3Rpb24pID09PSAtMSkge1xuICAgICAgY29uc3QgYXBwID0gdGhpcy5jb25maWcuX2Zyb21BcHBcblxuICAgICAgaWYgKCFhcHAub2F1dGhJbnN0YW5jZSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ3lvdSBjYW5cXCd0IHJlcXVlc3Qgd2l0aG91dCBhdXRoJylcbiAgICAgIH1cblxuICAgICAgY29uc3QgeyBvYXV0aEluc3RhbmNlIH0gPSBhcHBcbiAgICAgIGNvbnN0IG9hdXRoQ2xpZW50ID0gb2F1dGhJbnN0YW5jZS5vYXV0aDJjbGllbnRcbiAgICAgIHRtcE9iai5hY2Nlc3NfdG9rZW4gPSAoYXdhaXQgdGhpcy5nZXRPYXV0aEFjY2Vzc1Rva2VuVjIob2F1dGhDbGllbnQpKS5hY2Nlc3NUb2tlblxuICAgIH1cblxuICAgIC8vIOaLvGJvZHnlkoxjb250ZW50LXR5cGVcbiAgICBsZXQgcGF5bG9hZFxuICAgIGlmIChhY3Rpb24gPT09ICdzdG9yYWdlLnVwbG9hZEZpbGUnKSB7XG4gICAgICBwYXlsb2FkID0gbmV3IEZvcm1EYXRhKClcbiAgICAgIE9iamVjdC5rZXlzKHBheWxvYWQpLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgICBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHBheWxvYWQsIGtleSkgJiYgcGF5bG9hZFtrZXldICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICBwYXlsb2FkLmFwcGVuZChrZXksIHRtcE9ialtrZXldKVxuICAgICAgICB9XG4gICAgICB9KVxuICAgICAgY29udGVudFR5cGUgPSAnbXVsdGlwYXJ0L2Zvcm0tZGF0YSdcbiAgICB9IGVsc2Uge1xuICAgICAgY29udGVudFR5cGUgPSAnYXBwbGljYXRpb24vanNvbjtjaGFyc2V0PVVURi04J1xuICAgICAgcGF5bG9hZCA9IHt9XG4gICAgICBPYmplY3Qua2V5cyh0bXBPYmopLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgICBpZiAodG1wT2JqW2tleV0gIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIHBheWxvYWRba2V5XSA9IHRtcE9ialtrZXldXG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgfVxuICAgIGNvbnN0IG9wdHM6IGFueSA9IHtcbiAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgJ2NvbnRlbnQtdHlwZSc6IGNvbnRlbnRUeXBlLFxuICAgICAgICAuLi50aGlzLmdldERlZmF1bHRIZWFkZXJzKCksXG4gICAgICAgIC4uLm9wdGlvbnM/LmhlYWRlcnMsXG4gICAgICB9LFxuICAgIH1cbiAgICBpZiAob3B0aW9ucz8ub25VcGxvYWRQcm9ncmVzcykge1xuICAgICAgb3B0cy5vblVwbG9hZFByb2dyZXNzID0gb3B0aW9ucy5vblVwbG9hZFByb2dyZXNzXG4gICAgfVxuXG4gICAgaWYgKHRoaXMuY29uZmlnLnJlZ2lvbikge1xuICAgICAgb3B0cy5oZWFkZXJzWydYLVRDQi1SZWdpb24nXSA9IHRoaXMuY29uZmlnLnJlZ2lvblxuICAgIH1cblxuICAgIGNvbnN0IHRyYWNlSGVhZGVyID0gdGhpcy5sb2NhbENhY2hlLmdldFN0b3JlKHRjYlRyYWNlS2V5KVxuICAgIGlmICh0cmFjZUhlYWRlcikge1xuICAgICAgb3B0cy5oZWFkZXJzWydYLVRDQi1UcmFjZSddID0gdHJhY2VIZWFkZXJcbiAgICB9XG5cbiAgICAvLyDlj5Hlh7ror7fmsYJcbiAgICAvLyDmlrDnmoQgdXJsIOmcgOimgeaQuuW4piBlbnYg5Y+C5pWw6L+b6KGMIENPUlMg5qCh6aqMXG4gICAgLy8g6K+35rGC6ZO+5o6l5pSv5oyB5re75Yqg5Yqo5oCBIHF1ZXJ5IOWPguaVsO+8jOaWueS+v+eUqOaIt+iwg+ivleWumuS9jeivt+axglxuICAgIGNvbnN0IHBhcnNlID0gb3B0aW9ucz8ucGFyc2UgIT09IHVuZGVmaW5lZCA/IG9wdGlvbnMucGFyc2UgOiBwYXJhbXMucGFyc2VcbiAgICBjb25zdCBpblF1ZXJ5ID0gb3B0aW9ucz8uaW5RdWVyeSAhPT0gdW5kZWZpbmVkID8gb3B0aW9ucy5pblF1ZXJ5IDogcGFyYW1zLmluUXVlcnlcbiAgICBjb25zdCBzZWFyY2ggPSBvcHRpb25zPy5zZWFyY2ggIT09IHVuZGVmaW5lZCA/IG9wdGlvbnMuc2VhcmNoIDogcGFyYW1zLnNlYXJjaFxuXG4gICAgbGV0IGZvcm1hdFF1ZXJ5OiBSZWNvcmQ8c3RyaW5nLCBhbnk+ID0ge1xuICAgICAgLi4uKG9wdGlvbnM/LmRlZmF1bHRRdWVyeSB8fCB7fSksXG4gICAgICBlbnY6IHRoaXMuY29uZmlnLmVudixcbiAgICB9XG4gICAgLy8g5bCd6K+V6Kej5p6Q5ZON5bqU5pWw5o2u5Li6IEpTT05cbiAgICBwYXJzZSAmJiAoZm9ybWF0UXVlcnkucGFyc2UgPSB0cnVlKVxuICAgIGluUXVlcnlcbiAgICAgICYmIChmb3JtYXRRdWVyeSA9IHtcbiAgICAgICAgLi4uaW5RdWVyeSxcbiAgICAgICAgLi4uZm9ybWF0UXVlcnksXG4gICAgICB9KVxuXG4gICAgY29uc3QgZW5kUG9pbnRNb2RlID0gdGhpcy5jb25maWcuZW5kUG9pbnRNb2RlIHx8ICdDTE9VRF9BUEknXG5cbiAgICBjb25zdCB1cmwgPSBnZXRFbmRQb2ludEluZm8odGhpcy5jb25maWcuZW52LCBlbmRQb2ludE1vZGUpXG4gICAgbGV0IEJBU0VfVVJMID0gdXJsLmJhc2VVcmxcbiAgICBjb25zdCBQUk9UT0NPTCA9IHVybC5wcm90b2NvbFxuXG4gICAgaWYgKGVuZFBvaW50TW9kZSA9PT0gJ0dBVEVXQVknKSB7XG4gICAgICBpZiAoL14oKGRhdGFiYXNlKVxcLil8KGF1dGhcXC53c1dlYlNpZ24pLy50ZXN0KGFjdGlvbikpIHtcbiAgICAgICAgY29uc3QgdXJsID0gZ2V0RW5kUG9pbnRJbmZvKHRoaXMuY29uZmlnLmVudiwgJ0NMT1VEX0FQSScpXG4gICAgICAgIEJBU0VfVVJMID0gYCR7dXJsLmJhc2VVcmwubWF0Y2goL1xcL1xcLyhbXi8/I10qKS8pWzBdfS93ZWJgXG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8g55Sf5oiQ6K+35rGCIHVybFxuICAgIGxldCBuZXdVcmxcbiAgICBpZiAob3B0aW9ucy5wYXRobmFtZSkge1xuICAgICAgbmV3VXJsID0gZm9ybWF0VXJsKFxuICAgICAgICBQUk9UT0NPTCxcbiAgICAgICAgYCR7Z2V0QmFzZUVuZFBvaW50KHRoaXMuY29uZmlnLmVudiwgZW5kUG9pbnRNb2RlKT8ucmVwbGFjZSgvXmh0dHBzPzovLCAnJyl9LyR7b3B0aW9ucy5wYXRobmFtZX1gLFxuICAgICAgICBmb3JtYXRRdWVyeSxcbiAgICAgIClcbiAgICB9IGVsc2Uge1xuICAgICAgbmV3VXJsID0gZm9ybWF0VXJsKFBST1RPQ09MLCBCQVNFX1VSTCwgZm9ybWF0UXVlcnkpXG4gICAgfVxuXG4gICAgaWYgKHNlYXJjaCkge1xuICAgICAgbmV3VXJsICs9IHNlYXJjaFxuICAgIH1cblxuICAgIGNvbnN0IHJlczogUmVzcG9uc2VPYmplY3QgPSBhd2FpdCB0aGlzLnBvc3QoXG4gICAgICB7XG4gICAgICAgIHVybDogbmV3VXJsLFxuICAgICAgICBkYXRhOiBwYXlsb2FkLFxuICAgICAgICAuLi5vcHRzLFxuICAgICAgfSxcbiAgICAgIGN1c3RvbVJlcU9wdHMsXG4gICAgKVxuXG4gICAgLy8g5L+d5a2YIHRyYWNlIGhlYWRlclxuICAgIGNvbnN0IHJlc1RyYWNlSGVhZGVyID0gcmVzLmhlYWRlcj8uWyd4LXRjYi10cmFjZSddXG4gICAgaWYgKHJlc1RyYWNlSGVhZGVyKSB7XG4gICAgICB0aGlzLmxvY2FsQ2FjaGUuc2V0U3RvcmUodGNiVHJhY2VLZXksIHJlc1RyYWNlSGVhZGVyKVxuICAgIH1cblxuICAgIGlmICgoTnVtYmVyKHJlcy5zdGF0dXMpICE9PSAyMDAgJiYgTnVtYmVyKHJlcy5zdGF0dXNDb2RlKSAhPT0gMjAwKSB8fCAhcmVzLmRhdGEpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignbmV0d29yayByZXF1ZXN0IGVycm9yJylcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzXG4gIH1cblxuICBwdWJsaWMgYXN5bmMgZmV0Y2gob3B0aW9uczogSUZldGNoT3B0aW9ucyAmIHsgdG9rZW4/OiBzdHJpbmc7IGN1c3RvbVJlcU9wdHM/OiBJQ3VzdG9tUmVxT3B0cyB9LCk6IFByb21pc2U8UmVzcG9uc2VPYmplY3Q+IHtcbiAgICBjb25zdCB7IHRva2VuLCBoZWFkZXJzID0ge30sIC4uLnJlc3RPcHRpb25zIH0gPSBvcHRpb25zXG5cbiAgICBjb25zdCBkb0ZldGNoID0gYXN5bmMgKCkgPT4gdGhpcy5yZXFDbGFzcy5mZXRjaCh7XG4gICAgICBoZWFkZXJzOiB7XG4gICAgICAgIC8vICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicsXG4gICAgICAgIC8vICdYLVJlcXVlc3QtSWQnOiBgJHt1dGlscy5nZW5lcmF0ZVJlcXVlc3RJZCgpfWAsXG4gICAgICAgIC8vICdYLVJlcXVlc3QtVGltZXN0YW1wJzogYCR7RGF0ZS5ub3coKX1gLFxuICAgICAgICAnWC1TREstVmVyc2lvbic6IGBAY2xvdWRiYXNlL2pzLXNkay8ke2dldFNka1ZlcnNpb24oKX1gLFxuICAgICAgICBBdXRob3JpemF0aW9uOiBgQmVhcmVyICR7YXdhaXQgdGhpcy5nZXRBY2Nlc3NUb2tlbih0b2tlbil9YCxcbiAgICAgICAgLi4udGhpcy5nZXREZWZhdWx0SGVhZGVycygpLFxuICAgICAgICAuLi5oZWFkZXJzLFxuICAgICAgfSxcbiAgICAgIC4uLnJlc3RPcHRpb25zLFxuICAgIH0pXG5cbiAgICB0cnkge1xuICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgZG9GZXRjaCgpXG4gICAgICByZXR1cm4gcmVzdWx0XG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICBpZiAoZXJyPy5jb2RlID09PSAnQUNDRVNTX1RPS0VOX0VYUElSRUQnKSB7XG4gICAgICAgIC8vIOWmguaenOaYr+WboOS4uiB0b2tlbiDov4fmnJ/lpLHotKXvvIzliLcgdG9rZW4g5ZCO5YaN6K+V5LiA5qyhXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5jb25maWc/Ll9mcm9tQXBwPy5vYXV0aEluc3RhbmNlPy5hdXRoQXBpPy5yZWZyZXNoVG9rZW5Gb3JjZSAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgIHRocm93IGVyclxuICAgICAgICB9XG4gICAgICAgIGF3YWl0IHRoaXMuY29uZmlnPy5fZnJvbUFwcD8ub2F1dGhJbnN0YW5jZT8uYXV0aEFwaT8ucmVmcmVzaFRva2VuRm9yY2UoKVxuICAgICAgICByZXR1cm4gZG9GZXRjaCgpXG4gICAgICB9XG4gICAgICAvLyDlhbbku5bljp/lm6DlkJHkuIrmipvlh7pcblxuICAgICAgdGhyb3cgZXJyXG4gICAgfVxuICB9XG5cbiAgcHVibGljIGFzeW5jIHNlbmQoXG4gICAgYWN0aW9uOiBzdHJpbmcsXG4gICAgZGF0YTogS1Y8YW55PiA9IHt9LFxuICAgIG9wdGlvbnM6IEtWPGFueT4gPSB7fSxcbiAgICBjdXN0b21SZXFPcHRzPzogSUN1c3RvbVJlcU9wdHMsXG4gICk6IFByb21pc2U8YW55PiB7XG4gICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLnJlcXVlc3QoXG4gICAgICBhY3Rpb24sXG4gICAgICBkYXRhLFxuICAgICAgeyAuLi5vcHRpb25zLCBvblVwbG9hZFByb2dyZXNzOiBkYXRhLm9uVXBsb2FkUHJvZ3Jlc3MgfSxcbiAgICAgIGN1c3RvbVJlcU9wdHMsXG4gICAgKVxuXG4gICAgaWYgKHJlc3BvbnNlLmRhdGEuY29kZSAmJiB0aGlzLnRocm93V2hlblJlcXVlc3RGYWlsKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgICBjb2RlOiBFUlJPUlMuT1BFUkFUSU9OX0ZBSUwsXG4gICAgICAgIG1zZzogYFske3Jlc3BvbnNlLmRhdGEuY29kZX1dICR7cmVzcG9uc2UuZGF0YS5tZXNzYWdlfWAsXG4gICAgICB9KSwpXG4gICAgfVxuXG4gICAgcmV0dXJuIHJlc3BvbnNlLmRhdGFcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBnYXRlV2F5KG9wdGlvbnM6IElHYXRlV2F5T3B0aW9ucywgY3VzdG9tUmVxT3B0cz86IElDdXN0b21SZXFPcHRzKSB7XG4gICAgY29uc3QgeyB1cmwsIG5hbWUsIGRhdGEsIHBhdGggPSAnJywgbWV0aG9kLCBoZWFkZXIgPSB7fSB9ID0gb3B0aW9uc1xuXG4gICAgaWYgKCghbmFtZSB8fCAhcGF0aCkgJiYgIXVybCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKEpTT04uc3RyaW5naWZ5KHtcbiAgICAgICAgY29kZTogRVJST1JTLklOVkFMSURfUEFSQU1TLFxuICAgICAgICBtc2c6ICdbZ2F0ZVdheV0gaW52YWxpZCBmdW5jdGlvbiBuYW1lIG9yIHBhdGggb3IgdXJsJyxcbiAgICAgIH0pLClcbiAgICB9XG4gICAgbGV0IGpzb25EYXRhXG4gICAgdHJ5IHtcbiAgICAgIGpzb25EYXRhID0gZGF0YSA/IEpTT04uc3RyaW5naWZ5KGRhdGEpIDogJydcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgICBjb2RlOiBFUlJPUlMuSU5WQUxJRF9QQVJBTVMsXG4gICAgICAgIG1zZzogJ1tnYXRlV2F5XSBpbnZhbGlkIGRhdGEnLFxuICAgICAgfSksKVxuICAgIH1cblxuICAgIGNvbnN0IHJlcXVlc3RJZCA9IHV0aWxzLmdlbmVyYXRlUmVxdWVzdElkKClcbiAgICBjb25zdCB7IGJhc2VVcmwsIHByb3RvY29sIH0gPSBnZXRFbmRQb2ludEluZm8odGhpcy5jb25maWcuZW52LCAnR0FURVdBWScpXG4gICAgbGV0IGVuZHBvaW50ID0gYCR7cHJvdG9jb2x9JHtiYXNlVXJsfSR7dXJsIHx8IGAvJHtwYXRofS8ke25hbWV9YH1gXG5cbiAgICBjb25zdCBpc0dldEFuZEhlYWQgPSBbJ0dFVCcsICdIRUFEJ10uaW5jbHVkZXMobWV0aG9kPy50b1VwcGVyQ2FzZT8uKCkpXG5cbiAgICBpZiAoaXNHZXRBbmRIZWFkKSB7XG4gICAgICB0cnkge1xuICAgICAgICBsZXQgZGF0YVBhcnNlID0ge31cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBkYXRhUGFyc2UgPSBKU09OLnBhcnNlKGRhdGEgYXMgYW55KVxuICAgICAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICAgIGRhdGFQYXJzZSA9IGRhdGEgfHwge31cbiAgICAgICAgfVxuICAgICAgICBlbmRwb2ludCA9IGAke2VuZHBvaW50fSR7ZW5kcG9pbnQuaW5jbHVkZXMoJz8nKSA/ICcmJyA6ICc/J30ke09iamVjdC5rZXlzKGRhdGFQYXJzZSlcbiAgICAgICAgICAubWFwKGtleSA9PiBgJHtrZXl9PSR7ZGF0YVBhcnNlW2tleV19YClcbiAgICAgICAgICAuam9pbignJicpfWBcbiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgIC8vXG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLmZldGNoKHtcbiAgICAgIG1ldGhvZDogbWV0aG9kIHx8ICdQT1NUJyxcbiAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uOyBjaGFyc2V0PXV0Zi04JyxcbiAgICAgICAgJ1gtUmVxdWVzdC1JZCc6IHJlcXVlc3RJZCxcbiAgICAgICAgLi4uaGVhZGVyLFxuICAgICAgfSxcbiAgICAgIC4uLihpc0dldEFuZEhlYWQgPyB7fSA6IHsgYm9keToganNvbkRhdGEgfSksXG4gICAgICB1cmw6IGVuZHBvaW50LFxuICAgICAgY3VzdG9tUmVxT3B0cyxcbiAgICB9KVxuXG4gICAgcmV0dXJuIHsgcmVxdWVzdElkLCAuLi5yZXNwb25zZSwgZGF0YTogYXdhaXQgcmVzcG9uc2UuZGF0YSB9XG4gIH1cbn1cblxuY29uc3QgcmVxdWVzdE1hcDogS1Y8Q2xvdWRiYXNlUmVxdWVzdD4gPSB7fVxuXG5leHBvcnQgZnVuY3Rpb24gaW5pdFJlcXVlc3QoY29uZmlnOiBJQ2xvdWRiYXNlUmVxdWVzdENvbmZpZykge1xuICByZXF1ZXN0TWFwW2NvbmZpZy5lbnZdID0gbmV3IENsb3VkYmFzZVJlcXVlc3Qoe1xuICAgIC4uLmNvbmZpZyxcbiAgICB0aHJvdzogdHJ1ZSxcbiAgfSlcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFJlcXVlc3RCeUVudklkKGVudjogc3RyaW5nKTogQ2xvdWRiYXNlUmVxdWVzdCB7XG4gIHJldHVybiByZXF1ZXN0TWFwW2Vudl1cbn1cbiJdfQ==
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/*! For license information please see index.js.LICENSE.txt */
|
|
2
|
-
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("tcboauth",[],t):"object"==typeof exports?exports.tcboauth=t():e.tcboauth=t()}("undefined"!=typeof window?window:this,()=>(()=>{"use strict";var e={d:(t,r)=>{for(var o in r)e.o(r,o)&&!e.o(t,o)&&Object.defineProperty(t,o,{enumerable:!0,get:r[o]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r:e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},t={};e.r(t),e.d(t,{LANGS:()=>ti,cloudbase:()=>_i,default:()=>gi,getBaseEndPoint:()=>zn});var r="@cloudbase/js-sdk";function o(){return r}var n="https:";var i,a=("undefined"==typeof process||process.env,!1),s={INVALID_PARAMS:"INVALID_PARAMS",INVALID_SYNTAX:"INVALID_SYNTAX",INVALID_OPERATION:"INVALID_OPERATION",OPERATION_FAIL:"OPERATION_FAIL",NETWORK_ERROR:"NETWORK_ERROR",UNKOWN_ERROR:"UNKOWN_ERROR"};!function(e){e.local="local",e.none="none",e.session="session"}(i||(i={}));var l=function(){},c=function(){};function u(e,t,r){void 0===r&&(r={});var o=/\?/.test(t),n="";for(var i in r)""===n?!o&&(t+="?"):n+="&",n+=i+"="+encodeURIComponent(r[i]);return/^http(s)?\:\/\//.test(t+=n)?t:""+e+t}var d=function(e,t){var r={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(r[o]=e[o]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var n=0;for(o=Object.getOwnPropertySymbols(e);n<o.length;n++)t.indexOf(o[n])<0&&Object.prototype.propertyIsEnumerable.call(e,o[n])&&(r[o[n]]=e[o[n]])}return r};function f(e){return"[object FormData]"===Object.prototype.toString.call(e)}function p(e,t,r){void 0===r&&(r={});var o=/\?/.test(t),n="";return Object.keys(r).forEach((function(e){""===n?!o&&(t+="?"):n+="&",n+="".concat(e,"=").concat(encodeURIComponent(r[e]))})),/^http(s)?:\/\//.test(t+=n)?t:"".concat(e).concat(t)}function h(e,t){console.warn("[".concat(o(),"][").concat(e,"]:").concat(t))}function b(e){var t,r=e.title,o=e.subtitle,n=void 0===o?"":o,i=e.content,a=void 0===i?[]:i,s=e.printTrace,l=void 0!==s&&s,c=e.collapsed;void 0!==c&&c?(console.groupCollapsed||console.error)(r,n):(console.group||console.error)(r,n);for(var u=0,d=a;u<d.length;u++){var f=d[u],p=f.type,h=f.body;switch(p){case"info":console.log(h);break;case"warn":console.warn(h);break;case"error":console.error(h)}}l&&(console.trace||console.log)("stack trace:"),null===(t=console.groupEnd)||void 0===t||t.call(console)}function y(e){var t={},r=e.match(/^(data:.*?)(\?[^#\s]*)?$/);if(r){e=r[1];var o=r[2];o&&(t=function(e){e=e.replace(/^\?/,"");var t={};return e.split("&").forEach((function(e){var r=e.split("="),o=r[0],n=r[1];o=decodeURIComponent(o),n=decodeURIComponent(n),o&&(t[o]?Array.isArray(t[o])?t[o].push(n):t[o]=[t[o],n]:t[o]=n)})),t}(o))}var n=t.token,i=d(t,["token"]);return/^data:/.test(e)&&!n?{error:"invalid_argument",error_description:"invalid captcha data: ".concat(e)}:n?{state:i.state,token:n,captchaData:e}:{error:"unimplemented",error_description:"need to impl captcha data"}}var m,v=(m=function(e,t){return(m=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function r(){this.constructor=e}m(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),_=function(){return(_=Object.assign||function(e){for(var t,r=1,o=arguments.length;r<o;r++)for(var n in t=arguments[r])Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e}).apply(this,arguments)},g=function(e,t,r,o){return new(r||(r=Promise))((function(n,i){function a(e){try{l(o.next(e))}catch(e){i(e)}}function s(e){try{l(o.throw(e))}catch(e){i(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,s)}l((o=o.apply(e,t||[])).next())}))},w=function(e,t){var r,o,n,i,a={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(s){return function(l){return function(s){if(r)throw new TypeError("Generator is already executing.");for(;i&&(i=0,s[0]&&(a=0)),a;)try{if(r=1,o&&(n=2&s[0]?o.return:s[0]?o.throw||((n=o.return)&&n.call(o),0):o.next)&&!(n=n.call(o,s[1])).done)return n;switch(o=0,n&&(s=[2&s[0],n.value]),s[0]){case 0:case 1:n=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,o=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!(n=a.trys,(n=n.length>0&&n[n.length-1])||6!==s[0]&&2!==s[0])){a=0;continue}if(3===s[0]&&(!n||s[1]>n[0]&&s[1]<n[3])){a.label=s[1];break}if(6===s[0]&&a.label<n[1]){a.label=n[1],n=s;break}if(n&&a.label<n[2]){a.label=n[2],a.ops.push(s);break}n[2]&&a.ops.pop(),a.trys.pop();continue}s=t.call(e,a)}catch(e){s=[6,e],o=0}finally{r=n=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,l])}}},S=function(e){function t(t){var r=e.call(this)||this,o=t.timeout,n=t.timeoutMsg,i=t.restrictedMethods;return r.timeout=o||0,r.timeoutMsg=n||"请求超时",r.restrictedMethods=i||["get","post","upload","download"],r}return v(t,e),t.prototype.get=function(e){return this.request(_(_({},e),{method:"get"}),this.restrictedMethods.includes("get"))},t.prototype.post=function(e){return this.request(_(_({},e),{method:"post"}),this.restrictedMethods.includes("post"))},t.prototype.put=function(e){return this.request(_(_({},e),{method:"put"}))},t.prototype.upload=function(e){var t=e.data,r=e.file,o=e.name,n=e.method,i=e.headers,a=void 0===i?{}:i,s={post:"post",put:"put"}[null==n?void 0:n.toLowerCase()]||"put",l=new FormData;return"post"===s?(Object.keys(t).forEach((function(e){l.append(e,t[e])})),l.append("key",o),l.append("file",r),this.request(_(_({},e),{data:l,method:s}),this.restrictedMethods.includes("upload"))):this.request(_(_({},e),{method:"put",headers:a,body:r}),this.restrictedMethods.includes("upload"))},t.prototype.download=function(e){return g(this,void 0,void 0,(function(){var t,r,o,n;return w(this,(function(i){switch(i.label){case 0:return i.trys.push([0,2,,3]),[4,this.get(_(_({},e),{headers:{},responseType:"blob"}))];case 1:return t=i.sent().data,r=window.URL.createObjectURL(new Blob([t])),o=decodeURIComponent(new URL(e.url).pathname.split("/").pop()||""),(n=document.createElement("a")).href=r,n.setAttribute("download",o),n.style.display="none",document.body.appendChild(n),n.click(),window.URL.revokeObjectURL(r),document.body.removeChild(n),[3,3];case 2:return i.sent(),[3,3];case 3:return[2,new Promise((function(t){t({statusCode:200,tempFilePath:e.url})}))]}}))}))},t.prototype.fetch=function(e){var t;return g(this,void 0,void 0,(function(){var r,o,n,i,a,s,l,c,u,d,f,p,h,b=this;return w(this,(function(y){switch(y.label){case 0:return r=new AbortController,o=e.url,n=e.enableAbort,i=void 0!==n&&n,a=e.stream,s=void 0!==a&&a,l=e.signal,c=e.timeout,u=e.shouldThrowOnError,d=void 0===u||u,f=null!=c?c:this.timeout,l&&(l.aborted&&r.abort(),l.addEventListener("abort",(function(){return r.abort()}))),p=null,i&&f&&(p=setTimeout((function(){console.warn(b.timeoutMsg),r.abort(new Error(b.timeoutMsg))}),f)),[4,fetch(o,_(_({},e),{signal:r.signal})).then((function(e){return g(b,void 0,void 0,(function(){var t,r,o;return w(this,(function(n){switch(n.label){case 0:return clearTimeout(p),d?e.ok?(t=e,[3,3]):[3,1]:[3,4];case 1:return o=(r=Promise).reject,[4,e.json()];case 2:t=o.apply(r,[n.sent()]),n.label=3;case 3:return[2,t];case 4:return[2,e]}}))}))})).catch((function(e){if(clearTimeout(p),d)return Promise.reject(e)}))];case 1:return h=y.sent(),[2,{data:s?h.body:(null===(t=h.headers.get("content-type"))||void 0===t?void 0:t.includes("application/json"))?h.json():h.text(),statusCode:h.status,header:h.headers}]}}))}))},t.prototype.request=function(e,t){var r=this;void 0===t&&(t=!1);var o=String(e.method).toLowerCase()||"get";return new Promise((function(i){var a,s,l=e.url,c=e.headers,u=void 0===c?{}:c,d=e.data,h=e.responseType,b=e.withCredentials,y=e.body,m=e.onUploadProgress,v=p(n,l,"get"===o?d:{}),_=new XMLHttpRequest;_.open(o,v),h&&(_.responseType=h),Object.keys(u).forEach((function(e){_.setRequestHeader(e,u[e])})),m&&_.upload.addEventListener("progress",m),_.onreadystatechange=function(){var e={};if(4===_.readyState){var t=_.getAllResponseHeaders().trim().split(/[\r\n]+/),r={};t.forEach((function(e){var t=e.split(": "),o=t.shift().toLowerCase(),n=t.join(": ");r[o]=n})),e.header=r,e.statusCode=_.status;try{e.data="blob"===h?_.response:JSON.parse(_.responseText)}catch(t){e.data="blob"===h?_.response:_.responseText}clearTimeout(a),i(e)}},t&&r.timeout&&(a=setTimeout((function(){console.warn(r.timeoutMsg),_.abort()}),r.timeout)),s=f(d)?d:"application/x-www-form-urlencoded"===u["content-type"]?function(e){void 0===e&&(e={});var t=[];return Object.keys(e).forEach((function(r){t.push("".concat(r,"=").concat(encodeURIComponent(e[r])))})),t.join("&")}(d):y||(d?JSON.stringify(d):void 0),b&&(_.withCredentials=!0),_.send(s)}))},t}(l);var P,O=function(){return(O=Object.assign||function(e){for(var t,r=1,o=arguments.length;r<o;r++)for(var n in t=arguments[r])Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e}).apply(this,arguments)};!function(e){e.WEB="web",e.WX_MP="wx_mp"}(P||(P={}));var T=function(){var e=function(t,r){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(t,r)};return function(t,r){if("function"!=typeof r&&null!==r)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");function o(){this.constructor=t}e(t,r),t.prototype=null===r?Object.create(r):(o.prototype=r.prototype,new o)}}(),E=function(e,t,r,o){return new(r||(r=Promise))((function(n,i){function a(e){try{l(o.next(e))}catch(e){i(e)}}function s(e){try{l(o.throw(e))}catch(e){i(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,s)}l((o=o.apply(e,t||[])).next())}))},C=function(e,t){var r,o,n,i,a={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(s){return function(l){return function(s){if(r)throw new TypeError("Generator is already executing.");for(;i&&(i=0,s[0]&&(a=0)),a;)try{if(r=1,o&&(n=2&s[0]?o.return:s[0]?o.throw||((n=o.return)&&n.call(o),0):o.next)&&!(n=n.call(o,s[1])).done)return n;switch(o=0,n&&(s=[2&s[0],n.value]),s[0]){case 0:case 1:n=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,o=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!(n=a.trys,(n=n.length>0&&n[n.length-1])||6!==s[0]&&2!==s[0])){a=0;continue}if(3===s[0]&&(!n||s[1]>n[0]&&s[1]<n[3])){a.label=s[1];break}if(6===s[0]&&a.label<n[1]){a.label=n[1],n=s;break}if(n&&a.label<n[2]){a.label=n[2],a.ops.push(s);break}n[2]&&a.ops.pop(),a.trys.pop();continue}s=t.call(e,a)}catch(e){s=[6,e],o=0}finally{r=n=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,l])}}},R=function(e){function t(t){var r=e.call(this)||this;return r.root=t,t.tcbCacheObject||(t.tcbCacheObject={}),r}return T(t,e),t.prototype.setItem=function(e,t){this.root.tcbCacheObject[e]=t},t.prototype.getItem=function(e){return this.root.tcbCacheObject[e]},t.prototype.removeItem=function(e){delete this.root.tcbCacheObject[e]},t.prototype.clear=function(){delete this.root.tcbCacheObject},t}(c);var A=function(){function e(e){this.keys={};var t=e.persistence,r=e.platformInfo,o=void 0===r?{}:r,n=e.keys,i=void 0===n?{}:n;this.platformInfo=o,this.storage||(this.persistenceTag=this.platformInfo.adapter.primaryStorage||t,this.storage=function(e,t){switch(e){case"local":return t.localStorage?t.localStorage:(h(s.INVALID_PARAMS,"localStorage is not supported on current platform"),new R(t.root));case"none":return new R(t.root);default:return t.localStorage?t.localStorage:(h(s.INVALID_PARAMS,"localStorage is not supported on current platform"),new R(t.root))}}(this.persistenceTag,this.platformInfo.adapter),this.keys=i)}return Object.defineProperty(e.prototype,"mode",{get:function(){return this.storage.mode||"sync"},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"persistence",{get:function(){return this.persistenceTag},enumerable:!1,configurable:!0}),e.prototype.setStore=function(e,t,r){if("async"!==this.mode){if(this.storage)try{var n={version:r||"localCachev1",content:t};this.storage.setItem(e,JSON.stringify(n))}catch(e){throw new Error(JSON.stringify({code:s.OPERATION_FAIL,msg:"[".concat(o(),"][").concat(s.OPERATION_FAIL,"]setStore failed"),info:e}))}}else h(s.INVALID_OPERATION,"current platform's storage is asynchronous, please use setStoreAsync insteed")},e.prototype.setStoreAsync=function(e,t,r){return E(this,void 0,void 0,(function(){var o;return C(this,(function(n){switch(n.label){case 0:if(!this.storage)return[2];n.label=1;case 1:return n.trys.push([1,3,,4]),o={version:r||"localCachev1",content:t},[4,this.storage.setItem(e,JSON.stringify(o))];case 2:return n.sent(),[3,4];case 3:return n.sent(),[2];case 4:return[2]}}))}))},e.prototype.getStore=function(e,t){var r;if("async"!==this.mode){try{if("undefined"!=typeof process&&(null===(r=process.env)||void 0===r?void 0:r.tcb_token))return process.env.tcb_token;if(!this.storage)return""}catch(e){return""}t=t||"localCachev1";var o=this.storage.getItem(e);return o&&o.indexOf(t)>=0?JSON.parse(o).content:""}h(s.INVALID_OPERATION,"current platform's storage is asynchronous, please use getStoreAsync insteed")},e.prototype.getStoreAsync=function(e,t){var r;return E(this,void 0,void 0,(function(){var o;return C(this,(function(n){switch(n.label){case 0:try{if("undefined"!=typeof process&&(null===(r=process.env)||void 0===r?void 0:r.tcb_token))return[2,process.env.tcb_token];if(!this.storage)return[2,""]}catch(e){return[2,""]}return t=t||"localCachev1",[4,this.storage.getItem(e)];case 1:return(o=n.sent())&&o.indexOf(t)>=0?[2,JSON.parse(o).content]:[2,""]}}))}))},e.prototype.removeStore=function(e){"async"!==this.mode?this.storage.removeItem(e):h(s.INVALID_OPERATION,"current platform's storage is asynchronous, please use removeStoreAsync insteed")},e.prototype.removeStoreAsync=function(e){return E(this,void 0,void 0,(function(){return C(this,(function(t){switch(t.label){case 0:return[4,this.storage.removeItem(e)];case 1:return t.sent(),[2]}}))}))},e}(),k=function(){var e=function(t,r){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(t,r)};return function(t,r){if("function"!=typeof r&&null!==r)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");function o(){this.constructor=t}e(t,r),t.prototype=null===r?Object.create(r):(o.prototype=r.prototype,new o)}}(),j=function(e,t,r){if(r||2===arguments.length)for(var o,n=0,i=t.length;n<i;n++)!o&&n in t||(o||(o=Array.prototype.slice.call(t,0,n)),o[n]=t[n]);return e.concat(o||Array.prototype.slice.call(t))};var I=function(e,t){this.data=t||null,this.name=e},q=function(e){function t(t,r){var o=e.call(this,"error",{error:t,data:r})||this;return o.error=t,o}return k(t,e),t}(I),x=function(){function e(){this.listeners={}}return e.prototype.on=function(e,t){return function(e,t,r){r[e]=r[e]||[],r[e].push(t)}(e,t,this.listeners),this},e.prototype.off=function(e,t){return function(e,t,r){if(null==r?void 0:r[e]){var o=r[e].indexOf(t);-1!==o&&r[e].splice(o,1)}}(e,t,this.listeners),this},e.prototype.fire=function(e,t){if(e instanceof q)return console.error(e.error),this;var r="string"==typeof e?new I(e,t||{}):e,o=r.name;if(this.listens(o)){r.target=this;for(var n=0,i=this.listeners[o]?j([],this.listeners[o],!0):[];n<i.length;n++){i[n].call(this,r)}}return this},e.prototype.listens=function(e){return this.listeners[e]&&this.listeners[e].length>0},e}();new x;var W=new x,L=function(e,t,r,o){return new(r||(r=Promise))((function(n,i){function a(e){try{l(o.next(e))}catch(e){i(e)}}function s(e){try{l(o.throw(e))}catch(e){i(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,s)}l((o=o.apply(e,t||[])).next())}))},M=function(e,t){var r,o,n,i,a={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(s){return function(l){return function(s){if(r)throw new TypeError("Generator is already executing.");for(;i&&(i=0,s[0]&&(a=0)),a;)try{if(r=1,o&&(n=2&s[0]?o.return:s[0]?o.throw||((n=o.return)&&n.call(o),0):o.next)&&!(n=n.call(o,s[1])).done)return n;switch(o=0,n&&(s=[2&s[0],n.value]),s[0]){case 0:case 1:n=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,o=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!(n=a.trys,(n=n.length>0&&n[n.length-1])||6!==s[0]&&2!==s[0])){a=0;continue}if(3===s[0]&&(!n||s[1]>n[0]&&s[1]<n[3])){a.label=s[1];break}if(6===s[0]&&a.label<n[1]){a.label=n[1],n=s;break}if(n&&a.label<n[2]){a.label=n[2],a.ops.push(s);break}n[2]&&a.ops.pop(),a.trys.pop();continue}s=t.call(e,a)}catch(e){s=[6,e],o=0}finally{r=n=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,l])}}},N=!1;"undefined"!=typeof navigator&&navigator.userAgent&&(N=-1!==navigator.userAgent.indexOf("Firefox"));var D=N?/(\.js\/)?__decorate(\$\d+)?<@.*\d$/:/(\/\w+\.js\.)?__decorate(\$\d+)?\s*\(.*\)$/,F=/https?:\/\/.+:\d*\/.*\.js:\d+:\d+/;function B(e){var t=e.err,r=e.className,o=e.methodName,n=e.sourceLink;if(!n)return null;var i,a=t.stack.split("\n"),s=N?/^catchErrorsDecorator\/<\/descriptor.value@.*\d$/:new RegExp("".concat(r,"\\.descriptor.value\\s*\\[as\\s").concat(o,"\\]\\s*\\(.*\\)$")),l=N?/^catchErrorsDecorator\/<\/descriptor.value/:new RegExp("".concat(r,"\\.descriptor.value\\s*\\[as\\s").concat(o,"\\]")),c=a.findIndex((function(e){return s.test(e)}));if(-1!==c){var u=a.filter((function(e,t){return t>c}));u.unshift(a[c].replace(l,"".concat(r,".").concat(o)).replace(F,n)),(i=new Error).stack="".concat(N?"@debugger":"Error","\n").concat(u.join("\n"))}return i}!function(){function e(){var e=this;this.listeners=[],this.signal={aborted:!1,addEventListener:function(t,r){"abort"===t&&e.listeners.push(r)}}}e.prototype.abort=function(){this.signal.aborted||(this.signal.aborted=!0,this.listeners.forEach((function(e){return e()})))}}();function z(e){this.message=e}z.prototype=new Error,z.prototype.name="InvalidCharacterError";"undefined"!=typeof window&&window.atob&&window.atob.bind(window);function U(e){this.message=e}U.prototype=new Error,U.prototype.name="InvalidTokenError";var H=function(e,t,r){if(r||2===arguments.length)for(var o,n=0,i=t.length;n<i;n++)!o&&n in t||(o||(o=Array.prototype.slice.call(t,0,n)),o[n]=t[n]);return e.concat(o||Array.prototype.slice.call(t))},V=s,$={};function Y(e,t){var r=t.name,o=t.namespace,n=t.entity,i=t.injectEvents,a=t.IIFE,s=void 0!==a&&a;if($[r]||o&&e[o])throw new Error(JSON.stringify({code:V.INVALID_OPERATION,msg:"Duplicate component ".concat(r)}));if(s){if(!n||"function"!=typeof n)throw new Error(JSON.stringify({code:V.INVALID_PARAMS,msg:"IIFE component's entity must be a function"}));n.call(e)}if($[r]=t,o?e.prototype[o]=n:function e(t,r){if(!(r instanceof Object))return r;switch(r.constructor){case Date:return new Date(r.getTime());case Object:void 0===t&&(t={});break;case Array:t=[];break;default:return r}for(var o=Object.keys(r),n=0,i=o;n<i.length;n++){var a=i[n];Object.prototype.hasOwnProperty.call(r,a)&&(t[a]=e(t[a],r[a]))}return t}(e.prototype,n),i){var l=i.bus,c=i.events;if(!l||!c||0===c.length)return;var u=e.prototype.fire||function(){};e.prototype.events||(e.prototype.events={}),(e.prototype.events||{})[r]?e.prototype.events[r].events=H(H([],e.prototype.events[r].events,!0),c,!0):e.prototype.events[r]={bus:l,events:c},e.prototype.fire=function(e,t){u(e,t);for(var r=0,o=Object.keys(this.events);r<o.length;r++){var n=o[r],i=this.events[n],a=i.bus;if(i.events.includes(e)){a.fire(e,t);break}}}}}function G(){}function J(e){return"object"==typeof e&&null!==e||"function"==typeof e}const K=G;function Q(e,t){try{Object.defineProperty(e,"name",{value:t,configurable:!0})}catch(e){}}const X=Promise,Z=Promise.resolve.bind(X),ee=Promise.prototype.then,te=Promise.reject.bind(X),re=Z;function oe(e){return new X(e)}function ne(e){return oe(t=>t(e))}function ie(e){return te(e)}function ae(e,t,r){return ee.call(e,t,r)}function se(e,t,r){ae(ae(e,t,r),void 0,K)}function le(e,t){se(e,t)}function ce(e,t){se(e,void 0,t)}function ue(e,t,r){return ae(e,t,r)}function de(e){ae(e,void 0,K)}let fe=e=>{if("function"==typeof queueMicrotask)fe=queueMicrotask;else{const e=ne(void 0);fe=t=>ae(e,t)}return fe(e)};function pe(e,t,r){if("function"!=typeof e)throw new TypeError("Argument is not a function");return Function.prototype.apply.call(e,t,r)}function he(e,t,r){try{return ne(pe(e,t,r))}catch(e){return ie(e)}}class be{constructor(){this._cursor=0,this._size=0,this._front={_elements:[],_next:void 0},this._back=this._front,this._cursor=0,this._size=0}get length(){return this._size}push(e){const t=this._back;let r=t;16383===t._elements.length&&(r={_elements:[],_next:void 0}),t._elements.push(e),r!==t&&(this._back=r,t._next=r),++this._size}shift(){const e=this._front;let t=e;const r=this._cursor;let o=r+1;const n=e._elements,i=n[r];return 16384===o&&(t=e._next,o=0),--this._size,this._cursor=o,e!==t&&(this._front=t),n[r]=void 0,i}forEach(e){let t=this._cursor,r=this._front,o=r._elements;for(;!(t===o.length&&void 0===r._next||t===o.length&&(r=r._next,o=r._elements,t=0,0===o.length));)e(o[t]),++t}peek(){const e=this._front,t=this._cursor;return e._elements[t]}}const ye=Symbol("[[AbortSteps]]"),me=Symbol("[[ErrorSteps]]"),ve=Symbol("[[CancelSteps]]"),_e=Symbol("[[PullSteps]]"),ge=Symbol("[[ReleaseSteps]]");function we(e,t){e._ownerReadableStream=t,t._reader=e,"readable"===t._state?Te(e):"closed"===t._state?function(e){Te(e),Re(e)}(e):Ee(e,t._storedError)}function Se(e,t){return ko(e._ownerReadableStream,t)}function Pe(e){const t=e._ownerReadableStream;"readable"===t._state?Ce(e,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")):function(e,t){Ee(e,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness"))}(e),t._readableStreamController[ge](),t._reader=void 0,e._ownerReadableStream=void 0}function Oe(e){return new TypeError("Cannot "+e+" a stream using a released reader")}function Te(e){e._closedPromise=oe((t,r)=>{e._closedPromise_resolve=t,e._closedPromise_reject=r})}function Ee(e,t){Te(e),Ce(e,t)}function Ce(e,t){void 0!==e._closedPromise_reject&&(de(e._closedPromise),e._closedPromise_reject(t),e._closedPromise_resolve=void 0,e._closedPromise_reject=void 0)}function Re(e){void 0!==e._closedPromise_resolve&&(e._closedPromise_resolve(void 0),e._closedPromise_resolve=void 0,e._closedPromise_reject=void 0)}const Ae=Number.isFinite||function(e){return"number"==typeof e&&isFinite(e)},ke=Math.trunc||function(e){return e<0?Math.ceil(e):Math.floor(e)};function je(e,t){if(void 0!==e&&"object"!=typeof(r=e)&&"function"!=typeof r)throw new TypeError(t+" is not an object.");var r}function Ie(e,t){if("function"!=typeof e)throw new TypeError(t+" is not a function.")}function qe(e,t){if(!function(e){return"object"==typeof e&&null!==e||"function"==typeof e}(e))throw new TypeError(t+" is not an object.")}function xe(e,t,r){if(void 0===e)throw new TypeError(`Parameter ${t} is required in '${r}'.`)}function We(e,t,r){if(void 0===e)throw new TypeError(`${t} is required in '${r}'.`)}function Le(e){return Number(e)}function Me(e){return 0===e?0:e}function Ne(e,t){const r=Number.MAX_SAFE_INTEGER;let o=Number(e);if(o=Me(o),!Ae(o))throw new TypeError(t+" is not a finite number");if(o=function(e){return Me(ke(e))}(o),o<0||o>r)throw new TypeError(`${t} is outside the accepted range of 0 to ${r}, inclusive`);return Ae(o)&&0!==o?o:0}function De(e,t){if(!Ro(e))throw new TypeError(t+" is not a ReadableStream.")}function Fe(e){return new Ve(e)}function Be(e,t){e._reader._readRequests.push(t)}function ze(e,t,r){const o=e._reader._readRequests.shift();r?o._closeSteps():o._chunkSteps(t)}function Ue(e){return e._reader._readRequests.length}function He(e){const t=e._reader;return void 0!==t&&!!$e(t)}class Ve{constructor(e){if(xe(e,1,"ReadableStreamDefaultReader"),De(e,"First parameter"),Ao(e))throw new TypeError("This stream has already been locked for exclusive reading by another reader");we(this,e),this._readRequests=new be}get closed(){return $e(this)?this._closedPromise:ie(Je("closed"))}cancel(e){return $e(this)?void 0===this._ownerReadableStream?ie(Oe("cancel")):Se(this,e):ie(Je("cancel"))}read(){if(!$e(this))return ie(Je("read"));if(void 0===this._ownerReadableStream)return ie(Oe("read from"));let e,t;const r=oe((r,o)=>{e=r,t=o});return Ye(this,{_chunkSteps:t=>e({value:t,done:!1}),_closeSteps:()=>e({value:void 0,done:!0}),_errorSteps:e=>t(e)}),r}releaseLock(){if(!$e(this))throw Je("releaseLock");void 0!==this._ownerReadableStream&&function(e){Pe(e);Ge(e,new TypeError("Reader was released"))}(this)}}function $e(e){return!!J(e)&&!!Object.prototype.hasOwnProperty.call(e,"_readRequests")&&e instanceof Ve}function Ye(e,t){const r=e._ownerReadableStream;r._disturbed=!0,"closed"===r._state?t._closeSteps():"errored"===r._state?t._errorSteps(r._storedError):r._readableStreamController[_e](t)}function Ge(e,t){const r=e._readRequests;e._readRequests=new be,r.forEach(e=>{e._errorSteps(t)})}function Je(e){return new TypeError(`ReadableStreamDefaultReader.prototype.${e} can only be used on a ReadableStreamDefaultReader`)}var Ke,Qe,Xe;function Ze(e){return e.slice()}function et(e,t,r,o,n){new Uint8Array(e).set(new Uint8Array(r,o,n),t)}Object.defineProperties(Ve.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),Q(Ve.prototype.cancel,"cancel"),Q(Ve.prototype.read,"read"),Q(Ve.prototype.releaseLock,"releaseLock"),"symbol"==typeof Symbol.toStringTag&&Object.defineProperty(Ve.prototype,Symbol.toStringTag,{value:"ReadableStreamDefaultReader",configurable:!0});let tt=e=>(tt="function"==typeof e.transfer?e=>e.transfer():"function"==typeof structuredClone?e=>structuredClone(e,{transfer:[e]}):e=>e,tt(e)),rt=e=>(rt="boolean"==typeof e.detached?e=>e.detached:e=>0===e.byteLength,rt(e));function ot(e,t,r){if(e.slice)return e.slice(t,r);const o=r-t,n=new ArrayBuffer(o);return et(n,0,e,t,o),n}function nt(e,t){const r=e[t];if(null!=r){if("function"!=typeof r)throw new TypeError(String(t)+" is not a function");return r}}function it(e){try{const t=e.done,r=e.value;return ae(re(r),e=>({done:t,value:e}))}catch(e){return ie(e)}}const at=null!==(Xe=null!==(Ke=Symbol.asyncIterator)&&void 0!==Ke?Ke:null===(Qe=Symbol.for)||void 0===Qe?void 0:Qe.call(Symbol,"Symbol.asyncIterator"))&&void 0!==Xe?Xe:"@@asyncIterator";function st(e){const t=pe(e.nextMethod,e.iterator,[]);if(!J(t))throw new TypeError("The iterator.next() method must return an object");return t}class lt{constructor(e,t){this._ongoingPromise=void 0,this._isFinished=!1,this._reader=e,this._preventCancel=t}next(){const e=()=>this._nextSteps();return this._ongoingPromise=this._ongoingPromise?ue(this._ongoingPromise,e,e):e(),this._ongoingPromise}return(e){const t=()=>this._returnSteps(e);return this._ongoingPromise?ue(this._ongoingPromise,t,t):t()}_nextSteps(){if(this._isFinished)return Promise.resolve({value:void 0,done:!0});const e=this._reader;let t,r;const o=oe((e,o)=>{t=e,r=o});return Ye(e,{_chunkSteps:e=>{this._ongoingPromise=void 0,fe(()=>t({value:e,done:!1}))},_closeSteps:()=>{this._ongoingPromise=void 0,this._isFinished=!0,Pe(e),t({value:void 0,done:!0})},_errorSteps:t=>{this._ongoingPromise=void 0,this._isFinished=!0,Pe(e),r(t)}}),o}_returnSteps(e){if(this._isFinished)return Promise.resolve({value:e,done:!0});this._isFinished=!0;const t=this._reader;if(!this._preventCancel){const r=Se(t,e);return Pe(t),ue(r,()=>({value:e,done:!0}))}return Pe(t),ne({value:e,done:!0})}}const ct={next(){return ut(this)?this._asyncIteratorImpl.next():ie(dt("next"))},return(e){return ut(this)?this._asyncIteratorImpl.return(e):ie(dt("return"))},[at](){return this}};function ut(e){if(!J(e))return!1;if(!Object.prototype.hasOwnProperty.call(e,"_asyncIteratorImpl"))return!1;try{return e._asyncIteratorImpl instanceof lt}catch(e){return!1}}function dt(e){return new TypeError(`ReadableStreamAsyncIterator.${e} can only be used on a ReadableSteamAsyncIterator`)}Object.defineProperty(ct,at,{enumerable:!1});const ft=Number.isNaN||function(e){return e!=e};function pt(e){const t=ot(e.buffer,e.byteOffset,e.byteOffset+e.byteLength);return new Uint8Array(t)}function ht(e){const t=e._queue.shift();return e._queueTotalSize-=t.size,e._queueTotalSize<0&&(e._queueTotalSize=0),t.value}function bt(e,t,r){if("number"!=typeof(o=r)||ft(o)||o<0||r===1/0)throw new RangeError("Size must be a finite, non-NaN, non-negative number.");var o;e._queue.push({value:t,size:r}),e._queueTotalSize+=r}function yt(e){e._queue=new be,e._queueTotalSize=0}function mt(e){return e===DataView}class vt{constructor(){throw new TypeError("Illegal constructor")}get view(){if(!wt(this))throw $t("view");return this._view}respond(e){if(!wt(this))throw $t("respond");if(xe(e,1,"respond"),e=Ne(e,"First parameter"),void 0===this._associatedReadableByteStreamController)throw new TypeError("This BYOB request has been invalidated");if(rt(this._view.buffer))throw new TypeError("The BYOB request's buffer has been detached and so cannot be used as a response");Ut(this._associatedReadableByteStreamController,e)}respondWithNewView(e){if(!wt(this))throw $t("respondWithNewView");if(xe(e,1,"respondWithNewView"),!ArrayBuffer.isView(e))throw new TypeError("You can only respond with array buffer views");if(void 0===this._associatedReadableByteStreamController)throw new TypeError("This BYOB request has been invalidated");if(rt(e.buffer))throw new TypeError("The given view's buffer has been detached and so cannot be used as a response");Ht(this._associatedReadableByteStreamController,e)}}Object.defineProperties(vt.prototype,{respond:{enumerable:!0},respondWithNewView:{enumerable:!0},view:{enumerable:!0}}),Q(vt.prototype.respond,"respond"),Q(vt.prototype.respondWithNewView,"respondWithNewView"),"symbol"==typeof Symbol.toStringTag&&Object.defineProperty(vt.prototype,Symbol.toStringTag,{value:"ReadableStreamBYOBRequest",configurable:!0});class _t{constructor(){throw new TypeError("Illegal constructor")}get byobRequest(){if(!gt(this))throw Yt("byobRequest");return Bt(this)}get desiredSize(){if(!gt(this))throw Yt("desiredSize");return zt(this)}close(){if(!gt(this))throw Yt("close");if(this._closeRequested)throw new TypeError("The stream has already been closed; do not close it again!");const e=this._controlledReadableByteStream._state;if("readable"!==e)throw new TypeError(`The stream (in ${e} state) is not in the readable state and cannot be closed`);Mt(this)}enqueue(e){if(!gt(this))throw Yt("enqueue");if(xe(e,1,"enqueue"),!ArrayBuffer.isView(e))throw new TypeError("chunk must be an array buffer view");if(0===e.byteLength)throw new TypeError("chunk must have non-zero byteLength");if(0===e.buffer.byteLength)throw new TypeError("chunk's buffer must have non-zero byteLength");if(this._closeRequested)throw new TypeError("stream is closed or draining");const t=this._controlledReadableByteStream._state;if("readable"!==t)throw new TypeError(`The stream (in ${t} state) is not in the readable state and cannot be enqueued to`);Nt(this,e)}error(e){if(!gt(this))throw Yt("error");Dt(this,e)}[ve](e){Pt(this),yt(this);const t=this._cancelAlgorithm(e);return Lt(this),t}[_e](e){const t=this._controlledReadableByteStream;if(this._queueTotalSize>0)return void Ft(this,e);const r=this._autoAllocateChunkSize;if(void 0!==r){let o;try{o=new ArrayBuffer(r)}catch(t){return void e._errorSteps(t)}const n={buffer:o,bufferByteLength:r,byteOffset:0,byteLength:r,bytesFilled:0,minimumFill:1,elementSize:1,viewConstructor:Uint8Array,readerType:"default"};this._pendingPullIntos.push(n)}Be(t,e),St(this)}[ge](){if(this._pendingPullIntos.length>0){const e=this._pendingPullIntos.peek();e.readerType="none",this._pendingPullIntos=new be,this._pendingPullIntos.push(e)}}}function gt(e){return!!J(e)&&!!Object.prototype.hasOwnProperty.call(e,"_controlledReadableByteStream")&&e instanceof _t}function wt(e){return!!J(e)&&!!Object.prototype.hasOwnProperty.call(e,"_associatedReadableByteStreamController")&&e instanceof vt}function St(e){(function(e){const t=e._controlledReadableByteStream;if("readable"!==t._state)return!1;if(e._closeRequested)return!1;if(!e._started)return!1;if(He(t)&&Ue(t)>0)return!0;if(Xt(t)&&Qt(t)>0)return!0;return zt(e)>0})(e)&&(e._pulling?e._pullAgain=!0:(e._pulling=!0,se(e._pullAlgorithm(),()=>(e._pulling=!1,e._pullAgain&&(e._pullAgain=!1,St(e)),null),t=>(Dt(e,t),null))))}function Pt(e){It(e),e._pendingPullIntos=new be}function Ot(e,t){let r=!1;"closed"===e._state&&(r=!0);const o=Tt(t);"default"===t.readerType?ze(e,o,r):function(e,t,r){const o=e._reader._readIntoRequests.shift();r?o._closeSteps(t):o._chunkSteps(t)}(e,o,r)}function Tt(e){const t=e.bytesFilled,r=e.elementSize;return new e.viewConstructor(e.buffer,e.byteOffset,t/r)}function Et(e,t,r,o){e._queue.push({buffer:t,byteOffset:r,byteLength:o}),e._queueTotalSize+=o}function Ct(e,t,r,o){let n;try{n=ot(t,r,r+o)}catch(t){throw Dt(e,t),t}Et(e,n,0,o)}function Rt(e,t){t.bytesFilled>0&&Ct(e,t.buffer,t.byteOffset,t.bytesFilled),Wt(e)}function At(e,t){const r=Math.min(e._queueTotalSize,t.byteLength-t.bytesFilled),o=t.bytesFilled+r;let n=r,i=!1;const a=o-o%t.elementSize;a>=t.minimumFill&&(n=a-t.bytesFilled,i=!0);const s=e._queue;for(;n>0;){const r=s.peek(),o=Math.min(n,r.byteLength),i=t.byteOffset+t.bytesFilled;et(t.buffer,i,r.buffer,r.byteOffset,o),r.byteLength===o?s.shift():(r.byteOffset+=o,r.byteLength-=o),e._queueTotalSize-=o,kt(e,o,t),n-=o}return i}function kt(e,t,r){r.bytesFilled+=t}function jt(e){0===e._queueTotalSize&&e._closeRequested?(Lt(e),jo(e._controlledReadableByteStream)):St(e)}function It(e){null!==e._byobRequest&&(e._byobRequest._associatedReadableByteStreamController=void 0,e._byobRequest._view=null,e._byobRequest=null)}function qt(e){for(;e._pendingPullIntos.length>0;){if(0===e._queueTotalSize)return;const t=e._pendingPullIntos.peek();At(e,t)&&(Wt(e),Ot(e._controlledReadableByteStream,t))}}function xt(e,t){const r=e._pendingPullIntos.peek();It(e),"closed"===e._controlledReadableByteStream._state?function(e,t){"none"===t.readerType&&Wt(e);const r=e._controlledReadableByteStream;if(Xt(r))for(;Qt(r)>0;)Ot(r,Wt(e))}(e,r):function(e,t,r){if(kt(0,t,r),"none"===r.readerType)return Rt(e,r),void qt(e);if(r.bytesFilled<r.minimumFill)return;Wt(e);const o=r.bytesFilled%r.elementSize;if(o>0){const t=r.byteOffset+r.bytesFilled;Ct(e,r.buffer,t-o,o)}r.bytesFilled-=o,Ot(e._controlledReadableByteStream,r),qt(e)}(e,t,r),St(e)}function Wt(e){return e._pendingPullIntos.shift()}function Lt(e){e._pullAlgorithm=void 0,e._cancelAlgorithm=void 0}function Mt(e){const t=e._controlledReadableByteStream;if(!e._closeRequested&&"readable"===t._state)if(e._queueTotalSize>0)e._closeRequested=!0;else{if(e._pendingPullIntos.length>0){const t=e._pendingPullIntos.peek();if(t.bytesFilled%t.elementSize!=0){const t=new TypeError("Insufficient bytes to fill elements in the given buffer");throw Dt(e,t),t}}Lt(e),jo(t)}}function Nt(e,t){const r=e._controlledReadableByteStream;if(e._closeRequested||"readable"!==r._state)return;const{buffer:o,byteOffset:n,byteLength:i}=t;if(rt(o))throw new TypeError("chunk's buffer is detached and so cannot be enqueued");const a=tt(o);if(e._pendingPullIntos.length>0){const t=e._pendingPullIntos.peek();if(rt(t.buffer))throw new TypeError("The BYOB request's buffer has been detached and so cannot be filled with an enqueued chunk");It(e),t.buffer=tt(t.buffer),"none"===t.readerType&&Rt(e,t)}He(r)?(function(e){const t=e._controlledReadableByteStream._reader;for(;t._readRequests.length>0;){if(0===e._queueTotalSize)return;Ft(e,t._readRequests.shift())}}(e),0===Ue(r)?Et(e,a,n,i):(e._pendingPullIntos.length>0&&Wt(e),ze(r,new Uint8Array(a,n,i),!1))):Xt(r)?(Et(e,a,n,i),qt(e)):Et(e,a,n,i),St(e)}function Dt(e,t){const r=e._controlledReadableByteStream;"readable"===r._state&&(Pt(e),yt(e),Lt(e),Io(r,t))}function Ft(e,t){const r=e._queue.shift();e._queueTotalSize-=r.byteLength,jt(e);const o=new Uint8Array(r.buffer,r.byteOffset,r.byteLength);t._chunkSteps(o)}function Bt(e){if(null===e._byobRequest&&e._pendingPullIntos.length>0){const t=e._pendingPullIntos.peek(),r=new Uint8Array(t.buffer,t.byteOffset+t.bytesFilled,t.byteLength-t.bytesFilled),o=Object.create(vt.prototype);!function(e,t,r){e._associatedReadableByteStreamController=t,e._view=r}(o,e,r),e._byobRequest=o}return e._byobRequest}function zt(e){const t=e._controlledReadableByteStream._state;return"errored"===t?null:"closed"===t?0:e._strategyHWM-e._queueTotalSize}function Ut(e,t){const r=e._pendingPullIntos.peek();if("closed"===e._controlledReadableByteStream._state){if(0!==t)throw new TypeError("bytesWritten must be 0 when calling respond() on a closed stream")}else{if(0===t)throw new TypeError("bytesWritten must be greater than 0 when calling respond() on a readable stream");if(r.bytesFilled+t>r.byteLength)throw new RangeError("bytesWritten out of range")}r.buffer=tt(r.buffer),xt(e,t)}function Ht(e,t){const r=e._pendingPullIntos.peek();if("closed"===e._controlledReadableByteStream._state){if(0!==t.byteLength)throw new TypeError("The view's length must be 0 when calling respondWithNewView() on a closed stream")}else if(0===t.byteLength)throw new TypeError("The view's length must be greater than 0 when calling respondWithNewView() on a readable stream");if(r.byteOffset+r.bytesFilled!==t.byteOffset)throw new RangeError("The region specified by view does not match byobRequest");if(r.bufferByteLength!==t.buffer.byteLength)throw new RangeError("The buffer of view has different capacity than byobRequest");if(r.bytesFilled+t.byteLength>r.byteLength)throw new RangeError("The region specified by view is larger than byobRequest");const o=t.byteLength;r.buffer=tt(t.buffer),xt(e,o)}function Vt(e,t,r,o,n,i,a){t._controlledReadableByteStream=e,t._pullAgain=!1,t._pulling=!1,t._byobRequest=null,t._queue=t._queueTotalSize=void 0,yt(t),t._closeRequested=!1,t._started=!1,t._strategyHWM=i,t._pullAlgorithm=o,t._cancelAlgorithm=n,t._autoAllocateChunkSize=a,t._pendingPullIntos=new be,e._readableStreamController=t,se(ne(r()),()=>(t._started=!0,St(t),null),e=>(Dt(t,e),null))}function $t(e){return new TypeError(`ReadableStreamBYOBRequest.prototype.${e} can only be used on a ReadableStreamBYOBRequest`)}function Yt(e){return new TypeError(`ReadableByteStreamController.prototype.${e} can only be used on a ReadableByteStreamController`)}function Gt(e,t){if("byob"!=(e=""+e))throw new TypeError(`${t} '${e}' is not a valid enumeration value for ReadableStreamReaderMode`);return e}function Jt(e){return new Zt(e)}function Kt(e,t){e._reader._readIntoRequests.push(t)}function Qt(e){return e._reader._readIntoRequests.length}function Xt(e){const t=e._reader;return void 0!==t&&!!er(t)}Object.defineProperties(_t.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},byobRequest:{enumerable:!0},desiredSize:{enumerable:!0}}),Q(_t.prototype.close,"close"),Q(_t.prototype.enqueue,"enqueue"),Q(_t.prototype.error,"error"),"symbol"==typeof Symbol.toStringTag&&Object.defineProperty(_t.prototype,Symbol.toStringTag,{value:"ReadableByteStreamController",configurable:!0});class Zt{constructor(e){if(xe(e,1,"ReadableStreamBYOBReader"),De(e,"First parameter"),Ao(e))throw new TypeError("This stream has already been locked for exclusive reading by another reader");if(!gt(e._readableStreamController))throw new TypeError("Cannot construct a ReadableStreamBYOBReader for a stream not constructed with a byte source");we(this,e),this._readIntoRequests=new be}get closed(){return er(this)?this._closedPromise:ie(or("closed"))}cancel(e){return er(this)?void 0===this._ownerReadableStream?ie(Oe("cancel")):Se(this,e):ie(or("cancel"))}read(e,t={}){if(!er(this))return ie(or("read"));if(!ArrayBuffer.isView(e))return ie(new TypeError("view must be an array buffer view"));if(0===e.byteLength)return ie(new TypeError("view must have non-zero byteLength"));if(0===e.buffer.byteLength)return ie(new TypeError("view's buffer must have non-zero byteLength"));if(rt(e.buffer))return ie(new TypeError("view's buffer has been detached"));let r;try{r=function(e,t){var r;return je(e,t),{min:Ne(null!==(r=null==e?void 0:e.min)&&void 0!==r?r:1,t+" has member 'min' that")}}(t,"options")}catch(e){return ie(e)}const o=r.min;if(0===o)return ie(new TypeError("options.min must be greater than 0"));if(function(e){return mt(e.constructor)}(e)){if(o>e.byteLength)return ie(new RangeError("options.min must be less than or equal to view's byteLength"))}else if(o>e.length)return ie(new RangeError("options.min must be less than or equal to view's length"));if(void 0===this._ownerReadableStream)return ie(Oe("read from"));let n,i;const a=oe((e,t)=>{n=e,i=t});return tr(this,e,o,{_chunkSteps:e=>n({value:e,done:!1}),_closeSteps:e=>n({value:e,done:!0}),_errorSteps:e=>i(e)}),a}releaseLock(){if(!er(this))throw or("releaseLock");void 0!==this._ownerReadableStream&&function(e){Pe(e);rr(e,new TypeError("Reader was released"))}(this)}}function er(e){return!!J(e)&&!!Object.prototype.hasOwnProperty.call(e,"_readIntoRequests")&&e instanceof Zt}function tr(e,t,r,o){const n=e._ownerReadableStream;n._disturbed=!0,"errored"===n._state?o._errorSteps(n._storedError):function(e,t,r,o){const n=e._controlledReadableByteStream,i=t.constructor,a=function(e){return mt(e)?1:e.BYTES_PER_ELEMENT}(i),{byteOffset:s,byteLength:l}=t,c=r*a;let u;try{u=tt(t.buffer)}catch(e){return void o._errorSteps(e)}const d={buffer:u,bufferByteLength:u.byteLength,byteOffset:s,byteLength:l,bytesFilled:0,minimumFill:c,elementSize:a,viewConstructor:i,readerType:"byob"};if(e._pendingPullIntos.length>0)return e._pendingPullIntos.push(d),void Kt(n,o);if("closed"!==n._state){if(e._queueTotalSize>0){if(At(e,d)){const t=Tt(d);return jt(e),void o._chunkSteps(t)}if(e._closeRequested){const t=new TypeError("Insufficient bytes to fill elements in the given buffer");return Dt(e,t),void o._errorSteps(t)}}e._pendingPullIntos.push(d),Kt(n,o),St(e)}else{const e=new i(d.buffer,d.byteOffset,0);o._closeSteps(e)}}(n._readableStreamController,t,r,o)}function rr(e,t){const r=e._readIntoRequests;e._readIntoRequests=new be,r.forEach(e=>{e._errorSteps(t)})}function or(e){return new TypeError(`ReadableStreamBYOBReader.prototype.${e} can only be used on a ReadableStreamBYOBReader`)}function nr(e,t){const{highWaterMark:r}=e;if(void 0===r)return t;if(ft(r)||r<0)throw new RangeError("Invalid highWaterMark");return r}function ir(e){const{size:t}=e;return t||(()=>1)}function ar(e,t){je(e,t);const r=null==e?void 0:e.highWaterMark,o=null==e?void 0:e.size;return{highWaterMark:void 0===r?void 0:Le(r),size:void 0===o?void 0:sr(o,t+" has member 'size' that")}}function sr(e,t){return Ie(e,t),t=>Le(e(t))}function lr(e,t,r){return Ie(e,r),r=>he(e,t,[r])}function cr(e,t,r){return Ie(e,r),()=>he(e,t,[])}function ur(e,t,r){return Ie(e,r),r=>pe(e,t,[r])}function dr(e,t,r){return Ie(e,r),(r,o)=>he(e,t,[r,o])}function fr(e,t){if(!mr(e))throw new TypeError(t+" is not a WritableStream.")}Object.defineProperties(Zt.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),Q(Zt.prototype.cancel,"cancel"),Q(Zt.prototype.read,"read"),Q(Zt.prototype.releaseLock,"releaseLock"),"symbol"==typeof Symbol.toStringTag&&Object.defineProperty(Zt.prototype,Symbol.toStringTag,{value:"ReadableStreamBYOBReader",configurable:!0});const pr="function"==typeof AbortController;class hr{constructor(e={},t={}){void 0===e?e=null:qe(e,"First parameter");const r=ar(t,"Second parameter"),o=function(e,t){je(e,t);const r=null==e?void 0:e.abort,o=null==e?void 0:e.close,n=null==e?void 0:e.start,i=null==e?void 0:e.type,a=null==e?void 0:e.write;return{abort:void 0===r?void 0:lr(r,e,t+" has member 'abort' that"),close:void 0===o?void 0:cr(o,e,t+" has member 'close' that"),start:void 0===n?void 0:ur(n,e,t+" has member 'start' that"),write:void 0===a?void 0:dr(a,e,t+" has member 'write' that"),type:i}}(e,"First parameter");if(yr(this),void 0!==o.type)throw new RangeError("Invalid type is specified");const n=ir(r);!function(e,t,r,o){const n=Object.create(xr.prototype);let i,a,s,l;i=void 0!==t.start?()=>t.start(n):()=>{},a=void 0!==t.write?e=>t.write(e,n):()=>ne(void 0),s=void 0!==t.close?()=>t.close():()=>ne(void 0),l=void 0!==t.abort?e=>t.abort(e):()=>ne(void 0),Lr(e,n,i,a,s,l,r,o)}(this,o,nr(r,1),n)}get locked(){if(!mr(this))throw Ur("locked");return vr(this)}abort(e){return mr(this)?vr(this)?ie(new TypeError("Cannot abort a stream that already has a writer")):_r(this,e):ie(Ur("abort"))}close(){return mr(this)?vr(this)?ie(new TypeError("Cannot close a stream that already has a writer")):Or(this)?ie(new TypeError("Cannot close an already-closing stream")):gr(this):ie(Ur("close"))}getWriter(){if(!mr(this))throw Ur("getWriter");return br(this)}}function br(e){return new Cr(e)}function yr(e){e._state="writable",e._storedError=void 0,e._writer=void 0,e._writableStreamController=void 0,e._writeRequests=new be,e._inFlightWriteRequest=void 0,e._closeRequest=void 0,e._inFlightCloseRequest=void 0,e._pendingAbortRequest=void 0,e._backpressure=!1}function mr(e){return!!J(e)&&!!Object.prototype.hasOwnProperty.call(e,"_writableStreamController")&&e instanceof hr}function vr(e){return void 0!==e._writer}function _r(e,t){var r;if("closed"===e._state||"errored"===e._state)return ne(void 0);e._writableStreamController._abortReason=t,null===(r=e._writableStreamController._abortController)||void 0===r||r.abort(t);const o=e._state;if("closed"===o||"errored"===o)return ne(void 0);if(void 0!==e._pendingAbortRequest)return e._pendingAbortRequest._promise;let n=!1;"erroring"===o&&(n=!0,t=void 0);const i=oe((r,o)=>{e._pendingAbortRequest={_promise:void 0,_resolve:r,_reject:o,_reason:t,_wasAlreadyErroring:n}});return e._pendingAbortRequest._promise=i,n||Sr(e,t),i}function gr(e){const t=e._state;if("closed"===t||"errored"===t)return ie(new TypeError(`The stream (in ${t} state) is not in the writable state and cannot be closed`));const r=oe((t,r)=>{const o={_resolve:t,_reject:r};e._closeRequest=o}),o=e._writer;var n;return void 0!==o&&e._backpressure&&"writable"===t&&to(o),bt(n=e._writableStreamController,qr,0),Dr(n),r}function wr(e,t){"writable"!==e._state?Pr(e):Sr(e,t)}function Sr(e,t){const r=e._writableStreamController;e._state="erroring",e._storedError=t;const o=e._writer;void 0!==o&&kr(o,t),!function(e){return void 0!==e._inFlightWriteRequest||void 0!==e._inFlightCloseRequest}(e)&&r._started&&Pr(e)}function Pr(e){e._state="errored",e._writableStreamController[me]();const t=e._storedError;if(e._writeRequests.forEach(e=>{e._reject(t)}),e._writeRequests=new be,void 0===e._pendingAbortRequest)return void Tr(e);const r=e._pendingAbortRequest;if(e._pendingAbortRequest=void 0,r._wasAlreadyErroring)return r._reject(t),void Tr(e);se(e._writableStreamController[ye](r._reason),()=>(r._resolve(),Tr(e),null),t=>(r._reject(t),Tr(e),null))}function Or(e){return void 0!==e._closeRequest||void 0!==e._inFlightCloseRequest}function Tr(e){void 0!==e._closeRequest&&(e._closeRequest._reject(e._storedError),e._closeRequest=void 0);const t=e._writer;void 0!==t&&Jr(t,e._storedError)}function Er(e,t){const r=e._writer;void 0!==r&&t!==e._backpressure&&(t?function(e){Qr(e)}(r):to(r)),e._backpressure=t}Object.defineProperties(hr.prototype,{abort:{enumerable:!0},close:{enumerable:!0},getWriter:{enumerable:!0},locked:{enumerable:!0}}),Q(hr.prototype.abort,"abort"),Q(hr.prototype.close,"close"),Q(hr.prototype.getWriter,"getWriter"),"symbol"==typeof Symbol.toStringTag&&Object.defineProperty(hr.prototype,Symbol.toStringTag,{value:"WritableStream",configurable:!0});class Cr{constructor(e){if(xe(e,1,"WritableStreamDefaultWriter"),fr(e,"First parameter"),vr(e))throw new TypeError("This stream has already been locked for exclusive writing by another writer");this._ownerWritableStream=e,e._writer=this;const t=e._state;if("writable"===t)!Or(e)&&e._backpressure?Qr(this):Zr(this),Yr(this);else if("erroring"===t)Xr(this,e._storedError),Yr(this);else if("closed"===t)Zr(this),Yr(this),Kr(this);else{const t=e._storedError;Xr(this,t),Gr(this,t)}}get closed(){return Rr(this)?this._closedPromise:ie(Vr("closed"))}get desiredSize(){if(!Rr(this))throw Vr("desiredSize");if(void 0===this._ownerWritableStream)throw $r("desiredSize");return function(e){const t=e._ownerWritableStream,r=t._state;return"errored"===r||"erroring"===r?null:"closed"===r?0:Nr(t._writableStreamController)}(this)}get ready(){return Rr(this)?this._readyPromise:ie(Vr("ready"))}abort(e){return Rr(this)?void 0===this._ownerWritableStream?ie($r("abort")):function(e,t){return _r(e._ownerWritableStream,t)}(this,e):ie(Vr("abort"))}close(){if(!Rr(this))return ie(Vr("close"));const e=this._ownerWritableStream;return void 0===e?ie($r("close")):Or(e)?ie(new TypeError("Cannot close an already-closing stream")):Ar(this)}releaseLock(){if(!Rr(this))throw Vr("releaseLock");void 0!==this._ownerWritableStream&&jr(this)}write(e){return Rr(this)?void 0===this._ownerWritableStream?ie($r("write to")):Ir(this,e):ie(Vr("write"))}}function Rr(e){return!!J(e)&&!!Object.prototype.hasOwnProperty.call(e,"_ownerWritableStream")&&e instanceof Cr}function Ar(e){return gr(e._ownerWritableStream)}function kr(e,t){"pending"===e._readyPromiseState?eo(e,t):function(e,t){Xr(e,t)}(e,t)}function jr(e){const t=e._ownerWritableStream,r=new TypeError("Writer was released and can no longer be used to monitor the stream's closedness");kr(e,r),function(e,t){"pending"===e._closedPromiseState?Jr(e,t):function(e,t){Gr(e,t)}(e,t)}(e,r),t._writer=void 0,e._ownerWritableStream=void 0}function Ir(e,t){const r=e._ownerWritableStream,o=r._writableStreamController,n=function(e,t){try{return e._strategySizeAlgorithm(t)}catch(t){return Fr(e,t),1}}(o,t);if(r!==e._ownerWritableStream)return ie($r("write to"));const i=r._state;if("errored"===i)return ie(r._storedError);if(Or(r)||"closed"===i)return ie(new TypeError("The stream is closing or closed and cannot be written to"));if("erroring"===i)return ie(r._storedError);const a=function(e){return oe((t,r)=>{const o={_resolve:t,_reject:r};e._writeRequests.push(o)})}(r);return function(e,t,r){try{bt(e,t,r)}catch(t){return void Fr(e,t)}const o=e._controlledWritableStream;Or(o)||"writable"!==o._state||Er(o,Br(e)),Dr(e)}(o,t,n),a}Object.defineProperties(Cr.prototype,{abort:{enumerable:!0},close:{enumerable:!0},releaseLock:{enumerable:!0},write:{enumerable:!0},closed:{enumerable:!0},desiredSize:{enumerable:!0},ready:{enumerable:!0}}),Q(Cr.prototype.abort,"abort"),Q(Cr.prototype.close,"close"),Q(Cr.prototype.releaseLock,"releaseLock"),Q(Cr.prototype.write,"write"),"symbol"==typeof Symbol.toStringTag&&Object.defineProperty(Cr.prototype,Symbol.toStringTag,{value:"WritableStreamDefaultWriter",configurable:!0});const qr={};class xr{constructor(){throw new TypeError("Illegal constructor")}get abortReason(){if(!Wr(this))throw Hr("abortReason");return this._abortReason}get signal(){if(!Wr(this))throw Hr("signal");if(void 0===this._abortController)throw new TypeError("WritableStreamDefaultController.prototype.signal is not supported");return this._abortController.signal}error(e){if(!Wr(this))throw Hr("error");"writable"===this._controlledWritableStream._state&&zr(this,e)}[ye](e){const t=this._abortAlgorithm(e);return Mr(this),t}[me](){yt(this)}}function Wr(e){return!!J(e)&&!!Object.prototype.hasOwnProperty.call(e,"_controlledWritableStream")&&e instanceof xr}function Lr(e,t,r,o,n,i,a,s){t._controlledWritableStream=e,e._writableStreamController=t,t._queue=void 0,t._queueTotalSize=void 0,yt(t),t._abortReason=void 0,t._abortController=function(){if(pr)return new AbortController}(),t._started=!1,t._strategySizeAlgorithm=s,t._strategyHWM=a,t._writeAlgorithm=o,t._closeAlgorithm=n,t._abortAlgorithm=i;const l=Br(t);Er(e,l),se(ne(r()),()=>(t._started=!0,Dr(t),null),r=>(t._started=!0,wr(e,r),null))}function Mr(e){e._writeAlgorithm=void 0,e._closeAlgorithm=void 0,e._abortAlgorithm=void 0,e._strategySizeAlgorithm=void 0}function Nr(e){return e._strategyHWM-e._queueTotalSize}function Dr(e){const t=e._controlledWritableStream;if(!e._started)return;if(void 0!==t._inFlightWriteRequest)return;if("erroring"===t._state)return void Pr(t);if(0===e._queue.length)return;const r=e._queue.peek().value;r===qr?function(e){const t=e._controlledWritableStream;(function(e){e._inFlightCloseRequest=e._closeRequest,e._closeRequest=void 0})(t),ht(e);const r=e._closeAlgorithm();Mr(e),se(r,()=>(function(e){e._inFlightCloseRequest._resolve(void 0),e._inFlightCloseRequest=void 0,"erroring"===e._state&&(e._storedError=void 0,void 0!==e._pendingAbortRequest&&(e._pendingAbortRequest._resolve(),e._pendingAbortRequest=void 0)),e._state="closed";const t=e._writer;void 0!==t&&Kr(t)}(t),null),e=>(function(e,t){e._inFlightCloseRequest._reject(t),e._inFlightCloseRequest=void 0,void 0!==e._pendingAbortRequest&&(e._pendingAbortRequest._reject(t),e._pendingAbortRequest=void 0),wr(e,t)}(t,e),null))}(e):function(e,t){const r=e._controlledWritableStream;!function(e){e._inFlightWriteRequest=e._writeRequests.shift()}(r);se(e._writeAlgorithm(t),()=>{!function(e){e._inFlightWriteRequest._resolve(void 0),e._inFlightWriteRequest=void 0}(r);const t=r._state;if(ht(e),!Or(r)&&"writable"===t){const t=Br(e);Er(r,t)}return Dr(e),null},t=>("writable"===r._state&&Mr(e),function(e,t){e._inFlightWriteRequest._reject(t),e._inFlightWriteRequest=void 0,wr(e,t)}(r,t),null))}(e,r)}function Fr(e,t){"writable"===e._controlledWritableStream._state&&zr(e,t)}function Br(e){return Nr(e)<=0}function zr(e,t){const r=e._controlledWritableStream;Mr(e),Sr(r,t)}function Ur(e){return new TypeError(`WritableStream.prototype.${e} can only be used on a WritableStream`)}function Hr(e){return new TypeError(`WritableStreamDefaultController.prototype.${e} can only be used on a WritableStreamDefaultController`)}function Vr(e){return new TypeError(`WritableStreamDefaultWriter.prototype.${e} can only be used on a WritableStreamDefaultWriter`)}function $r(e){return new TypeError("Cannot "+e+" a stream using a released writer")}function Yr(e){e._closedPromise=oe((t,r)=>{e._closedPromise_resolve=t,e._closedPromise_reject=r,e._closedPromiseState="pending"})}function Gr(e,t){Yr(e),Jr(e,t)}function Jr(e,t){void 0!==e._closedPromise_reject&&(de(e._closedPromise),e._closedPromise_reject(t),e._closedPromise_resolve=void 0,e._closedPromise_reject=void 0,e._closedPromiseState="rejected")}function Kr(e){void 0!==e._closedPromise_resolve&&(e._closedPromise_resolve(void 0),e._closedPromise_resolve=void 0,e._closedPromise_reject=void 0,e._closedPromiseState="resolved")}function Qr(e){e._readyPromise=oe((t,r)=>{e._readyPromise_resolve=t,e._readyPromise_reject=r}),e._readyPromiseState="pending"}function Xr(e,t){Qr(e),eo(e,t)}function Zr(e){Qr(e),to(e)}function eo(e,t){void 0!==e._readyPromise_reject&&(de(e._readyPromise),e._readyPromise_reject(t),e._readyPromise_resolve=void 0,e._readyPromise_reject=void 0,e._readyPromiseState="rejected")}function to(e){void 0!==e._readyPromise_resolve&&(e._readyPromise_resolve(void 0),e._readyPromise_resolve=void 0,e._readyPromise_reject=void 0,e._readyPromiseState="fulfilled")}Object.defineProperties(xr.prototype,{abortReason:{enumerable:!0},signal:{enumerable:!0},error:{enumerable:!0}}),"symbol"==typeof Symbol.toStringTag&&Object.defineProperty(xr.prototype,Symbol.toStringTag,{value:"WritableStreamDefaultController",configurable:!0});const ro="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof global?global:void 0,oo=function(){const e=null==ro?void 0:ro.DOMException;return function(e){if("function"!=typeof e&&"object"!=typeof e)return!1;if("DOMException"!==e.name)return!1;try{return new e,!0}catch(e){return!1}}(e)?e:void 0}()||function(){const e=function(e,t){this.message=e||"",this.name=t||"Error",Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)};return Q(e,"DOMException"),e.prototype=Object.create(Error.prototype),Object.defineProperty(e.prototype,"constructor",{value:e,writable:!0,configurable:!0}),e}();function no(e,t,r,o,n,i){const a=Fe(e),s=br(t);e._disturbed=!0;let l=!1,c=ne(void 0);return oe((u,d)=>{let f;if(void 0!==i){if(f=()=>{const r=void 0!==i.reason?i.reason:new oo("Aborted","AbortError"),a=[];o||a.push(()=>"writable"===t._state?_r(t,r):ne(void 0)),n||a.push(()=>"readable"===e._state?ko(e,r):ne(void 0)),v(()=>Promise.all(a.map(e=>e())),!0,r)},i.aborted)return void f();i.addEventListener("abort",f)}var p,h,b;if(m(e,a._closedPromise,e=>(o?_(!0,e):v(()=>_r(t,e),!0,e),null)),m(t,s._closedPromise,t=>(n?_(!0,t):v(()=>ko(e,t),!0,t),null)),p=e,h=a._closedPromise,b=()=>(r?_():v(()=>function(e){const t=e._ownerWritableStream,r=t._state;return Or(t)||"closed"===r?ne(void 0):"errored"===r?ie(t._storedError):Ar(e)}(s)),null),"closed"===p._state?b():le(h,b),Or(t)||"closed"===t._state){const t=new TypeError("the destination writable stream closed before all data could be piped to it");n?_(!0,t):v(()=>ko(e,t),!0,t)}function y(){const e=c;return ae(c,()=>e!==c?y():void 0)}function m(e,t,r){"errored"===e._state?r(e._storedError):ce(t,r)}function v(e,r,o){function n(){return se(e(),()=>g(r,o),e=>g(!0,e)),null}l||(l=!0,"writable"!==t._state||Or(t)?n():le(y(),n))}function _(e,r){l||(l=!0,"writable"!==t._state||Or(t)?g(e,r):le(y(),()=>g(e,r)))}function g(e,t){return jr(s),Pe(a),void 0!==i&&i.removeEventListener("abort",f),e?d(t):u(void 0),null}de(oe((e,t)=>{!function r(o){o?e():ae(l?ne(!0):ae(s._readyPromise,()=>oe((e,t)=>{Ye(a,{_chunkSteps:t=>{c=ae(Ir(s,t),void 0,G),e(!1)},_closeSteps:()=>e(!0),_errorSteps:t})})),r,t)}(!1)}))})}class io{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!ao(this))throw mo("desiredSize");return ho(this)}close(){if(!ao(this))throw mo("close");if(!bo(this))throw new TypeError("The stream is not in a state that permits close");uo(this)}enqueue(e){if(!ao(this))throw mo("enqueue");if(!bo(this))throw new TypeError("The stream is not in a state that permits enqueue");return fo(this,e)}error(e){if(!ao(this))throw mo("error");po(this,e)}[ve](e){yt(this);const t=this._cancelAlgorithm(e);return co(this),t}[_e](e){const t=this._controlledReadableStream;if(this._queue.length>0){const r=ht(this);this._closeRequested&&0===this._queue.length?(co(this),jo(t)):so(this),e._chunkSteps(r)}else Be(t,e),so(this)}[ge](){}}function ao(e){return!!J(e)&&!!Object.prototype.hasOwnProperty.call(e,"_controlledReadableStream")&&e instanceof io}function so(e){lo(e)&&(e._pulling?e._pullAgain=!0:(e._pulling=!0,se(e._pullAlgorithm(),()=>(e._pulling=!1,e._pullAgain&&(e._pullAgain=!1,so(e)),null),t=>(po(e,t),null))))}function lo(e){const t=e._controlledReadableStream;return!!bo(e)&&(!!e._started&&(!!(Ao(t)&&Ue(t)>0)||ho(e)>0))}function co(e){e._pullAlgorithm=void 0,e._cancelAlgorithm=void 0,e._strategySizeAlgorithm=void 0}function uo(e){if(!bo(e))return;const t=e._controlledReadableStream;e._closeRequested=!0,0===e._queue.length&&(co(e),jo(t))}function fo(e,t){if(!bo(e))return;const r=e._controlledReadableStream;if(Ao(r)&&Ue(r)>0)ze(r,t,!1);else{let r;try{r=e._strategySizeAlgorithm(t)}catch(t){throw po(e,t),t}try{bt(e,t,r)}catch(t){throw po(e,t),t}}so(e)}function po(e,t){const r=e._controlledReadableStream;"readable"===r._state&&(yt(e),co(e),Io(r,t))}function ho(e){const t=e._controlledReadableStream._state;return"errored"===t?null:"closed"===t?0:e._strategyHWM-e._queueTotalSize}function bo(e){const t=e._controlledReadableStream._state;return!e._closeRequested&&"readable"===t}function yo(e,t,r,o,n,i,a){t._controlledReadableStream=e,t._queue=void 0,t._queueTotalSize=void 0,yt(t),t._started=!1,t._closeRequested=!1,t._pullAgain=!1,t._pulling=!1,t._strategySizeAlgorithm=a,t._strategyHWM=i,t._pullAlgorithm=o,t._cancelAlgorithm=n,e._readableStreamController=t,se(ne(r()),()=>(t._started=!0,so(t),null),e=>(po(t,e),null))}function mo(e){return new TypeError(`ReadableStreamDefaultController.prototype.${e} can only be used on a ReadableStreamDefaultController`)}function vo(e){return J(t=e)&&void 0!==t.getReader?function(e){let t;return t=To(G,(function(){let r;try{r=e.read()}catch(r){return ie(r)}return ue(r,e=>{if(!J(e))throw new TypeError("The promise returned by the reader.read() method must fulfill with an object");if(e.done)uo(t._readableStreamController);else{const r=e.value;fo(t._readableStreamController,r)}})}),(function(t){try{return ne(e.cancel(t))}catch(t){return ie(t)}}),0),t}(e.getReader()):function(e){let t;const r=function e(t,r="sync",o){if(void 0===o)if("async"===r){if(void 0===(o=nt(t,at)))return function(e){const t={next(){let t;try{t=st(e)}catch(e){return ie(e)}return it(t)},return(t){let r;try{const o=nt(e.iterator,"return");if(void 0===o)return ne({done:!0,value:t});r=pe(o,e.iterator,[t])}catch(e){return ie(e)}return J(r)?it(r):ie(new TypeError("The iterator.return() method must return an object"))}};return{iterator:t,nextMethod:t.next,done:!1}}(e(t,"sync",nt(t,Symbol.iterator)))}else o=nt(t,Symbol.iterator);if(void 0===o)throw new TypeError("The object is not iterable");const n=pe(o,t,[]);if(!J(n))throw new TypeError("The iterator method must return an object");return{iterator:n,nextMethod:n.next,done:!1}}(e,"async");return t=To(G,(function(){let e;try{e=st(r)}catch(e){return ie(e)}return ue(ne(e),e=>{if(!J(e))throw new TypeError("The promise returned by the iterator.next() method must fulfill with an object");if(e.done)uo(t._readableStreamController);else{const r=e.value;fo(t._readableStreamController,r)}})}),(function(e){const t=r.iterator;let o;try{o=nt(t,"return")}catch(e){return ie(e)}return void 0===o?ne(void 0):ue(he(o,t,[e]),e=>{if(!J(e))throw new TypeError("The promise returned by the iterator.return() method must fulfill with an object")})}),0),t}(e);var t}function _o(e,t,r){return Ie(e,r),r=>he(e,t,[r])}function go(e,t,r){return Ie(e,r),r=>he(e,t,[r])}function wo(e,t,r){return Ie(e,r),r=>pe(e,t,[r])}function So(e,t){if("bytes"!=(e=""+e))throw new TypeError(`${t} '${e}' is not a valid enumeration value for ReadableStreamType`);return e}function Po(e,t){je(e,t);const r=null==e?void 0:e.preventAbort,o=null==e?void 0:e.preventCancel,n=null==e?void 0:e.preventClose,i=null==e?void 0:e.signal;return void 0!==i&&function(e,t){if(!function(e){if("object"!=typeof e||null===e)return!1;try{return"boolean"==typeof e.aborted}catch(e){return!1}}(e))throw new TypeError(t+" is not an AbortSignal.")}(i,t+" has member 'signal' that"),{preventAbort:Boolean(r),preventCancel:Boolean(o),preventClose:Boolean(n),signal:i}}Object.defineProperties(io.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},desiredSize:{enumerable:!0}}),Q(io.prototype.close,"close"),Q(io.prototype.enqueue,"enqueue"),Q(io.prototype.error,"error"),"symbol"==typeof Symbol.toStringTag&&Object.defineProperty(io.prototype,Symbol.toStringTag,{value:"ReadableStreamDefaultController",configurable:!0});class Oo{constructor(e={},t={}){void 0===e?e=null:qe(e,"First parameter");const r=ar(t,"Second parameter"),o=function(e,t){je(e,t);const r=e,o=null==r?void 0:r.autoAllocateChunkSize,n=null==r?void 0:r.cancel,i=null==r?void 0:r.pull,a=null==r?void 0:r.start,s=null==r?void 0:r.type;return{autoAllocateChunkSize:void 0===o?void 0:Ne(o,t+" has member 'autoAllocateChunkSize' that"),cancel:void 0===n?void 0:_o(n,r,t+" has member 'cancel' that"),pull:void 0===i?void 0:go(i,r,t+" has member 'pull' that"),start:void 0===a?void 0:wo(a,r,t+" has member 'start' that"),type:void 0===s?void 0:So(s,t+" has member 'type' that")}}(e,"First parameter");if(Co(this),"bytes"===o.type){if(void 0!==r.size)throw new RangeError("The strategy for a byte stream cannot have a size function");!function(e,t,r){const o=Object.create(_t.prototype);let n,i,a;n=void 0!==t.start?()=>t.start(o):()=>{},i=void 0!==t.pull?()=>t.pull(o):()=>ne(void 0),a=void 0!==t.cancel?e=>t.cancel(e):()=>ne(void 0);const s=t.autoAllocateChunkSize;if(0===s)throw new TypeError("autoAllocateChunkSize must be greater than 0");Vt(e,o,n,i,a,r,s)}(this,o,nr(r,0))}else{const e=ir(r);!function(e,t,r,o){const n=Object.create(io.prototype);let i,a,s;i=void 0!==t.start?()=>t.start(n):()=>{},a=void 0!==t.pull?()=>t.pull(n):()=>ne(void 0),s=void 0!==t.cancel?e=>t.cancel(e):()=>ne(void 0),yo(e,n,i,a,s,r,o)}(this,o,nr(r,1),e)}}get locked(){if(!Ro(this))throw qo("locked");return Ao(this)}cancel(e){return Ro(this)?Ao(this)?ie(new TypeError("Cannot cancel a stream that already has a reader")):ko(this,e):ie(qo("cancel"))}getReader(e){if(!Ro(this))throw qo("getReader");return void 0===function(e,t){je(e,t);const r=null==e?void 0:e.mode;return{mode:void 0===r?void 0:Gt(r,t+" has member 'mode' that")}}(e,"First parameter").mode?Fe(this):Jt(this)}pipeThrough(e,t={}){if(!Ro(this))throw qo("pipeThrough");xe(e,1,"pipeThrough");const r=function(e,t){je(e,t);const r=null==e?void 0:e.readable;We(r,"readable","ReadableWritablePair"),De(r,t+" has member 'readable' that");const o=null==e?void 0:e.writable;return We(o,"writable","ReadableWritablePair"),fr(o,t+" has member 'writable' that"),{readable:r,writable:o}}(e,"First parameter"),o=Po(t,"Second parameter");if(Ao(this))throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked ReadableStream");if(vr(r.writable))throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked WritableStream");return de(no(this,r.writable,o.preventClose,o.preventAbort,o.preventCancel,o.signal)),r.readable}pipeTo(e,t={}){if(!Ro(this))return ie(qo("pipeTo"));if(void 0===e)return ie("Parameter 1 is required in 'pipeTo'.");if(!mr(e))return ie(new TypeError("ReadableStream.prototype.pipeTo's first argument must be a WritableStream"));let r;try{r=Po(t,"Second parameter")}catch(e){return ie(e)}return Ao(this)?ie(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked ReadableStream")):vr(e)?ie(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked WritableStream")):no(this,e,r.preventClose,r.preventAbort,r.preventCancel,r.signal)}tee(){if(!Ro(this))throw qo("tee");return Ze(function(e,t){return gt(e._readableStreamController)?function(e){let t,r,o,n,i,a=Fe(e),s=!1,l=!1,c=!1,u=!1,d=!1;const f=oe(e=>{i=e});function p(e){ce(e._closedPromise,t=>(e!==a||(Dt(o._readableStreamController,t),Dt(n._readableStreamController,t),u&&d||i(void 0)),null))}function h(){er(a)&&(Pe(a),a=Fe(e),p(a)),Ye(a,{_chunkSteps:t=>{fe(()=>{l=!1,c=!1;const r=t;let a=t;if(!u&&!d)try{a=pt(t)}catch(t){return Dt(o._readableStreamController,t),Dt(n._readableStreamController,t),void i(ko(e,t))}u||Nt(o._readableStreamController,r),d||Nt(n._readableStreamController,a),s=!1,l?y():c&&m()})},_closeSteps:()=>{s=!1,u||Mt(o._readableStreamController),d||Mt(n._readableStreamController),o._readableStreamController._pendingPullIntos.length>0&&Ut(o._readableStreamController,0),n._readableStreamController._pendingPullIntos.length>0&&Ut(n._readableStreamController,0),u&&d||i(void 0)},_errorSteps:()=>{s=!1}})}function b(t,r){$e(a)&&(Pe(a),a=Jt(e),p(a));const f=r?n:o,h=r?o:n;tr(a,t,1,{_chunkSteps:t=>{fe(()=>{l=!1,c=!1;const o=r?d:u;if(r?u:d)o||Ht(f._readableStreamController,t);else{let r;try{r=pt(t)}catch(t){return Dt(f._readableStreamController,t),Dt(h._readableStreamController,t),void i(ko(e,t))}o||Ht(f._readableStreamController,t),Nt(h._readableStreamController,r)}s=!1,l?y():c&&m()})},_closeSteps:e=>{s=!1;const t=r?d:u,o=r?u:d;t||Mt(f._readableStreamController),o||Mt(h._readableStreamController),void 0!==e&&(t||Ht(f._readableStreamController,e),!o&&h._readableStreamController._pendingPullIntos.length>0&&Ut(h._readableStreamController,0)),t&&o||i(void 0)},_errorSteps:()=>{s=!1}})}function y(){if(s)return l=!0,ne(void 0);s=!0;const e=Bt(o._readableStreamController);return null===e?h():b(e._view,!1),ne(void 0)}function m(){if(s)return c=!0,ne(void 0);s=!0;const e=Bt(n._readableStreamController);return null===e?h():b(e._view,!0),ne(void 0)}function v(){}return o=Eo(v,y,(function(o){if(u=!0,t=o,d){const o=Ze([t,r]),n=ko(e,o);i(n)}return f})),n=Eo(v,m,(function(o){if(d=!0,r=o,u){const o=Ze([t,r]),n=ko(e,o);i(n)}return f})),p(a),[o,n]}(e):function(e,t){const r=Fe(e);let o,n,i,a,s,l=!1,c=!1,u=!1,d=!1;const f=oe(e=>{s=e});function p(){return l?(c=!0,ne(void 0)):(l=!0,Ye(r,{_chunkSteps:e=>{fe(()=>{c=!1;const t=e,r=e;u||fo(i._readableStreamController,t),d||fo(a._readableStreamController,r),l=!1,c&&p()})},_closeSteps:()=>{l=!1,u||uo(i._readableStreamController),d||uo(a._readableStreamController),u&&d||s(void 0)},_errorSteps:()=>{l=!1}}),ne(void 0))}function h(){}return i=To(h,p,(function(t){if(u=!0,o=t,d){const t=Ze([o,n]),r=ko(e,t);s(r)}return f})),a=To(h,p,(function(t){if(d=!0,n=t,u){const t=Ze([o,n]),r=ko(e,t);s(r)}return f})),ce(r._closedPromise,e=>(po(i._readableStreamController,e),po(a._readableStreamController,e),u&&d||s(void 0),null)),[i,a]}(e)}(this))}values(e){if(!Ro(this))throw qo("values");return function(e,t){const r=Fe(e),o=new lt(r,t),n=Object.create(ct);return n._asyncIteratorImpl=o,n}(this,function(e,t){je(e,"First parameter");const r=null==e?void 0:e.preventCancel;return{preventCancel:Boolean(r)}}(e).preventCancel)}[at](e){return this.values(e)}static from(e){return vo(e)}}function To(e,t,r,o=1,n=(()=>1)){const i=Object.create(Oo.prototype);return Co(i),yo(i,Object.create(io.prototype),e,t,r,o,n),i}function Eo(e,t,r){const o=Object.create(Oo.prototype);return Co(o),Vt(o,Object.create(_t.prototype),e,t,r,0,void 0),o}function Co(e){e._state="readable",e._reader=void 0,e._storedError=void 0,e._disturbed=!1}function Ro(e){return!!J(e)&&!!Object.prototype.hasOwnProperty.call(e,"_readableStreamController")&&e instanceof Oo}function Ao(e){return void 0!==e._reader}function ko(e,t){if(e._disturbed=!0,"closed"===e._state)return ne(void 0);if("errored"===e._state)return ie(e._storedError);jo(e);const r=e._reader;if(void 0!==r&&er(r)){const e=r._readIntoRequests;r._readIntoRequests=new be,e.forEach(e=>{e._closeSteps(void 0)})}return ue(e._readableStreamController[ve](t),G)}function jo(e){e._state="closed";const t=e._reader;if(void 0!==t&&(Re(t),$e(t))){const e=t._readRequests;t._readRequests=new be,e.forEach(e=>{e._closeSteps()})}}function Io(e,t){e._state="errored",e._storedError=t;const r=e._reader;void 0!==r&&(Ce(r,t),$e(r)?Ge(r,t):rr(r,t))}function qo(e){return new TypeError(`ReadableStream.prototype.${e} can only be used on a ReadableStream`)}function xo(e,t){je(e,t);const r=null==e?void 0:e.highWaterMark;return We(r,"highWaterMark","QueuingStrategyInit"),{highWaterMark:Le(r)}}Object.defineProperties(Oo,{from:{enumerable:!0}}),Object.defineProperties(Oo.prototype,{cancel:{enumerable:!0},getReader:{enumerable:!0},pipeThrough:{enumerable:!0},pipeTo:{enumerable:!0},tee:{enumerable:!0},values:{enumerable:!0},locked:{enumerable:!0}}),Q(Oo.from,"from"),Q(Oo.prototype.cancel,"cancel"),Q(Oo.prototype.getReader,"getReader"),Q(Oo.prototype.pipeThrough,"pipeThrough"),Q(Oo.prototype.pipeTo,"pipeTo"),Q(Oo.prototype.tee,"tee"),Q(Oo.prototype.values,"values"),"symbol"==typeof Symbol.toStringTag&&Object.defineProperty(Oo.prototype,Symbol.toStringTag,{value:"ReadableStream",configurable:!0}),Object.defineProperty(Oo.prototype,at,{value:Oo.prototype.values,writable:!0,configurable:!0});const Wo=e=>e.byteLength;Q(Wo,"size");class Lo{constructor(e){xe(e,1,"ByteLengthQueuingStrategy"),e=xo(e,"First parameter"),this._byteLengthQueuingStrategyHighWaterMark=e.highWaterMark}get highWaterMark(){if(!No(this))throw Mo("highWaterMark");return this._byteLengthQueuingStrategyHighWaterMark}get size(){if(!No(this))throw Mo("size");return Wo}}function Mo(e){return new TypeError(`ByteLengthQueuingStrategy.prototype.${e} can only be used on a ByteLengthQueuingStrategy`)}function No(e){return!!J(e)&&!!Object.prototype.hasOwnProperty.call(e,"_byteLengthQueuingStrategyHighWaterMark")&&e instanceof Lo}Object.defineProperties(Lo.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),"symbol"==typeof Symbol.toStringTag&&Object.defineProperty(Lo.prototype,Symbol.toStringTag,{value:"ByteLengthQueuingStrategy",configurable:!0});const Do=()=>1;Q(Do,"size");class Fo{constructor(e){xe(e,1,"CountQueuingStrategy"),e=xo(e,"First parameter"),this._countQueuingStrategyHighWaterMark=e.highWaterMark}get highWaterMark(){if(!zo(this))throw Bo("highWaterMark");return this._countQueuingStrategyHighWaterMark}get size(){if(!zo(this))throw Bo("size");return Do}}function Bo(e){return new TypeError(`CountQueuingStrategy.prototype.${e} can only be used on a CountQueuingStrategy`)}function zo(e){return!!J(e)&&!!Object.prototype.hasOwnProperty.call(e,"_countQueuingStrategyHighWaterMark")&&e instanceof Fo}function Uo(e,t,r){return Ie(e,r),r=>he(e,t,[r])}function Ho(e,t,r){return Ie(e,r),r=>pe(e,t,[r])}function Vo(e,t,r){return Ie(e,r),(r,o)=>he(e,t,[r,o])}function $o(e,t,r){return Ie(e,r),r=>he(e,t,[r])}Object.defineProperties(Fo.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),"symbol"==typeof Symbol.toStringTag&&Object.defineProperty(Fo.prototype,Symbol.toStringTag,{value:"CountQueuingStrategy",configurable:!0});class Yo{constructor(e={},t={},r={}){void 0===e&&(e=null);const o=ar(t,"Second parameter"),n=ar(r,"Third parameter"),i=function(e,t){je(e,t);const r=null==e?void 0:e.cancel,o=null==e?void 0:e.flush,n=null==e?void 0:e.readableType,i=null==e?void 0:e.start,a=null==e?void 0:e.transform,s=null==e?void 0:e.writableType;return{cancel:void 0===r?void 0:$o(r,e,t+" has member 'cancel' that"),flush:void 0===o?void 0:Uo(o,e,t+" has member 'flush' that"),readableType:n,start:void 0===i?void 0:Ho(i,e,t+" has member 'start' that"),transform:void 0===a?void 0:Vo(a,e,t+" has member 'transform' that"),writableType:s}}(e,"First parameter");if(void 0!==i.readableType)throw new RangeError("Invalid readableType specified");if(void 0!==i.writableType)throw new RangeError("Invalid writableType specified");const a=nr(n,0),s=ir(n),l=nr(o,1),c=ir(o);let u;!function(e,t,r,o,n,i){function a(){return t}e._writable=function(e,t,r,o,n=1,i=(()=>1)){const a=Object.create(hr.prototype);return yr(a),Lr(a,Object.create(xr.prototype),e,t,r,o,n,i),a}(a,(function(t){return function(e,t){const r=e._transformStreamController;return e._backpressure?ue(e._backpressureChangePromise,()=>{const o=e._writable;if("erroring"===o._state)throw o._storedError;return on(r,t)}):on(r,t)}(e,t)}),(function(){return function(e){const t=e._transformStreamController;if(void 0!==t._finishPromise)return t._finishPromise;const r=e._readable;t._finishPromise=oe((e,r)=>{t._finishPromise_resolve=e,t._finishPromise_reject=r});const o=t._flushAlgorithm();return tn(t),se(o,()=>("errored"===r._state?sn(t,r._storedError):(uo(r._readableStreamController),an(t)),null),e=>(po(r._readableStreamController,e),sn(t,e),null)),t._finishPromise}(e)}),(function(t){return function(e,t){const r=e._transformStreamController;if(void 0!==r._finishPromise)return r._finishPromise;const o=e._readable;r._finishPromise=oe((e,t)=>{r._finishPromise_resolve=e,r._finishPromise_reject=t});const n=r._cancelAlgorithm(t);return tn(r),se(n,()=>("errored"===o._state?sn(r,o._storedError):(po(o._readableStreamController,t),an(r)),null),e=>(po(o._readableStreamController,e),sn(r,e),null)),r._finishPromise}(e,t)}),r,o),e._readable=To(a,(function(){return function(e){return Xo(e,!1),e._backpressureChangePromise}(e)}),(function(t){return function(e,t){const r=e._transformStreamController;if(void 0!==r._finishPromise)return r._finishPromise;const o=e._writable;r._finishPromise=oe((e,t)=>{r._finishPromise_resolve=e,r._finishPromise_reject=t});const n=r._cancelAlgorithm(t);return tn(r),se(n,()=>("errored"===o._state?sn(r,o._storedError):(Fr(o._writableStreamController,t),Qo(e),an(r)),null),t=>(Fr(o._writableStreamController,t),Qo(e),sn(r,t),null)),r._finishPromise}(e,t)}),n,i),e._backpressure=void 0,e._backpressureChangePromise=void 0,e._backpressureChangePromise_resolve=void 0,Xo(e,!0),e._transformStreamController=void 0}(this,oe(e=>{u=e}),l,c,a,s),function(e,t){const r=Object.create(Zo.prototype);let o,n,i;o=void 0!==t.transform?e=>t.transform(e,r):e=>{try{return rn(r,e),ne(void 0)}catch(e){return ie(e)}},n=void 0!==t.flush?()=>t.flush(r):()=>ne(void 0),i=void 0!==t.cancel?e=>t.cancel(e):()=>ne(void 0),function(e,t,r,o,n){t._controlledTransformStream=e,e._transformStreamController=t,t._transformAlgorithm=r,t._flushAlgorithm=o,t._cancelAlgorithm=n,t._finishPromise=void 0,t._finishPromise_resolve=void 0,t._finishPromise_reject=void 0}(e,r,o,n,i)}(this,i),void 0!==i.start?u(i.start(this._transformStreamController)):u(void 0)}get readable(){if(!Go(this))throw ln("readable");return this._readable}get writable(){if(!Go(this))throw ln("writable");return this._writable}}function Go(e){return!!J(e)&&!!Object.prototype.hasOwnProperty.call(e,"_transformStreamController")&&e instanceof Yo}function Jo(e,t){po(e._readable._readableStreamController,t),Ko(e,t)}function Ko(e,t){tn(e._transformStreamController),Fr(e._writable._writableStreamController,t),Qo(e)}function Qo(e){e._backpressure&&Xo(e,!1)}function Xo(e,t){void 0!==e._backpressureChangePromise&&e._backpressureChangePromise_resolve(),e._backpressureChangePromise=oe(t=>{e._backpressureChangePromise_resolve=t}),e._backpressure=t}Object.defineProperties(Yo.prototype,{readable:{enumerable:!0},writable:{enumerable:!0}}),"symbol"==typeof Symbol.toStringTag&&Object.defineProperty(Yo.prototype,Symbol.toStringTag,{value:"TransformStream",configurable:!0});class Zo{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!en(this))throw nn("desiredSize");return ho(this._controlledTransformStream._readable._readableStreamController)}enqueue(e){if(!en(this))throw nn("enqueue");rn(this,e)}error(e){if(!en(this))throw nn("error");var t;t=e,Jo(this._controlledTransformStream,t)}terminate(){if(!en(this))throw nn("terminate");!function(e){const t=e._controlledTransformStream;uo(t._readable._readableStreamController);Ko(t,new TypeError("TransformStream terminated"))}(this)}}function en(e){return!!J(e)&&!!Object.prototype.hasOwnProperty.call(e,"_controlledTransformStream")&&e instanceof Zo}function tn(e){e._transformAlgorithm=void 0,e._flushAlgorithm=void 0,e._cancelAlgorithm=void 0}function rn(e,t){const r=e._controlledTransformStream,o=r._readable._readableStreamController;if(!bo(o))throw new TypeError("Readable side is not in a state that permits enqueue");try{fo(o,t)}catch(e){throw Ko(r,e),r._readable._storedError}(function(e){return!lo(e)})(o)!==r._backpressure&&Xo(r,!0)}function on(e,t){return ue(e._transformAlgorithm(t),void 0,t=>{throw Jo(e._controlledTransformStream,t),t})}function nn(e){return new TypeError(`TransformStreamDefaultController.prototype.${e} can only be used on a TransformStreamDefaultController`)}function an(e){void 0!==e._finishPromise_resolve&&(e._finishPromise_resolve(),e._finishPromise_resolve=void 0,e._finishPromise_reject=void 0)}function sn(e,t){void 0!==e._finishPromise_reject&&(de(e._finishPromise),e._finishPromise_reject(t),e._finishPromise_resolve=void 0,e._finishPromise_reject=void 0)}function ln(e){return new TypeError(`TransformStream.prototype.${e} can only be used on a TransformStream`)}Object.defineProperties(Zo.prototype,{enqueue:{enumerable:!0},error:{enumerable:!0},terminate:{enumerable:!0},desiredSize:{enumerable:!0}}),Q(Zo.prototype.enqueue,"enqueue"),Q(Zo.prototype.error,"error"),Q(Zo.prototype.terminate,"terminate"),"symbol"==typeof Symbol.toStringTag&&Object.defineProperty(Zo.prototype,Symbol.toStringTag,{value:"TransformStreamDefaultController",configurable:!0});var cn,un=(cn=function(e,t){return(cn=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}cn(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),dn=function(){return(dn=Object.assign||function(e){for(var t,r=1,o=arguments.length;r<o;r++)for(var n in t=arguments[r])Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e}).apply(this,arguments)},fn=function(e,t,r,o){return new(r||(r=Promise))((function(n,i){function a(e){try{l(o.next(e))}catch(e){i(e)}}function s(e){try{l(o.throw(e))}catch(e){i(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,s)}l((o=o.apply(e,t||[])).next())}))},pn=function(e,t){var r,o,n,i,a={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(r)throw new TypeError("Generator is already executing.");for(;a;)try{if(r=1,o&&(n=2&i[0]?o.return:i[0]?o.throw||((n=o.return)&&n.call(o),0):o.next)&&!(n=n.call(o,i[1])).done)return n;switch(o=0,n&&(i=[2&i[0],n.value]),i[0]){case 0:case 1:n=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,o=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(n=a.trys,(n=n.length>0&&n[n.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!n||i[1]>n[0]&&i[1]<n[3])){a.label=i[1];break}if(6===i[0]&&a.label<n[1]){a.label=n[1],n=i;break}if(n&&a.label<n[2]){a.label=n[2],a.ops.push(i);break}n[2]&&a.ops.pop(),a.trys.pop();continue}i=t.call(e,a)}catch(e){i=[6,e],o=0}finally{r=n=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,s])}}},hn=function(e,t){var r={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(r[o]=e[o]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var n=0;for(o=Object.getOwnPropertySymbols(e);n<o.length;n++)t.indexOf(o[n])<0&&Object.prototype.propertyIsEnumerable.call(e,o[n])&&(r[o[n]]=e[o[n]])}return r};var bn=function(e){function t(t){void 0===t&&(t={});var r=e.call(this)||this,o=t.timeout,n=t.timeoutMsg,i=t.restrictedMethods;return r._timeout=o||0,r._timeoutMsg=n||"请求超时",r._restrictedMethods=i||["get","post","upload","download"],r}return un(t,e),t.prototype.post=function(e){var t=this;return new Promise((function(r,o){var n=e.url,i=e.data,a=e.headers,s=wx.request({url:u("https:",n),data:i,timeout:t._timeout,method:"POST",header:a,success:function(e){e.statusCode>=200&&e.statusCode<300?r({statusCode:e.statusCode,status:e.statusCode,data:e.data}):o(e)},fail:function(e){o(e)},complete:function(e){if(e&&e.errMsg&&(t._timeout&&-1!==t._restrictedMethods.indexOf("post")&&"request:fail timeout"===e.errMsg)){console.warn(t._timeoutMsg);try{s.abort()}catch(e){}}}})}))},t.prototype.get=function(e){var t=this;return new Promise((function(r,o){var n=e.url,i=e.body,a=e.headers,s=u("https:",n),l=wx.request({url:s,data:i,timeout:t._timeout,method:"GET",header:a,success:function(e){e.statusCode>=200&&e.statusCode<300?r({statusCode:e.statusCode,status:e.statusCode,data:e.data}):o(e)},fail:function(e){o(e)},complete:function(e){if(e&&e.errMsg&&(t._timeout&&-1!==t._restrictedMethods.indexOf("get")&&e.errMsg.includes("timeout"))){console.warn(t._timeoutMsg);try{l.abort()}catch(e){console.warn("Error when aborting requestTask",e)}}}})}))},t.prototype.upload=function(e){var t=this,r=this;return new Promise((function(o){return fn(t,void 0,void 0,(function(){var t,n,i,a,s,l;return pn(this,(function(c){return t=e.url,n=e.file,i=e.data,a=e.headers,s=e.onUploadProgress,l=wx.uploadFile({url:t,filePath:n,name:"file",formData:dn({},i),header:a,timeout:this._timeout,success:function(e){var t={statusCode:e.statusCode,data:e.data||{}};200===e.statusCode&&i.success_action_status&&(t.statusCode=parseInt(i.success_action_status,10)),o(t)},fail:function(e){o(e)},complete:function(e){if(e&&e.errMsg&&(r._timeout&&-1!==r._restrictedMethods.indexOf("upload")&&"request:fail timeout"===e.errMsg)){console.warn(r._timeoutMsg);try{l.abort()}catch(e){}}}}),s&&l.onProgressUpdate((function(e){s(e)})),[2]}))}))}))},t.prototype.download=function(e){var t=this,r=this;return new Promise((function(o,n){var i=e.url,a=e.headers,s=wx.downloadFile({url:u("https:",i),header:a,timeout:t._timeout,success:function(e){200===e.statusCode&&e.tempFilePath?o({statusCode:200,tempFilePath:e.tempFilePath}):o(e)},fail:function(e){n(e)},complete:function(e){if(e&&e.errMsg&&(r._timeout&&-1!==r._restrictedMethods.indexOf("download")&&"request:fail timeout"===e.errMsg)){console.warn(r._timeoutMsg);try{s.abort()}catch(e){}}}})}))},t.prototype.fetch=function(e){var t=e.url,r=e.body,o=e.enableAbort,n=e.headers,i=e.method,a=e.stream,s=void 0!==a&&a,l=e.signal,c=e.timeout,d=this,f=null!=c?c:this._timeout,p=null,h=new Oo({start:function(e){p=e},cancel:function(){p=null}});return new Promise((function(e,a){s&&e({data:h});var c=wx.request({url:u("https:",t),data:r,timeout:f,method:i.toUpperCase(),header:n,success:function(t){var r;null===(r=p)||void 0===r||r.close(),!s&&e(t)},fail:function(e){var t;if(null===(t=p)||void 0===t||t.close(),a(e),s)throw e},complete:function(e){if(e&&e.errMsg&&(f&&-1!==d._restrictedMethods.indexOf("post")&&o&&"request:fail timeout"===e.errMsg)){console.warn(d._timeoutMsg);try{c.abort()}catch(e){console.warn("Error when aborting requestTask",e)}}},enableChunked:s});if(c.onChunkReceived((function(e){var t;null===(t=p)||void 0===t||t.enqueue(new Uint8Array(e.data))})),l){var b=function(){try{c.abort()}catch(e){console.warn("Error when aborting requestTask",e)}};l.aborted?b():l.addEventListener("abort",(function(){return b()}))}}))},t}(l),yn={setItem:function(e,t){wx.setStorageSync(e,t)},getItem:function(e){return wx.getStorageSync(e)},removeItem:function(e){wx.removeStorageSync(e)},clear:function(){wx.clearStorageSync()}},mn=function(e,t){void 0===t&&(t={});var r=wx.connectSocket(dn({url:e},t));return{set onopen(e){r.onOpen(e)},set onmessage(e){r.onMessage(e)},set onclose(e){r.onClose(e)},set onerror(e){r.onError(e)},send:function(e){return r.send({data:e})},close:function(e,t){return r.close({code:e,reason:t})},get readyState(){return r.readyState},CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3}};function vn(e){var t={},r=e.replace(/^[?#]/,"");return r?(r.split("&").forEach((function(e){var r=e.split("="),o=r[0],n=r[1];o=decodeURIComponent(o),n=decodeURIComponent(n),o&&(t[o]?Array.isArray(t[o])?t[o].push(n):t[o]=[t[o],n]:t[o]=n)})),t):t}const _n={genAdapter:function(e){return{root:{globalThis:{}},reqClass:bn,wsClass:mn,captchaOptions:{openURIWithCallback:function(t){var r=e.EventBus,o={},n=t;console.log("openURIWithCallback",t);var i=t.match(/^(data:.*?)(\?[^#\s]*)?$/);if(i){n=i[1],console.log("openURIWithCallback url",n);var a=i[2];a&&(o=vn(a))}console.log("openURIWithCallback queryObj",o);var s=o.token,l=hn(o,["token"]);return/^data:/.test(n)&&!s?Promise.reject({error:"invalid_argument",error_description:"invalie captcha data: "+t}):s?new Promise((function(e){console.log("wait for captcha..."),r.$emit("CAPTCHA_DATA_CHANGE",dn(dn({},l),{token:s,url:n})),r.$once("RESOLVE_CAPTCHA_DATA",(function(t){e(t)}))})):Promise.reject({error:"unimplemented",error_description:"need to impl captcha data"})}},localStorage:yn,primaryStorage:i.local,getAppSign:function(){var e=wx.getAccountInfoSync();return"undefined"!=typeof App||"undefined"!=typeof getApp||wx.onAppHide||wx.offAppHide||wx.onAppShow||wx.offAppShow?e&&e.miniProgram?e.miniProgram.appId:"":e&&e.plugin?e.plugin.appId:""}}},isMatch:function(){if("undefined"==typeof wx)return!1;if("undefined"==typeof Page)return!1;if(!wx.getSystemInfoSync)return!1;if(!wx.getStorageSync)return!1;if(!wx.setStorageSync)return!1;if(!wx.connectSocket)return!1;if(!wx.request)return!1;try{if(!wx.getSystemInfoSync())return!1;if("qq"===wx.getSystemInfoSync().AppPlatform)return!1}catch(e){return!1}return!0},runtime:"wx_mp"};var gn=function(){return(gn=Object.assign||function(e){for(var t,r=1,o=arguments.length;r<o;r++)for(var n in t=arguments[r])Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e}).apply(this,arguments)},wn=function(e,t){var r={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(r[o]=e[o]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var n=0;for(o=Object.getOwnPropertySymbols(e);n<o.length;n++)t.indexOf(o[n])<0&&Object.prototype.propertyIsEnumerable.call(e,o[n])&&(r[o[n]]=e[o[n]])}return r},Sn={},Pn=function(){return(Pn=Object.assign||function(e){for(var t,r=1,o=arguments.length;r<o;r++)for(var n in t=arguments[r])Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e}).apply(this,arguments)},On=A,Tn={},En={};function Cn(e){var t=e.env,r=e.platformInfo,o={userInfoKey:"".concat("user_info","_").concat(t)};Tn[t]=Tn[t]||new On(Pn(Pn({},e),{keys:o,platformInfo:r})),En[t]=En[t]||new On(Pn(Pn({},e),{keys:o,platformInfo:r,persistence:"local"}))}function Rn(e){return En[e]}var An=function(){return(An=Object.assign||function(e){for(var t,r=1,o=arguments.length;r<o;r++)for(var n in t=arguments[r])Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e}).apply(this,arguments)},kn=["ap-shanghai","ap-guangzhou","ap-shenzhen-fsi","ap-shanghai-fsi","ap-nanjing","ap-beijing","ap-chengdu","ap-chongqing","ap-hongkong"],jn=function(e){r=e},In=function(e){n=e},qn="",xn="@cloudbase/js-sdk";function Wn(){return qn}var Ln,Mn=[],Nn=["env","endPointKey","region"];function Dn(e){return Mn.find((function(t){return Nn.filter((function(t){return null!=e[t]})).every((function(r){return t[r]===e[r]}))}))}function Fn(e){var t,r;e.protocol&&!/:$/.test(e.protocol)&&(e.protocol="".concat(e.protocol,":"));var o=Dn(e);o?(null!=e.baseUrl&&(o.baseUrl=e.baseUrl),null!=e.protocol&&(o.protocol=e.protocol)):Mn.push(An(An({},e),{protocol:null!==(t=e.protocol)&&void 0!==t?t:"https:"})),"CLOUD_API"===e.endPointKey&&In(null!==(r=e.protocol)&&void 0!==r?r:"https:")}function Bn(e,t,r){return Dn({env:e,endPointKey:t,region:r})}function zn(e,t){void 0===t&&(t="CLOUD_API");var r=Bn(e,t||"CLOUD_API"),o=r.protocol,n=r.baseUrl;return"".concat(o).concat(n).match(/(http(s)?:)?\/\/([^/?#]*)/)[0]}!function(e){e.NULL="NULL",e.ANONYMOUS="ANONYMOUS",e.WECHAT="WECHAT",e.WECHAT_PUBLIC="WECHAT-PUBLIC",e.WECHAT_OPEN="WECHAT-OPEN",e.CUSTOM="CUSTOM",e.EMAIL="EMAIL",e.USERNAME="USERNAME",e.PHONE="PHONE"}(Ln||(Ln={}));var Un=function(){return(Un=Object.assign||function(e){for(var t,r=1,o=arguments.length;r<o;r++)for(var n in t=arguments[r])Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e}).apply(this,arguments)},Hn=function(e,t,r,o){return new(r||(r=Promise))((function(n,i){function a(e){try{l(o.next(e))}catch(e){i(e)}}function s(e){try{l(o.throw(e))}catch(e){i(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,s)}l((o=o.apply(e,t||[])).next())}))},Vn=function(e,t){var r,o,n,i,a={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(s){return function(l){return function(s){if(r)throw new TypeError("Generator is already executing.");for(;i&&(i=0,s[0]&&(a=0)),a;)try{if(r=1,o&&(n=2&s[0]?o.return:s[0]?o.throw||((n=o.return)&&n.call(o),0):o.next)&&!(n=n.call(o,s[1])).done)return n;switch(o=0,n&&(s=[2&s[0],n.value]),s[0]){case 0:case 1:n=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,o=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!(n=a.trys,(n=n.length>0&&n[n.length-1])||6!==s[0]&&2!==s[0])){a=0;continue}if(3===s[0]&&(!n||s[1]>n[0]&&s[1]<n[3])){a.label=s[1];break}if(6===s[0]&&a.label<n[1]){a.label=n[1],n=s;break}if(n&&a.label<n[2]){a.label=n[2],a.ops.push(s);break}n[2]&&a.ops.pop(),a.trys.pop();continue}s=t.call(e,a)}catch(e){s=[6,e],o=0}finally{r=n=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,l])}}},$n=function(e,t){var r={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(r[o]=e[o]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var n=0;for(o=Object.getOwnPropertySymbols(e);n<o.length;n++)t.indexOf(o[n])<0&&Object.prototype.propertyIsEnumerable.call(e,o[n])&&(r[o[n]]=e[o[n]])}return r},Yn=s,Gn=function(){return Math.random().toString(16).slice(2)},Jn=f,Kn=p,Qn=["auth.getJwt","auth.logout","auth.signInWithTicket","auth.signInAnonymously","auth.signIn","auth.fetchAccessTokenWithRefreshToken","auth.signUpWithEmailAndPassword","auth.activateEndUserMail","auth.sendPasswordResetEmail","auth.resetPasswordWithToken","auth.isUsernameRegistered"];function Xn(e,t,r){var o=e[t];e[t]=function(t){var n={},i={};r.forEach((function(r){var o=r.call(e,t),a=o.data,s=o.headers;Object.assign(n,a),Object.assign(i,s)}));var a=t.data;return a&&(Jn(a)?Object.keys(n).forEach((function(e){a.append(e,n[e])})):t.data=Un(Un({},a),n)),t.headers=Un(Un({},t.headers||{}),i),o.call(e,t)}}function Zn(){var e=Gn();return{data:{seqId:e},headers:{"X-SDK-Version":"@cloudbase/js-sdk/".concat(Wn()),"x-seqid":e}}}var ei,ti,ri=function(){function e(e){var t=this;this.throwWhenRequestFail=!1,this.config=e;var r={timeout:this.config.timeout,timeoutMsg:"[@cloudbase/js-sdk] 请求在".concat(this.config.timeout/1e3,"s内未完成,已中断"),restrictedMethods:["post","put"]};this.reqClass=new Sn.adapter.reqClass(r),this.throwWhenRequestFail=e.throw||!1,this.localCache=Rn(this.config.env),"GATEWAY"!==this.config.endPointMode&&(Xn(this.reqClass,"post",[Zn]),Xn(this.reqClass,"upload",[Zn]),Xn(this.reqClass,"download",[Zn])),W.on("lang_change",(function(e){var r;t.config.i18n=(null===(r=e.data)||void 0===r?void 0:r.i18n)||t.config.i18n}))}return e.prototype.getAccessToken=function(e){return void 0===e&&(e=null),Hn(this,void 0,void 0,(function(){var t,r,o;return Vn(this,(function(n){switch(n.label){case 0:if(null!=e)return[2,e];if(!(t=this.config._fromApp).oauthInstance)throw new Error("you can't request without auth");return r=t.oauthInstance,o=r.oauth2client,[4,this.getOauthAccessTokenV2(o)];case 1:return[2,n.sent().accessToken]}}))}))},e.prototype.getDefaultHeaders=function(){var e,t,r;return(e={})[null===(t=this.config.i18n)||void 0===t?void 0:t.LANG_HEADER_KEY]=null===(r=this.config.i18n)||void 0===r?void 0:r.lang,e["X-SDK-Version"]="@cloudbase/js-sdk/".concat(Wn()),e},e.prototype.post=function(e,t){return Hn(this,void 0,void 0,(function(){return Vn(this,(function(r){switch(r.label){case 0:return[4,this.reqClass.post(Un(Un({},e),{headers:Un(Un({},e.headers),this.getDefaultHeaders()),customReqOpts:t}))];case 1:return[2,r.sent()]}}))}))},e.prototype.upload=function(e){return Hn(this,void 0,void 0,(function(){return Vn(this,(function(t){switch(t.label){case 0:return[4,this.reqClass.upload(Un(Un({},e),{headers:Un(Un({},e.headers),this.getDefaultHeaders())}))];case 1:return[2,t.sent()]}}))}))},e.prototype.download=function(e){return Hn(this,void 0,void 0,(function(){return Vn(this,(function(t){switch(t.label){case 0:return[4,this.reqClass.download(Un(Un({},e),{headers:Un(Un({},e.headers),this.getDefaultHeaders())}))];case 1:return[2,t.sent()]}}))}))},e.prototype.getBaseEndPoint=function(e){return void 0===e&&(e="CLOUD_API"),zn(this.config.env,e)},e.prototype.getOauthAccessTokenV2=function(e){return Hn(this,void 0,void 0,(function(){var t,r;return Vn(this,(function(o){switch(o.label){case 0:return[4,e.getAccessToken()];case 1:return t=o.sent(),[4,e.getCredentials()];case 2:return r=o.sent(),[2,{accessToken:t,accessTokenExpire:new Date(r.expires_at).getTime()}]}}))}))},e.prototype.request=function(e,t,r,o){var n,i;return Hn(this,void 0,void 0,(function(){var a,s,l,c,u,d,f,p,h,b,y,m,v,_,g,w,S,P,O,T,E,C;return Vn(this,(function(R){switch(R.label){case 0:if(a="x-tcb-trace_".concat(this.config.env),s="application/x-www-form-urlencoded",l=Un({action:e,dataVersion:"2020-01-10",env:this.config.env},t),-1!==Qn.indexOf(e))return[3,2];if(!(c=this.config._fromApp).oauthInstance)throw new Error("you can't request without auth");return u=c.oauthInstance,d=u.oauth2client,f=l,[4,this.getOauthAccessTokenV2(d)];case 1:f.access_token=R.sent().accessToken,R.label=2;case 2:return"storage.uploadFile"===e?(p=new FormData,Object.keys(p).forEach((function(e){Object.prototype.hasOwnProperty.call(p,e)&&void 0!==p[e]&&p.append(e,l[e])})),s="multipart/form-data"):(s="application/json;charset=UTF-8",p={},Object.keys(l).forEach((function(e){void 0!==l[e]&&(p[e]=l[e])}))),h={headers:Un(Un({"content-type":s},this.getDefaultHeaders()),null==r?void 0:r.headers)},(null==r?void 0:r.onUploadProgress)&&(h.onUploadProgress=r.onUploadProgress),this.config.region&&(h.headers["X-TCB-Region"]=this.config.region),(b=this.localCache.getStore(a))&&(h.headers["X-TCB-Trace"]=b),y=void 0!==(null==r?void 0:r.parse)?r.parse:t.parse,m=void 0!==(null==r?void 0:r.inQuery)?r.inQuery:t.inQuery,v=void 0!==(null==r?void 0:r.search)?r.search:t.search,_=Un(Un({},(null==r?void 0:r.defaultQuery)||{}),{env:this.config.env}),y&&(_.parse=!0),m&&(_=Un(Un({},m),_)),g=this.config.endPointMode||"CLOUD_API",w=Bn(this.config.env,g),S=w.baseUrl,P=w.protocol,"GATEWAY"===g&&/^((database)\.)|(auth\.wsWebSign)/.test(e)&&(O=Bn(this.config.env,"CLOUD_API"),S="".concat(O.baseUrl.match(/\/\/([^/?#]*)/)[0],"/web")),T=r.pathname?Kn(P,"".concat(null===(n=zn(this.config.env,g))||void 0===n?void 0:n.replace(/^https?:/,""),"/").concat(r.pathname),_):Kn(P,S,_),v&&(T+=v),[4,this.post(Un({url:T,data:p},h),o)];case 3:if(E=R.sent(),(C=null===(i=E.header)||void 0===i?void 0:i["x-tcb-trace"])&&this.localCache.setStore(a,C),200!==Number(E.status)&&200!==Number(E.statusCode)||!E.data)throw new Error("network request error");return[2,E]}}))}))},e.prototype.fetch=function(e){var t,r,o,n,i,a,s,l;return Hn(this,void 0,void 0,(function(){var c,u,d,f,p,h,b=this;return Vn(this,(function(y){switch(y.label){case 0:c=e.token,u=e.headers,d=void 0===u?{}:u,f=$n(e,["token","headers"]),p=function(){return Hn(b,void 0,void 0,(function(){var e,t,r,o,n;return Vn(this,(function(i){switch(i.label){case 0:return t=(e=this.reqClass).fetch,o={},n={"X-SDK-Version":"@cloudbase/js-sdk/".concat(Wn())},r="Bearer ".concat,[4,this.getAccessToken(c)];case 1:return[2,t.apply(e,[Un.apply(void 0,[(o.headers=Un.apply(void 0,[Un.apply(void 0,[(n.Authorization=r.apply("Bearer ",[i.sent()]),n),this.getDefaultHeaders()]),d]),o),f])])]}}))}))},y.label=1;case 1:return y.trys.push([1,3,,6]),[4,p()];case 2:return[2,y.sent()];case 3:if("ACCESS_TOKEN_EXPIRED"!==(null==(h=y.sent())?void 0:h.code))return[3,5];if("function"!=typeof(null===(n=null===(o=null===(r=null===(t=this.config)||void 0===t?void 0:t._fromApp)||void 0===r?void 0:r.oauthInstance)||void 0===o?void 0:o.authApi)||void 0===n?void 0:n.refreshTokenForce))throw h;return[4,null===(l=null===(s=null===(a=null===(i=this.config)||void 0===i?void 0:i._fromApp)||void 0===a?void 0:a.oauthInstance)||void 0===s?void 0:s.authApi)||void 0===l?void 0:l.refreshTokenForce()];case 4:return y.sent(),[2,p()];case 5:throw h;case 6:return[2]}}))}))},e.prototype.send=function(e,t,r,o){return void 0===t&&(t={}),void 0===r&&(r={}),Hn(this,void 0,void 0,(function(){var n;return Vn(this,(function(i){switch(i.label){case 0:return[4,this.request(e,t,Un(Un({},r),{onUploadProgress:t.onUploadProgress}),o)];case 1:if((n=i.sent()).data.code&&this.throwWhenRequestFail)throw new Error(JSON.stringify({code:Yn.OPERATION_FAIL,msg:"[".concat(n.data.code,"] ").concat(n.data.message)}));return[2,n.data]}}))}))},e.prototype.gateWay=function(e,t){var r;return Hn(this,void 0,void 0,(function(){var o,n,i,a,s,l,c,u,d,f,p,h,b,y,m,v,_;return Vn(this,(function(g){switch(g.label){case 0:if(o=e.url,n=e.name,i=e.data,a=e.path,s=void 0===a?"":a,l=e.method,c=e.header,u=void 0===c?{}:c,!(n&&s||o))throw new Error(JSON.stringify({code:Yn.INVALID_PARAMS,msg:"[gateWay] invalid function name or path or url"}));try{d=i?JSON.stringify(i):""}catch(e){throw new Error(JSON.stringify({code:Yn.INVALID_PARAMS,msg:"[gateWay] invalid data"}))}return f=function(){var e=(new Date).getTime(),t=(null===Date||void 0===Date?void 0:Date.now)&&1e3*Date.now()||0;return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(r){var o=16*Math.random();return e>0?(o=(e+o)%16|0,e=Math.floor(e/16)):(o=(t+o)%16|0,t=Math.floor(t/16)),("x"===r?o:7&o|8).toString(16)}))}(),p=Bn(this.config.env,"GATEWAY"),h=p.baseUrl,b=p.protocol,y="".concat(b).concat(h).concat(o||"/".concat(s,"/").concat(n)),[4,this.fetch(Un(Un({method:l||"POST",headers:Un({"Content-Type":"application/json; charset=utf-8","X-Request-Id":f},u)},["GET","HEAD"].includes(null===(r=null==l?void 0:l.toUpperCase)||void 0===r?void 0:r.call(l))?{}:{body:d}),{url:y,customReqOpts:t}))];case 1:return m=g.sent(),v=[Un({requestId:f},m)],_={},[4,m.data];case 2:return[2,Un.apply(void 0,v.concat([(_.data=g.sent(),_)]))]}}))}))},e}(),oi={};!function(e){e.ZH="zh-CN",e.EN="en-US"}(ti||(ti={}));var ni=((ei={})[ti.EN]={"请检查调用方式,或前往云开发 AI+ 首页查看文档":"Please check the calling method or visit the AI+ homepage to view the documentation","AI+ 请求出错,错误码":"AI+ request error, error code","错误信息":"error message","未实现":"not implemented","小程序不支持 wasm 加载":"wasm loading is not supported in mini programs","小程序不支持动态 js 加载":"dynamic js loading is not supported in mini programs","请求超时":"request timeout","缺少 privatelink sdk 地址":"missing privatelink sdk address"},ei),ii=function(e,t){var r;return(null===(r=ni[t])||void 0===r?void 0:r[e])||e},ai=function(e,t){var r,o,n=function(e){return"lang_".concat(e.clientId||e.env)}(t),i=(e.adapter||{}).localStorage,a=t.lang||(null===(r=null==i?void 0:i.getItem)||void 0===r?void 0:r.call(i,n))||ti.ZH;return null===(o=null==i?void 0:i.setItem)||void 0===o||o.call(i,n,a),new Proxy({t:function(e){return ii(e,a)},LANG_HEADER_KEY:"Accept-Language",lang:a},{get:function(e,t){var r;return"lang"===t&&(null===(r=null==i?void 0:i.getItem)||void 0===r?void 0:r.call(i,n))||e[t]},set:function(e,t,r){var o;return"lang"===t&&r!==e[t]&&(e[t]=r,e.t=function(e){return ii(e,r)},null===(o=null==i?void 0:i.setItem)||void 0===o||o.call(i,n,r),W.fire("lang_change",{i18n:e})),e[t]=r,!0}})},si=function(){return(si=Object.assign||function(e){for(var t,r=1,o=arguments.length;r<o;r++)for(var n in t=arguments[r])Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e}).apply(this,arguments)},li=function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},ci=function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},ui=function(e,t,r,o){return new(r||(r=Promise))((function(n,i){function a(e){try{l(o.next(e))}catch(e){i(e)}}function s(e){try{l(o.throw(e))}catch(e){i(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,s)}l((o=o.apply(e,t||[])).next())}))},di=function(e,t){var r,o,n,i,a={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(s){return function(l){return function(s){if(r)throw new TypeError("Generator is already executing.");for(;i&&(i=0,s[0]&&(a=0)),a;)try{if(r=1,o&&(n=2&s[0]?o.return:s[0]?o.throw||((n=o.return)&&n.call(o),0):o.next)&&!(n=n.call(o,s[1])).done)return n;switch(o=0,n&&(s=[2&s[0],n.value]),s[0]){case 0:case 1:n=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,o=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!(n=a.trys,(n=n.length>0&&n[n.length-1])||6!==s[0]&&2!==s[0])){a=0;continue}if(3===s[0]&&(!n||s[1]>n[0]&&s[1]<n[3])){a.label=s[1];break}if(6===s[0]&&a.label<n[1]){a.label=n[1],n=s;break}if(n&&a.label<n[2]){a.label=n[2],a.ops.push(s);break}n[2]&&a.ops.pop(),a.trys.pop();continue}s=t.call(e,a)}catch(e){s=[6,e],o=0}finally{r=n=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,l])}}},fi=function(e,t){for(var r,o=0,n=(r=e,"[object Array]"===Object.prototype.toString.call(r)?e:[e]);o<n.length;o++){var i=n[o],a=i.isMatch,s=i.genAdapter,l=i.runtime;if(a())return{adapter:O({isMatch:a},s(t)),runtime:l}}},pi=function(){return{adapter:O({},{type:"default",root:window,reqClass:S,wsClass:WebSocket,localStorage:localStorage}),runtime:P.WEB}},hi=s,bi=h,yi=function(e){var t=e.mode,r=void 0===t?"async":t,o=e.customInfo,n=void 0===o?{}:o,i=e.title,s=e.messages,l=void 0===s?[]:s;return function(e,t,o){if(a){var s=n.className||e.constructor.name,c=n.methodName||t,u=o.value,d=function(e){var t="",r=e.stack.split("\n"),o=r.findIndex((function(e){return D.test(e)}));if(-1!==o){var n=F.exec(r[o+1]||"");t=n?n[0]:""}return t}(new Error);o.value="sync"===r?function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var r=B({err:new Error,className:s,methodName:c,sourceLink:d});try{return u.apply(this,e)}catch(e){var o=e,n=e.message,a=e.error,f=e.error_description,p={title:i||"".concat(s,".").concat(c," failed"),content:[{type:"error",body:e}]};if(n&&/^\{.*\}$/.test(n)){var h=JSON.parse(n);p.subtitle=n,h.code&&(r?(r.code=h.code,r.msg=h.msg):(e.code=h.code,e.message=h.msg),o=r||e,p.content=l.map((function(e){return{type:"info",body:e}})))}throw a&&f&&(p.subtitle=f,r?(r.code=a,r.msg=f):(e.code=a,e.message=f),o=r||e,p.content=l.map((function(e){return{type:"info",body:e}}))),b(p),o}}:function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return L(this,void 0,void 0,(function(){var t,r,o,n,a,f,p,h;return M(this,(function(y){switch(y.label){case 0:t=B({err:new Error,className:s,methodName:c,sourceLink:d}),y.label=1;case 1:return y.trys.push([1,3,,4]),[4,u.apply(this,e)];case 2:return[2,y.sent()];case 3:throw r=y.sent(),o=r,n=r.message,a=r.error,f=r.error_description,p={title:i||"".concat(s,".").concat(c," failed"),content:[{type:"error",body:r}]},n&&/^\{.*\}$/.test(n)&&(h=JSON.parse(n),p.subtitle=h,h.code&&(t?(t.code=h.code,t.message=h.msg):(r.code=h.code,r.message=h.msg),o=t||r,p.content=l.map((function(e){return{type:"info",body:e}})))),a&&f&&(p.subtitle=f,t?(t.code=a,t.msg=f):(r.code=a,r.message=f),o=t||r,p.content=l.map((function(e){return{type:"info",body:e}}))),b(p),o;case 4:return[2]}}))}))}}}},mi={timeout:15e3,persistence:"local"},vi={},_i=new(function(){function e(e){this.cloudbaseConfig=e||this.cloudbaseConfig,this.authInstance=null,this.oauthInstance=null,this.version=Wn()}return Object.defineProperty(e.prototype,"config",{get:function(){return this.cloudbaseConfig},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"platform",{get:function(){return Sn},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"cache",{get:function(){return e=this.cloudbaseConfig.env,Tn[e];var e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"localCache",{get:function(){return Rn(this.cloudbaseConfig.env)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"request",{get:function(){return e=this.cloudbaseConfig.env,oi[e];var e},enumerable:!1,configurable:!0}),e.prototype.init=function(t){var r;if(!t.env)throw new Error(JSON.stringify({code:hi.INVALID_PARAMS,msg:"env must not be specified"}));Sn.adapter||this.useDefaultAdapter();var o={timeout:t.timeout||5e3,timeoutMsg:"[".concat(xn,"][REQUEST TIMEOUT] request had been abort since didn't finished within").concat(t.timeout/1e3,"s")};this.requestClient=new Sn.adapter.reqClass(o),this.cloudbaseConfig=si(si(si({},mi),t),{i18n:ai(Sn,t)}),delete this.cloudbaseConfig.lang,this.cloudbaseConfig.timeout=this.formatTimeout(this.cloudbaseConfig.timeout);var n=this.cloudbaseConfig,i=n.env,a=n.persistence,s=n.debug,l=n.timeout,c=n.oauthClient,u=n.i18n;Cn({env:i,persistence:a,debug:s,platformInfo:this.platform}),function(e,t,r){Fn({env:e,region:t,baseUrl:"//".concat(e,".").concat(t||"ap-shanghai",".tcb-api.tencentcloudapi.com/web"),protocol:r,endPointKey:"CLOUD_API"})}(i,t.region||""),function(e,t,r){void 0===r&&(r="ap-shanghai"),r=r||"ap-shanghai";var o="//".concat(e,".api.tcloudbasegateway.com/v1");kn.includes(r)||(o="//".concat(e,".api.intl.tcloudbasegateway.com/v1")),Fn({endPointKey:"GATEWAY",env:e,baseUrl:o,protocol:t})}(i,"https:",t.region||"");var d=new e(this.cloudbaseConfig);return function(e){oi[e.env]=new ri(Un(Un({},e),{throw:!0}))}({env:i,region:t.region||"",timeout:l,oauthClient:c,_fromApp:d,i18n:u,endPointMode:t.endPointMode}),d.requestClient=this.requestClient,null===(r=null==this?void 0:this.fire)||void 0===r||r.call(this,"cloudbase_init",d),this.try2InitAuth(d),d},e.prototype.updateConfig=function(e){var t=e.persistence,r=e.debug;this.cloudbaseConfig.persistence=t,this.cloudbaseConfig.debug=r,Cn({env:this.cloudbaseConfig.env,persistence:t,debug:r,platformInfo:this.platform})},e.prototype.updateLang=function(e){var t;e&&e!==(null===(t=this.cloudbaseConfig.i18n)||void 0===t?void 0:t.lang)&&(this.cloudbaseConfig.i18n.lang=e)},e.prototype.registerExtension=function(e){vi[e.name]=e},e.prototype.invokeExtension=function(e,t){return ui(this,void 0,void 0,(function(){var r;return di(this,(function(o){switch(o.label){case 0:if(!(r=vi[e]))throw new Error(JSON.stringify({code:hi.INVALID_PARAMS,msg:"extension:".concat(e," must be registered before invoke")}));return[4,r.invoke(t,this)];case 1:return[2,o.sent()]}}))}))},e.prototype.useAdapters=function(e,t){var r=fi(e,t)||{},o=r.adapter,n=r.runtime;o&&(Sn.adapter=o),n&&(Sn.runtime=n)},e.prototype.registerHook=function(t){!function(e,t){var r=t.entity,o=t.target;if(Object.prototype.hasOwnProperty.call(e,o))throw new Error(JSON.stringify({code:V.INVALID_OPERATION,msg:"target:".concat(o," is not exist")}));var n=e.prototype[o];if("function"!=typeof n)throw new Error(JSON.stringify({code:V.INVALID_OPERATION,msg:"target:".concat(o," is not a function which is the only type supports hook")}));e.prototype[o]=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return r.call.apply(r,H([this],e,!1)),n.call.apply(n,H([this],e,!1))}}(e,t)},e.prototype.registerComponent=function(t){Y(e,t)},e.prototype.registerVersion=function(e){!function(e){qn=e}(e),this.version=e},e.prototype.registerSdkName=function(e){!function(e){xn=e,jn(e)}(e)},e.prototype.registerEndPoint=function(e,t){Fn({baseUrl:e,protocol:t,env:this.config.env,endPointKey:"CLOUD_API"})},e.prototype.registerEndPointWithKey=function(e){Fn({env:this.config.env,endPointKey:e.key,baseUrl:e.url,protocol:e.protocol})},e.prototype.getEndPointWithKey=function(e){var t=Bn(this.config.env,e);return{BASE_URL:t.baseUrl,PROTOCOL:t.protocol}},e.prototype.parseCaptcha=function(e){return y(e)},e.prototype.useDefaultAdapter=function(){var e=pi.bind(this)(),t=e.adapter,r=e.runtime;Sn.adapter=t,Sn.runtime=r},e.prototype.formatTimeout=function(e){switch(!0){case e>6e5:return bi(hi.INVALID_PARAMS,"timeout is greater than maximum value[10min]"),6e5;case e<100:return bi(hi.INVALID_PARAMS,"timeout is less than maximum value[100ms]"),100;default:return e}},e.prototype.try2InitAuth=function(e){try{e.auth()}catch(e){console.log("try2InitAuth error:",e)}},li([yi({mode:"sync",title:"Cloudbase 初始化失败",messages:["请确认以下各项:"," 1 - 调用 cloudbase.init() 的语法或参数是否正确"," 2 - 如果是非浏览器环境,是否配置了安全应用来源(https://docs.cloudbase.net/api-reference/webv3/adapter#%E7%AC%AC-2-%E6%AD%A5%E9%85%8D%E7%BD%AE%E5%AE%89%E5%85%A8%E5%BA%94%E7%94%A8%E6%9D%A5%E6%BA%90)","如果问题依然存在,建议到官方问答社区提问或寻找帮助:".concat("https://support.qq.com/products/148793")]}),ci("design:type",Function),ci("design:paramtypes",[Object]),ci("design:returntype",e)],e.prototype,"init",null),li([yi({title:"调用扩展能力失败",messages:["请确认以下各项:"," 1 - 调用 invokeExtension() 的语法或参数是否正确"," 2 - 被调用的扩展能力是否已经安装并通过 registerExtension() 注册","如果问题依然存在,建议到官方问答社区提问或寻找帮助:".concat("https://support.qq.com/products/148793")]}),ci("design:type",Function),ci("design:paramtypes",[String,Object]),ci("design:returntype",Promise)],e.prototype,"invokeExtension",null),e}());_i.useAdapters((bn.prototype.upload=function(e){var t=this,r=this;return new Promise((function(o){var n=e.url,i=e.file,a=e.data,s=e.headers,l=wx.getFileSystemManager(),c=wx.request({url:n,method:e.method,header:gn({"content-type":" "},s),data:l.readFileSync(i),timeout:t._timeout,success:function(e){var t={statusCode:e.statusCode,data:e.data||{}};200===e.statusCode&&(null==a?void 0:a.success_action_status)&&(t.statusCode=parseInt(a.success_action_status,10)),o(t)},fail:function(e){o(e)},complete:function(e){if((null==e?void 0:e.errMsg)&&r._timeout&&-1!==r._restrictedMethods.indexOf("upload")&&"request:fail timeout"===e.errMsg){console.warn(r._timeoutMsg);try{c.abort()}catch(e){}}}})}))},_n.genAdapter=function(e){return{root:{globalThis:{}},reqClass:bn,wsClass:mn,captchaOptions:{openURIWithCallback:function(t){var r=e.EventBus,o={},n=t;console.log("openURIWithCallback",t);var i=t.match(/^(data:.*?)(\?[^#\s]*)?$/);if(i){n=i[1],console.log("openURIWithCallback url",n);var a=i[2];a&&(o=vn(a))}console.log("openURIWithCallback queryObj",o);var s=o.token,l=wn(o,["token"]);return/^data:/.test(n)&&!s?Promise.reject({error:"invalid_argument",error_description:"invalie captcha data: ".concat(t)}):s?new Promise((function(e){console.log("wait for captcha..."),r.$emit("CAPTCHA_DATA_CHANGE",gn(gn({},l),{token:s,url:n})),r.$once("RESOLVE_CAPTCHA_DATA",(function(t){e(t)}))})):Promise.reject({error:"unimplemented",error_description:"need to impl captcha data"})}},localStorage:yn,primaryStorage:i.local,getAppSign:function(){var e=wx.getAccountInfoSync();return"undefined"!=typeof App||"undefined"!=typeof getApp||wx.onAppHide||wx.offAppHide||wx.onAppShow||wx.offAppShow?e&&e.miniProgram?e.miniProgram.appId:"":e&&e.plugin?e.plugin.appId:""}}},_n));const gi=_i;return t})());
|
|
2
|
+
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("tcboauth",[],t):"object"==typeof exports?exports.tcboauth=t():e.tcboauth=t()}("undefined"!=typeof window?window:this,()=>(()=>{"use strict";var e={d:(t,r)=>{for(var o in r)e.o(r,o)&&!e.o(t,o)&&Object.defineProperty(t,o,{enumerable:!0,get:r[o]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r:e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},t={};e.r(t),e.d(t,{LANGS:()=>ti,cloudbase:()=>_i,default:()=>gi,getBaseEndPoint:()=>zn});var r="@cloudbase/js-sdk";function o(){return r}var n="https:";var i,a=("undefined"==typeof process||process.env,!1),s={INVALID_PARAMS:"INVALID_PARAMS",INVALID_SYNTAX:"INVALID_SYNTAX",INVALID_OPERATION:"INVALID_OPERATION",OPERATION_FAIL:"OPERATION_FAIL",NETWORK_ERROR:"NETWORK_ERROR",UNKOWN_ERROR:"UNKOWN_ERROR"};!function(e){e.local="local",e.none="none",e.session="session"}(i||(i={}));var l=function(){},c=function(){};function u(e,t,r){void 0===r&&(r={});var o=/\?/.test(t),n="";for(var i in r)""===n?!o&&(t+="?"):n+="&",n+=i+"="+encodeURIComponent(r[i]);return/^http(s)?\:\/\//.test(t+=n)?t:""+e+t}var d=function(e,t){var r={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(r[o]=e[o]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var n=0;for(o=Object.getOwnPropertySymbols(e);n<o.length;n++)t.indexOf(o[n])<0&&Object.prototype.propertyIsEnumerable.call(e,o[n])&&(r[o[n]]=e[o[n]])}return r};function f(e){return"[object FormData]"===Object.prototype.toString.call(e)}function p(e,t,r){void 0===r&&(r={});var o=/\?/.test(t),n="";return Object.keys(r).forEach((function(e){""===n?!o&&(t+="?"):n+="&",n+="".concat(e,"=").concat(encodeURIComponent(r[e]))})),/^http(s)?:\/\//.test(t+=n)?t:"".concat(e).concat(t)}function h(e,t){console.warn("[".concat(o(),"][").concat(e,"]:").concat(t))}function b(e){var t,r=e.title,o=e.subtitle,n=void 0===o?"":o,i=e.content,a=void 0===i?[]:i,s=e.printTrace,l=void 0!==s&&s,c=e.collapsed;void 0!==c&&c?(console.groupCollapsed||console.error)(r,n):(console.group||console.error)(r,n);for(var u=0,d=a;u<d.length;u++){var f=d[u],p=f.type,h=f.body;switch(p){case"info":console.log(h);break;case"warn":console.warn(h);break;case"error":console.error(h)}}l&&(console.trace||console.log)("stack trace:"),null===(t=console.groupEnd)||void 0===t||t.call(console)}function y(e){var t={},r=e.match(/^(data:.*?)(\?[^#\s]*)?$/);if(r){e=r[1];var o=r[2];o&&(t=function(e){e=e.replace(/^\?/,"");var t={};return e.split("&").forEach((function(e){var r=e.split("="),o=r[0],n=r[1];o=decodeURIComponent(o),n=decodeURIComponent(n),o&&(t[o]?Array.isArray(t[o])?t[o].push(n):t[o]=[t[o],n]:t[o]=n)})),t}(o))}var n=t.token,i=d(t,["token"]);return/^data:/.test(e)&&!n?{error:"invalid_argument",error_description:"invalid captcha data: ".concat(e)}:n?{state:i.state,token:n,captchaData:e}:{error:"unimplemented",error_description:"need to impl captcha data"}}var m,v=(m=function(e,t){return(m=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function r(){this.constructor=e}m(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),_=function(){return(_=Object.assign||function(e){for(var t,r=1,o=arguments.length;r<o;r++)for(var n in t=arguments[r])Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e}).apply(this,arguments)},g=function(e,t,r,o){return new(r||(r=Promise))((function(n,i){function a(e){try{l(o.next(e))}catch(e){i(e)}}function s(e){try{l(o.throw(e))}catch(e){i(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,s)}l((o=o.apply(e,t||[])).next())}))},w=function(e,t){var r,o,n,i,a={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(s){return function(l){return function(s){if(r)throw new TypeError("Generator is already executing.");for(;i&&(i=0,s[0]&&(a=0)),a;)try{if(r=1,o&&(n=2&s[0]?o.return:s[0]?o.throw||((n=o.return)&&n.call(o),0):o.next)&&!(n=n.call(o,s[1])).done)return n;switch(o=0,n&&(s=[2&s[0],n.value]),s[0]){case 0:case 1:n=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,o=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!(n=a.trys,(n=n.length>0&&n[n.length-1])||6!==s[0]&&2!==s[0])){a=0;continue}if(3===s[0]&&(!n||s[1]>n[0]&&s[1]<n[3])){a.label=s[1];break}if(6===s[0]&&a.label<n[1]){a.label=n[1],n=s;break}if(n&&a.label<n[2]){a.label=n[2],a.ops.push(s);break}n[2]&&a.ops.pop(),a.trys.pop();continue}s=t.call(e,a)}catch(e){s=[6,e],o=0}finally{r=n=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,l])}}},S=function(e){function t(t){var r=e.call(this)||this,o=t.timeout,n=t.timeoutMsg,i=t.restrictedMethods;return r.timeout=o||0,r.timeoutMsg=n||"请求超时",r.restrictedMethods=i||["get","post","upload","download"],r}return v(t,e),t.prototype.get=function(e){return this.request(_(_({},e),{method:"get"}),this.restrictedMethods.includes("get"))},t.prototype.post=function(e){return this.request(_(_({},e),{method:"post"}),this.restrictedMethods.includes("post"))},t.prototype.put=function(e){return this.request(_(_({},e),{method:"put"}))},t.prototype.upload=function(e){var t=e.data,r=e.file,o=e.name,n=e.method,i=e.headers,a=void 0===i?{}:i,s={post:"post",put:"put"}[null==n?void 0:n.toLowerCase()]||"put",l=new FormData;return"post"===s?(Object.keys(t).forEach((function(e){l.append(e,t[e])})),l.append("key",o),l.append("file",r),this.request(_(_({},e),{data:l,method:s}),this.restrictedMethods.includes("upload"))):this.request(_(_({},e),{method:"put",headers:a,body:r}),this.restrictedMethods.includes("upload"))},t.prototype.download=function(e){return g(this,void 0,void 0,(function(){var t,r,o,n;return w(this,(function(i){switch(i.label){case 0:return i.trys.push([0,2,,3]),[4,this.get(_(_({},e),{headers:{},responseType:"blob"}))];case 1:return t=i.sent().data,r=window.URL.createObjectURL(new Blob([t])),o=decodeURIComponent(new URL(e.url).pathname.split("/").pop()||""),(n=document.createElement("a")).href=r,n.setAttribute("download",o),n.style.display="none",document.body.appendChild(n),n.click(),window.URL.revokeObjectURL(r),document.body.removeChild(n),[3,3];case 2:return i.sent(),[3,3];case 3:return[2,new Promise((function(t){t({statusCode:200,tempFilePath:e.url})}))]}}))}))},t.prototype.fetch=function(e){var t;return g(this,void 0,void 0,(function(){var r,o,n,i,a,s,l,c,u,d,f,p,h,b=this;return w(this,(function(y){switch(y.label){case 0:return r=new AbortController,o=e.url,n=e.enableAbort,i=void 0!==n&&n,a=e.stream,s=void 0!==a&&a,l=e.signal,c=e.timeout,u=e.shouldThrowOnError,d=void 0===u||u,f=null!=c?c:this.timeout,l&&(l.aborted&&r.abort(),l.addEventListener("abort",(function(){return r.abort()}))),p=null,i&&f&&(p=setTimeout((function(){console.warn(b.timeoutMsg),r.abort(new Error(b.timeoutMsg))}),f)),[4,fetch(o,_(_({},e),{signal:r.signal})).then((function(e){return g(b,void 0,void 0,(function(){var t,r,o;return w(this,(function(n){switch(n.label){case 0:return clearTimeout(p),d?e.ok?(t=e,[3,3]):[3,1]:[3,4];case 1:return o=(r=Promise).reject,[4,e.json()];case 2:t=o.apply(r,[n.sent()]),n.label=3;case 3:return[2,t];case 4:return[2,e]}}))}))})).catch((function(e){if(clearTimeout(p),d)return Promise.reject(e)}))];case 1:return h=y.sent(),[2,{data:s?h.body:(null===(t=h.headers.get("content-type"))||void 0===t?void 0:t.includes("application/json"))?h.json():h.text(),statusCode:h.status,header:h.headers}]}}))}))},t.prototype.request=function(e,t){var r=this;void 0===t&&(t=!1);var o=String(e.method).toLowerCase()||"get";return new Promise((function(i){var a,s,l=e.url,c=e.headers,u=void 0===c?{}:c,d=e.data,h=e.responseType,b=e.withCredentials,y=e.body,m=e.onUploadProgress,v=p(n,l,"get"===o?d:{}),_=new XMLHttpRequest;_.open(o,v),h&&(_.responseType=h),Object.keys(u).forEach((function(e){_.setRequestHeader(e,u[e])})),m&&_.upload.addEventListener("progress",m),_.onreadystatechange=function(){var e={};if(4===_.readyState){var t=_.getAllResponseHeaders().trim().split(/[\r\n]+/),r={};t.forEach((function(e){var t=e.split(": "),o=t.shift().toLowerCase(),n=t.join(": ");r[o]=n})),e.header=r,e.statusCode=_.status;try{e.data="blob"===h?_.response:JSON.parse(_.responseText)}catch(t){e.data="blob"===h?_.response:_.responseText}clearTimeout(a),i(e)}},t&&r.timeout&&(a=setTimeout((function(){console.warn(r.timeoutMsg),_.abort()}),r.timeout)),s=f(d)?d:"application/x-www-form-urlencoded"===u["content-type"]?function(e){void 0===e&&(e={});var t=[];return Object.keys(e).forEach((function(r){t.push("".concat(r,"=").concat(encodeURIComponent(e[r])))})),t.join("&")}(d):y||(d?JSON.stringify(d):void 0),b&&(_.withCredentials=!0),_.send(s)}))},t}(l);var P,O=function(){return(O=Object.assign||function(e){for(var t,r=1,o=arguments.length;r<o;r++)for(var n in t=arguments[r])Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e}).apply(this,arguments)};!function(e){e.WEB="web",e.WX_MP="wx_mp"}(P||(P={}));var T=function(){var e=function(t,r){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(t,r)};return function(t,r){if("function"!=typeof r&&null!==r)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");function o(){this.constructor=t}e(t,r),t.prototype=null===r?Object.create(r):(o.prototype=r.prototype,new o)}}(),E=function(e,t,r,o){return new(r||(r=Promise))((function(n,i){function a(e){try{l(o.next(e))}catch(e){i(e)}}function s(e){try{l(o.throw(e))}catch(e){i(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,s)}l((o=o.apply(e,t||[])).next())}))},C=function(e,t){var r,o,n,i,a={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(s){return function(l){return function(s){if(r)throw new TypeError("Generator is already executing.");for(;i&&(i=0,s[0]&&(a=0)),a;)try{if(r=1,o&&(n=2&s[0]?o.return:s[0]?o.throw||((n=o.return)&&n.call(o),0):o.next)&&!(n=n.call(o,s[1])).done)return n;switch(o=0,n&&(s=[2&s[0],n.value]),s[0]){case 0:case 1:n=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,o=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!(n=a.trys,(n=n.length>0&&n[n.length-1])||6!==s[0]&&2!==s[0])){a=0;continue}if(3===s[0]&&(!n||s[1]>n[0]&&s[1]<n[3])){a.label=s[1];break}if(6===s[0]&&a.label<n[1]){a.label=n[1],n=s;break}if(n&&a.label<n[2]){a.label=n[2],a.ops.push(s);break}n[2]&&a.ops.pop(),a.trys.pop();continue}s=t.call(e,a)}catch(e){s=[6,e],o=0}finally{r=n=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,l])}}},R=function(e){function t(t){var r=e.call(this)||this;return r.root=t,t.tcbCacheObject||(t.tcbCacheObject={}),r}return T(t,e),t.prototype.setItem=function(e,t){this.root.tcbCacheObject[e]=t},t.prototype.getItem=function(e){return this.root.tcbCacheObject[e]},t.prototype.removeItem=function(e){delete this.root.tcbCacheObject[e]},t.prototype.clear=function(){delete this.root.tcbCacheObject},t}(c);var A=function(){function e(e){this.keys={};var t=e.persistence,r=e.platformInfo,o=void 0===r?{}:r,n=e.keys,i=void 0===n?{}:n;this.platformInfo=o,this.storage||(this.persistenceTag=this.platformInfo.adapter.primaryStorage||t,this.storage=function(e,t){switch(e){case"local":return t.localStorage?t.localStorage:(h(s.INVALID_PARAMS,"localStorage is not supported on current platform"),new R(t.root));case"none":return new R(t.root);default:return t.localStorage?t.localStorage:(h(s.INVALID_PARAMS,"localStorage is not supported on current platform"),new R(t.root))}}(this.persistenceTag,this.platformInfo.adapter),this.keys=i)}return Object.defineProperty(e.prototype,"mode",{get:function(){return this.storage.mode||"sync"},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"persistence",{get:function(){return this.persistenceTag},enumerable:!1,configurable:!0}),e.prototype.setStore=function(e,t,r){if("async"!==this.mode){if(this.storage)try{var n={version:r||"localCachev1",content:t};this.storage.setItem(e,JSON.stringify(n))}catch(e){throw new Error(JSON.stringify({code:s.OPERATION_FAIL,msg:"[".concat(o(),"][").concat(s.OPERATION_FAIL,"]setStore failed"),info:e}))}}else h(s.INVALID_OPERATION,"current platform's storage is asynchronous, please use setStoreAsync insteed")},e.prototype.setStoreAsync=function(e,t,r){return E(this,void 0,void 0,(function(){var o;return C(this,(function(n){switch(n.label){case 0:if(!this.storage)return[2];n.label=1;case 1:return n.trys.push([1,3,,4]),o={version:r||"localCachev1",content:t},[4,this.storage.setItem(e,JSON.stringify(o))];case 2:return n.sent(),[3,4];case 3:return n.sent(),[2];case 4:return[2]}}))}))},e.prototype.getStore=function(e,t){var r;if("async"!==this.mode){try{if("undefined"!=typeof process&&(null===(r=process.env)||void 0===r?void 0:r.tcb_token))return process.env.tcb_token;if(!this.storage)return""}catch(e){return""}t=t||"localCachev1";var o=this.storage.getItem(e);return o&&o.indexOf(t)>=0?JSON.parse(o).content:""}h(s.INVALID_OPERATION,"current platform's storage is asynchronous, please use getStoreAsync insteed")},e.prototype.getStoreAsync=function(e,t){var r;return E(this,void 0,void 0,(function(){var o;return C(this,(function(n){switch(n.label){case 0:try{if("undefined"!=typeof process&&(null===(r=process.env)||void 0===r?void 0:r.tcb_token))return[2,process.env.tcb_token];if(!this.storage)return[2,""]}catch(e){return[2,""]}return t=t||"localCachev1",[4,this.storage.getItem(e)];case 1:return(o=n.sent())&&o.indexOf(t)>=0?[2,JSON.parse(o).content]:[2,""]}}))}))},e.prototype.removeStore=function(e){"async"!==this.mode?this.storage.removeItem(e):h(s.INVALID_OPERATION,"current platform's storage is asynchronous, please use removeStoreAsync insteed")},e.prototype.removeStoreAsync=function(e){return E(this,void 0,void 0,(function(){return C(this,(function(t){switch(t.label){case 0:return[4,this.storage.removeItem(e)];case 1:return t.sent(),[2]}}))}))},e}(),k=function(){var e=function(t,r){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(t,r)};return function(t,r){if("function"!=typeof r&&null!==r)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");function o(){this.constructor=t}e(t,r),t.prototype=null===r?Object.create(r):(o.prototype=r.prototype,new o)}}(),j=function(e,t,r){if(r||2===arguments.length)for(var o,n=0,i=t.length;n<i;n++)!o&&n in t||(o||(o=Array.prototype.slice.call(t,0,n)),o[n]=t[n]);return e.concat(o||Array.prototype.slice.call(t))};var I=function(e,t){this.data=t||null,this.name=e},q=function(e){function t(t,r){var o=e.call(this,"error",{error:t,data:r})||this;return o.error=t,o}return k(t,e),t}(I),x=function(){function e(){this.listeners={}}return e.prototype.on=function(e,t){return function(e,t,r){r[e]=r[e]||[],r[e].push(t)}(e,t,this.listeners),this},e.prototype.off=function(e,t){return function(e,t,r){if(null==r?void 0:r[e]){var o=r[e].indexOf(t);-1!==o&&r[e].splice(o,1)}}(e,t,this.listeners),this},e.prototype.fire=function(e,t){if(e instanceof q)return console.error(e.error),this;var r="string"==typeof e?new I(e,t||{}):e,o=r.name;if(this.listens(o)){r.target=this;for(var n=0,i=this.listeners[o]?j([],this.listeners[o],!0):[];n<i.length;n++){i[n].call(this,r)}}return this},e.prototype.listens=function(e){return this.listeners[e]&&this.listeners[e].length>0},e}();new x;var W=new x,L=function(e,t,r,o){return new(r||(r=Promise))((function(n,i){function a(e){try{l(o.next(e))}catch(e){i(e)}}function s(e){try{l(o.throw(e))}catch(e){i(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,s)}l((o=o.apply(e,t||[])).next())}))},M=function(e,t){var r,o,n,i,a={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(s){return function(l){return function(s){if(r)throw new TypeError("Generator is already executing.");for(;i&&(i=0,s[0]&&(a=0)),a;)try{if(r=1,o&&(n=2&s[0]?o.return:s[0]?o.throw||((n=o.return)&&n.call(o),0):o.next)&&!(n=n.call(o,s[1])).done)return n;switch(o=0,n&&(s=[2&s[0],n.value]),s[0]){case 0:case 1:n=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,o=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!(n=a.trys,(n=n.length>0&&n[n.length-1])||6!==s[0]&&2!==s[0])){a=0;continue}if(3===s[0]&&(!n||s[1]>n[0]&&s[1]<n[3])){a.label=s[1];break}if(6===s[0]&&a.label<n[1]){a.label=n[1],n=s;break}if(n&&a.label<n[2]){a.label=n[2],a.ops.push(s);break}n[2]&&a.ops.pop(),a.trys.pop();continue}s=t.call(e,a)}catch(e){s=[6,e],o=0}finally{r=n=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,l])}}},N=!1;"undefined"!=typeof navigator&&navigator.userAgent&&(N=-1!==navigator.userAgent.indexOf("Firefox"));var D=N?/(\.js\/)?__decorate(\$\d+)?<@.*\d$/:/(\/\w+\.js\.)?__decorate(\$\d+)?\s*\(.*\)$/,F=/https?:\/\/.+:\d*\/.*\.js:\d+:\d+/;function B(e){var t=e.err,r=e.className,o=e.methodName,n=e.sourceLink;if(!n)return null;var i,a=t.stack.split("\n"),s=N?/^catchErrorsDecorator\/<\/descriptor.value@.*\d$/:new RegExp("".concat(r,"\\.descriptor.value\\s*\\[as\\s").concat(o,"\\]\\s*\\(.*\\)$")),l=N?/^catchErrorsDecorator\/<\/descriptor.value/:new RegExp("".concat(r,"\\.descriptor.value\\s*\\[as\\s").concat(o,"\\]")),c=a.findIndex((function(e){return s.test(e)}));if(-1!==c){var u=a.filter((function(e,t){return t>c}));u.unshift(a[c].replace(l,"".concat(r,".").concat(o)).replace(F,n)),(i=new Error).stack="".concat(N?"@debugger":"Error","\n").concat(u.join("\n"))}return i}!function(){function e(){var e=this;this.listeners=[],this.signal={aborted:!1,addEventListener:function(t,r){"abort"===t&&e.listeners.push(r)}}}e.prototype.abort=function(){this.signal.aborted||(this.signal.aborted=!0,this.listeners.forEach((function(e){return e()})))}}();function z(e){this.message=e}z.prototype=new Error,z.prototype.name="InvalidCharacterError";"undefined"!=typeof window&&window.atob&&window.atob.bind(window);function U(e){this.message=e}U.prototype=new Error,U.prototype.name="InvalidTokenError";var H=function(e,t,r){if(r||2===arguments.length)for(var o,n=0,i=t.length;n<i;n++)!o&&n in t||(o||(o=Array.prototype.slice.call(t,0,n)),o[n]=t[n]);return e.concat(o||Array.prototype.slice.call(t))},V=s,$={};function Y(e,t){var r=t.name,o=t.namespace,n=t.entity,i=t.injectEvents,a=t.IIFE,s=void 0!==a&&a;if($[r]||o&&e[o])throw new Error(JSON.stringify({code:V.INVALID_OPERATION,msg:"Duplicate component ".concat(r)}));if(s){if(!n||"function"!=typeof n)throw new Error(JSON.stringify({code:V.INVALID_PARAMS,msg:"IIFE component's entity must be a function"}));n.call(e)}if($[r]=t,o?e.prototype[o]=n:function e(t,r){if(!(r instanceof Object))return r;switch(r.constructor){case Date:return new Date(r.getTime());case Object:void 0===t&&(t={});break;case Array:t=[];break;default:return r}for(var o=Object.keys(r),n=0,i=o;n<i.length;n++){var a=i[n];Object.prototype.hasOwnProperty.call(r,a)&&(t[a]=e(t[a],r[a]))}return t}(e.prototype,n),i){var l=i.bus,c=i.events;if(!l||!c||0===c.length)return;var u=e.prototype.fire||function(){};e.prototype.events||(e.prototype.events={}),(e.prototype.events||{})[r]?e.prototype.events[r].events=H(H([],e.prototype.events[r].events,!0),c,!0):e.prototype.events[r]={bus:l,events:c},e.prototype.fire=function(e,t){u(e,t);for(var r=0,o=Object.keys(this.events);r<o.length;r++){var n=o[r],i=this.events[n],a=i.bus;if(i.events.includes(e)){a.fire(e,t);break}}}}}function J(){}function G(e){return"object"==typeof e&&null!==e||"function"==typeof e}const K=J;function Q(e,t){try{Object.defineProperty(e,"name",{value:t,configurable:!0})}catch(e){}}const X=Promise,Z=Promise.resolve.bind(X),ee=Promise.prototype.then,te=Promise.reject.bind(X),re=Z;function oe(e){return new X(e)}function ne(e){return oe(t=>t(e))}function ie(e){return te(e)}function ae(e,t,r){return ee.call(e,t,r)}function se(e,t,r){ae(ae(e,t,r),void 0,K)}function le(e,t){se(e,t)}function ce(e,t){se(e,void 0,t)}function ue(e,t,r){return ae(e,t,r)}function de(e){ae(e,void 0,K)}let fe=e=>{if("function"==typeof queueMicrotask)fe=queueMicrotask;else{const e=ne(void 0);fe=t=>ae(e,t)}return fe(e)};function pe(e,t,r){if("function"!=typeof e)throw new TypeError("Argument is not a function");return Function.prototype.apply.call(e,t,r)}function he(e,t,r){try{return ne(pe(e,t,r))}catch(e){return ie(e)}}class be{constructor(){this._cursor=0,this._size=0,this._front={_elements:[],_next:void 0},this._back=this._front,this._cursor=0,this._size=0}get length(){return this._size}push(e){const t=this._back;let r=t;16383===t._elements.length&&(r={_elements:[],_next:void 0}),t._elements.push(e),r!==t&&(this._back=r,t._next=r),++this._size}shift(){const e=this._front;let t=e;const r=this._cursor;let o=r+1;const n=e._elements,i=n[r];return 16384===o&&(t=e._next,o=0),--this._size,this._cursor=o,e!==t&&(this._front=t),n[r]=void 0,i}forEach(e){let t=this._cursor,r=this._front,o=r._elements;for(;!(t===o.length&&void 0===r._next||t===o.length&&(r=r._next,o=r._elements,t=0,0===o.length));)e(o[t]),++t}peek(){const e=this._front,t=this._cursor;return e._elements[t]}}const ye=Symbol("[[AbortSteps]]"),me=Symbol("[[ErrorSteps]]"),ve=Symbol("[[CancelSteps]]"),_e=Symbol("[[PullSteps]]"),ge=Symbol("[[ReleaseSteps]]");function we(e,t){e._ownerReadableStream=t,t._reader=e,"readable"===t._state?Te(e):"closed"===t._state?function(e){Te(e),Re(e)}(e):Ee(e,t._storedError)}function Se(e,t){return ko(e._ownerReadableStream,t)}function Pe(e){const t=e._ownerReadableStream;"readable"===t._state?Ce(e,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")):function(e,t){Ee(e,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness"))}(e),t._readableStreamController[ge](),t._reader=void 0,e._ownerReadableStream=void 0}function Oe(e){return new TypeError("Cannot "+e+" a stream using a released reader")}function Te(e){e._closedPromise=oe((t,r)=>{e._closedPromise_resolve=t,e._closedPromise_reject=r})}function Ee(e,t){Te(e),Ce(e,t)}function Ce(e,t){void 0!==e._closedPromise_reject&&(de(e._closedPromise),e._closedPromise_reject(t),e._closedPromise_resolve=void 0,e._closedPromise_reject=void 0)}function Re(e){void 0!==e._closedPromise_resolve&&(e._closedPromise_resolve(void 0),e._closedPromise_resolve=void 0,e._closedPromise_reject=void 0)}const Ae=Number.isFinite||function(e){return"number"==typeof e&&isFinite(e)},ke=Math.trunc||function(e){return e<0?Math.ceil(e):Math.floor(e)};function je(e,t){if(void 0!==e&&"object"!=typeof(r=e)&&"function"!=typeof r)throw new TypeError(t+" is not an object.");var r}function Ie(e,t){if("function"!=typeof e)throw new TypeError(t+" is not a function.")}function qe(e,t){if(!function(e){return"object"==typeof e&&null!==e||"function"==typeof e}(e))throw new TypeError(t+" is not an object.")}function xe(e,t,r){if(void 0===e)throw new TypeError(`Parameter ${t} is required in '${r}'.`)}function We(e,t,r){if(void 0===e)throw new TypeError(`${t} is required in '${r}'.`)}function Le(e){return Number(e)}function Me(e){return 0===e?0:e}function Ne(e,t){const r=Number.MAX_SAFE_INTEGER;let o=Number(e);if(o=Me(o),!Ae(o))throw new TypeError(t+" is not a finite number");if(o=function(e){return Me(ke(e))}(o),o<0||o>r)throw new TypeError(`${t} is outside the accepted range of 0 to ${r}, inclusive`);return Ae(o)&&0!==o?o:0}function De(e,t){if(!Ro(e))throw new TypeError(t+" is not a ReadableStream.")}function Fe(e){return new Ve(e)}function Be(e,t){e._reader._readRequests.push(t)}function ze(e,t,r){const o=e._reader._readRequests.shift();r?o._closeSteps():o._chunkSteps(t)}function Ue(e){return e._reader._readRequests.length}function He(e){const t=e._reader;return void 0!==t&&!!$e(t)}class Ve{constructor(e){if(xe(e,1,"ReadableStreamDefaultReader"),De(e,"First parameter"),Ao(e))throw new TypeError("This stream has already been locked for exclusive reading by another reader");we(this,e),this._readRequests=new be}get closed(){return $e(this)?this._closedPromise:ie(Ge("closed"))}cancel(e){return $e(this)?void 0===this._ownerReadableStream?ie(Oe("cancel")):Se(this,e):ie(Ge("cancel"))}read(){if(!$e(this))return ie(Ge("read"));if(void 0===this._ownerReadableStream)return ie(Oe("read from"));let e,t;const r=oe((r,o)=>{e=r,t=o});return Ye(this,{_chunkSteps:t=>e({value:t,done:!1}),_closeSteps:()=>e({value:void 0,done:!0}),_errorSteps:e=>t(e)}),r}releaseLock(){if(!$e(this))throw Ge("releaseLock");void 0!==this._ownerReadableStream&&function(e){Pe(e);Je(e,new TypeError("Reader was released"))}(this)}}function $e(e){return!!G(e)&&!!Object.prototype.hasOwnProperty.call(e,"_readRequests")&&e instanceof Ve}function Ye(e,t){const r=e._ownerReadableStream;r._disturbed=!0,"closed"===r._state?t._closeSteps():"errored"===r._state?t._errorSteps(r._storedError):r._readableStreamController[_e](t)}function Je(e,t){const r=e._readRequests;e._readRequests=new be,r.forEach(e=>{e._errorSteps(t)})}function Ge(e){return new TypeError(`ReadableStreamDefaultReader.prototype.${e} can only be used on a ReadableStreamDefaultReader`)}var Ke,Qe,Xe;function Ze(e){return e.slice()}function et(e,t,r,o,n){new Uint8Array(e).set(new Uint8Array(r,o,n),t)}Object.defineProperties(Ve.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),Q(Ve.prototype.cancel,"cancel"),Q(Ve.prototype.read,"read"),Q(Ve.prototype.releaseLock,"releaseLock"),"symbol"==typeof Symbol.toStringTag&&Object.defineProperty(Ve.prototype,Symbol.toStringTag,{value:"ReadableStreamDefaultReader",configurable:!0});let tt=e=>(tt="function"==typeof e.transfer?e=>e.transfer():"function"==typeof structuredClone?e=>structuredClone(e,{transfer:[e]}):e=>e,tt(e)),rt=e=>(rt="boolean"==typeof e.detached?e=>e.detached:e=>0===e.byteLength,rt(e));function ot(e,t,r){if(e.slice)return e.slice(t,r);const o=r-t,n=new ArrayBuffer(o);return et(n,0,e,t,o),n}function nt(e,t){const r=e[t];if(null!=r){if("function"!=typeof r)throw new TypeError(String(t)+" is not a function");return r}}function it(e){try{const t=e.done,r=e.value;return ae(re(r),e=>({done:t,value:e}))}catch(e){return ie(e)}}const at=null!==(Xe=null!==(Ke=Symbol.asyncIterator)&&void 0!==Ke?Ke:null===(Qe=Symbol.for)||void 0===Qe?void 0:Qe.call(Symbol,"Symbol.asyncIterator"))&&void 0!==Xe?Xe:"@@asyncIterator";function st(e){const t=pe(e.nextMethod,e.iterator,[]);if(!G(t))throw new TypeError("The iterator.next() method must return an object");return t}class lt{constructor(e,t){this._ongoingPromise=void 0,this._isFinished=!1,this._reader=e,this._preventCancel=t}next(){const e=()=>this._nextSteps();return this._ongoingPromise=this._ongoingPromise?ue(this._ongoingPromise,e,e):e(),this._ongoingPromise}return(e){const t=()=>this._returnSteps(e);return this._ongoingPromise?ue(this._ongoingPromise,t,t):t()}_nextSteps(){if(this._isFinished)return Promise.resolve({value:void 0,done:!0});const e=this._reader;let t,r;const o=oe((e,o)=>{t=e,r=o});return Ye(e,{_chunkSteps:e=>{this._ongoingPromise=void 0,fe(()=>t({value:e,done:!1}))},_closeSteps:()=>{this._ongoingPromise=void 0,this._isFinished=!0,Pe(e),t({value:void 0,done:!0})},_errorSteps:t=>{this._ongoingPromise=void 0,this._isFinished=!0,Pe(e),r(t)}}),o}_returnSteps(e){if(this._isFinished)return Promise.resolve({value:e,done:!0});this._isFinished=!0;const t=this._reader;if(!this._preventCancel){const r=Se(t,e);return Pe(t),ue(r,()=>({value:e,done:!0}))}return Pe(t),ne({value:e,done:!0})}}const ct={next(){return ut(this)?this._asyncIteratorImpl.next():ie(dt("next"))},return(e){return ut(this)?this._asyncIteratorImpl.return(e):ie(dt("return"))},[at](){return this}};function ut(e){if(!G(e))return!1;if(!Object.prototype.hasOwnProperty.call(e,"_asyncIteratorImpl"))return!1;try{return e._asyncIteratorImpl instanceof lt}catch(e){return!1}}function dt(e){return new TypeError(`ReadableStreamAsyncIterator.${e} can only be used on a ReadableSteamAsyncIterator`)}Object.defineProperty(ct,at,{enumerable:!1});const ft=Number.isNaN||function(e){return e!=e};function pt(e){const t=ot(e.buffer,e.byteOffset,e.byteOffset+e.byteLength);return new Uint8Array(t)}function ht(e){const t=e._queue.shift();return e._queueTotalSize-=t.size,e._queueTotalSize<0&&(e._queueTotalSize=0),t.value}function bt(e,t,r){if("number"!=typeof(o=r)||ft(o)||o<0||r===1/0)throw new RangeError("Size must be a finite, non-NaN, non-negative number.");var o;e._queue.push({value:t,size:r}),e._queueTotalSize+=r}function yt(e){e._queue=new be,e._queueTotalSize=0}function mt(e){return e===DataView}class vt{constructor(){throw new TypeError("Illegal constructor")}get view(){if(!wt(this))throw $t("view");return this._view}respond(e){if(!wt(this))throw $t("respond");if(xe(e,1,"respond"),e=Ne(e,"First parameter"),void 0===this._associatedReadableByteStreamController)throw new TypeError("This BYOB request has been invalidated");if(rt(this._view.buffer))throw new TypeError("The BYOB request's buffer has been detached and so cannot be used as a response");Ut(this._associatedReadableByteStreamController,e)}respondWithNewView(e){if(!wt(this))throw $t("respondWithNewView");if(xe(e,1,"respondWithNewView"),!ArrayBuffer.isView(e))throw new TypeError("You can only respond with array buffer views");if(void 0===this._associatedReadableByteStreamController)throw new TypeError("This BYOB request has been invalidated");if(rt(e.buffer))throw new TypeError("The given view's buffer has been detached and so cannot be used as a response");Ht(this._associatedReadableByteStreamController,e)}}Object.defineProperties(vt.prototype,{respond:{enumerable:!0},respondWithNewView:{enumerable:!0},view:{enumerable:!0}}),Q(vt.prototype.respond,"respond"),Q(vt.prototype.respondWithNewView,"respondWithNewView"),"symbol"==typeof Symbol.toStringTag&&Object.defineProperty(vt.prototype,Symbol.toStringTag,{value:"ReadableStreamBYOBRequest",configurable:!0});class _t{constructor(){throw new TypeError("Illegal constructor")}get byobRequest(){if(!gt(this))throw Yt("byobRequest");return Bt(this)}get desiredSize(){if(!gt(this))throw Yt("desiredSize");return zt(this)}close(){if(!gt(this))throw Yt("close");if(this._closeRequested)throw new TypeError("The stream has already been closed; do not close it again!");const e=this._controlledReadableByteStream._state;if("readable"!==e)throw new TypeError(`The stream (in ${e} state) is not in the readable state and cannot be closed`);Mt(this)}enqueue(e){if(!gt(this))throw Yt("enqueue");if(xe(e,1,"enqueue"),!ArrayBuffer.isView(e))throw new TypeError("chunk must be an array buffer view");if(0===e.byteLength)throw new TypeError("chunk must have non-zero byteLength");if(0===e.buffer.byteLength)throw new TypeError("chunk's buffer must have non-zero byteLength");if(this._closeRequested)throw new TypeError("stream is closed or draining");const t=this._controlledReadableByteStream._state;if("readable"!==t)throw new TypeError(`The stream (in ${t} state) is not in the readable state and cannot be enqueued to`);Nt(this,e)}error(e){if(!gt(this))throw Yt("error");Dt(this,e)}[ve](e){Pt(this),yt(this);const t=this._cancelAlgorithm(e);return Lt(this),t}[_e](e){const t=this._controlledReadableByteStream;if(this._queueTotalSize>0)return void Ft(this,e);const r=this._autoAllocateChunkSize;if(void 0!==r){let o;try{o=new ArrayBuffer(r)}catch(t){return void e._errorSteps(t)}const n={buffer:o,bufferByteLength:r,byteOffset:0,byteLength:r,bytesFilled:0,minimumFill:1,elementSize:1,viewConstructor:Uint8Array,readerType:"default"};this._pendingPullIntos.push(n)}Be(t,e),St(this)}[ge](){if(this._pendingPullIntos.length>0){const e=this._pendingPullIntos.peek();e.readerType="none",this._pendingPullIntos=new be,this._pendingPullIntos.push(e)}}}function gt(e){return!!G(e)&&!!Object.prototype.hasOwnProperty.call(e,"_controlledReadableByteStream")&&e instanceof _t}function wt(e){return!!G(e)&&!!Object.prototype.hasOwnProperty.call(e,"_associatedReadableByteStreamController")&&e instanceof vt}function St(e){(function(e){const t=e._controlledReadableByteStream;if("readable"!==t._state)return!1;if(e._closeRequested)return!1;if(!e._started)return!1;if(He(t)&&Ue(t)>0)return!0;if(Xt(t)&&Qt(t)>0)return!0;return zt(e)>0})(e)&&(e._pulling?e._pullAgain=!0:(e._pulling=!0,se(e._pullAlgorithm(),()=>(e._pulling=!1,e._pullAgain&&(e._pullAgain=!1,St(e)),null),t=>(Dt(e,t),null))))}function Pt(e){It(e),e._pendingPullIntos=new be}function Ot(e,t){let r=!1;"closed"===e._state&&(r=!0);const o=Tt(t);"default"===t.readerType?ze(e,o,r):function(e,t,r){const o=e._reader._readIntoRequests.shift();r?o._closeSteps(t):o._chunkSteps(t)}(e,o,r)}function Tt(e){const t=e.bytesFilled,r=e.elementSize;return new e.viewConstructor(e.buffer,e.byteOffset,t/r)}function Et(e,t,r,o){e._queue.push({buffer:t,byteOffset:r,byteLength:o}),e._queueTotalSize+=o}function Ct(e,t,r,o){let n;try{n=ot(t,r,r+o)}catch(t){throw Dt(e,t),t}Et(e,n,0,o)}function Rt(e,t){t.bytesFilled>0&&Ct(e,t.buffer,t.byteOffset,t.bytesFilled),Wt(e)}function At(e,t){const r=Math.min(e._queueTotalSize,t.byteLength-t.bytesFilled),o=t.bytesFilled+r;let n=r,i=!1;const a=o-o%t.elementSize;a>=t.minimumFill&&(n=a-t.bytesFilled,i=!0);const s=e._queue;for(;n>0;){const r=s.peek(),o=Math.min(n,r.byteLength),i=t.byteOffset+t.bytesFilled;et(t.buffer,i,r.buffer,r.byteOffset,o),r.byteLength===o?s.shift():(r.byteOffset+=o,r.byteLength-=o),e._queueTotalSize-=o,kt(e,o,t),n-=o}return i}function kt(e,t,r){r.bytesFilled+=t}function jt(e){0===e._queueTotalSize&&e._closeRequested?(Lt(e),jo(e._controlledReadableByteStream)):St(e)}function It(e){null!==e._byobRequest&&(e._byobRequest._associatedReadableByteStreamController=void 0,e._byobRequest._view=null,e._byobRequest=null)}function qt(e){for(;e._pendingPullIntos.length>0;){if(0===e._queueTotalSize)return;const t=e._pendingPullIntos.peek();At(e,t)&&(Wt(e),Ot(e._controlledReadableByteStream,t))}}function xt(e,t){const r=e._pendingPullIntos.peek();It(e),"closed"===e._controlledReadableByteStream._state?function(e,t){"none"===t.readerType&&Wt(e);const r=e._controlledReadableByteStream;if(Xt(r))for(;Qt(r)>0;)Ot(r,Wt(e))}(e,r):function(e,t,r){if(kt(0,t,r),"none"===r.readerType)return Rt(e,r),void qt(e);if(r.bytesFilled<r.minimumFill)return;Wt(e);const o=r.bytesFilled%r.elementSize;if(o>0){const t=r.byteOffset+r.bytesFilled;Ct(e,r.buffer,t-o,o)}r.bytesFilled-=o,Ot(e._controlledReadableByteStream,r),qt(e)}(e,t,r),St(e)}function Wt(e){return e._pendingPullIntos.shift()}function Lt(e){e._pullAlgorithm=void 0,e._cancelAlgorithm=void 0}function Mt(e){const t=e._controlledReadableByteStream;if(!e._closeRequested&&"readable"===t._state)if(e._queueTotalSize>0)e._closeRequested=!0;else{if(e._pendingPullIntos.length>0){const t=e._pendingPullIntos.peek();if(t.bytesFilled%t.elementSize!=0){const t=new TypeError("Insufficient bytes to fill elements in the given buffer");throw Dt(e,t),t}}Lt(e),jo(t)}}function Nt(e,t){const r=e._controlledReadableByteStream;if(e._closeRequested||"readable"!==r._state)return;const{buffer:o,byteOffset:n,byteLength:i}=t;if(rt(o))throw new TypeError("chunk's buffer is detached and so cannot be enqueued");const a=tt(o);if(e._pendingPullIntos.length>0){const t=e._pendingPullIntos.peek();if(rt(t.buffer))throw new TypeError("The BYOB request's buffer has been detached and so cannot be filled with an enqueued chunk");It(e),t.buffer=tt(t.buffer),"none"===t.readerType&&Rt(e,t)}He(r)?(function(e){const t=e._controlledReadableByteStream._reader;for(;t._readRequests.length>0;){if(0===e._queueTotalSize)return;Ft(e,t._readRequests.shift())}}(e),0===Ue(r)?Et(e,a,n,i):(e._pendingPullIntos.length>0&&Wt(e),ze(r,new Uint8Array(a,n,i),!1))):Xt(r)?(Et(e,a,n,i),qt(e)):Et(e,a,n,i),St(e)}function Dt(e,t){const r=e._controlledReadableByteStream;"readable"===r._state&&(Pt(e),yt(e),Lt(e),Io(r,t))}function Ft(e,t){const r=e._queue.shift();e._queueTotalSize-=r.byteLength,jt(e);const o=new Uint8Array(r.buffer,r.byteOffset,r.byteLength);t._chunkSteps(o)}function Bt(e){if(null===e._byobRequest&&e._pendingPullIntos.length>0){const t=e._pendingPullIntos.peek(),r=new Uint8Array(t.buffer,t.byteOffset+t.bytesFilled,t.byteLength-t.bytesFilled),o=Object.create(vt.prototype);!function(e,t,r){e._associatedReadableByteStreamController=t,e._view=r}(o,e,r),e._byobRequest=o}return e._byobRequest}function zt(e){const t=e._controlledReadableByteStream._state;return"errored"===t?null:"closed"===t?0:e._strategyHWM-e._queueTotalSize}function Ut(e,t){const r=e._pendingPullIntos.peek();if("closed"===e._controlledReadableByteStream._state){if(0!==t)throw new TypeError("bytesWritten must be 0 when calling respond() on a closed stream")}else{if(0===t)throw new TypeError("bytesWritten must be greater than 0 when calling respond() on a readable stream");if(r.bytesFilled+t>r.byteLength)throw new RangeError("bytesWritten out of range")}r.buffer=tt(r.buffer),xt(e,t)}function Ht(e,t){const r=e._pendingPullIntos.peek();if("closed"===e._controlledReadableByteStream._state){if(0!==t.byteLength)throw new TypeError("The view's length must be 0 when calling respondWithNewView() on a closed stream")}else if(0===t.byteLength)throw new TypeError("The view's length must be greater than 0 when calling respondWithNewView() on a readable stream");if(r.byteOffset+r.bytesFilled!==t.byteOffset)throw new RangeError("The region specified by view does not match byobRequest");if(r.bufferByteLength!==t.buffer.byteLength)throw new RangeError("The buffer of view has different capacity than byobRequest");if(r.bytesFilled+t.byteLength>r.byteLength)throw new RangeError("The region specified by view is larger than byobRequest");const o=t.byteLength;r.buffer=tt(t.buffer),xt(e,o)}function Vt(e,t,r,o,n,i,a){t._controlledReadableByteStream=e,t._pullAgain=!1,t._pulling=!1,t._byobRequest=null,t._queue=t._queueTotalSize=void 0,yt(t),t._closeRequested=!1,t._started=!1,t._strategyHWM=i,t._pullAlgorithm=o,t._cancelAlgorithm=n,t._autoAllocateChunkSize=a,t._pendingPullIntos=new be,e._readableStreamController=t,se(ne(r()),()=>(t._started=!0,St(t),null),e=>(Dt(t,e),null))}function $t(e){return new TypeError(`ReadableStreamBYOBRequest.prototype.${e} can only be used on a ReadableStreamBYOBRequest`)}function Yt(e){return new TypeError(`ReadableByteStreamController.prototype.${e} can only be used on a ReadableByteStreamController`)}function Jt(e,t){if("byob"!=(e=""+e))throw new TypeError(`${t} '${e}' is not a valid enumeration value for ReadableStreamReaderMode`);return e}function Gt(e){return new Zt(e)}function Kt(e,t){e._reader._readIntoRequests.push(t)}function Qt(e){return e._reader._readIntoRequests.length}function Xt(e){const t=e._reader;return void 0!==t&&!!er(t)}Object.defineProperties(_t.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},byobRequest:{enumerable:!0},desiredSize:{enumerable:!0}}),Q(_t.prototype.close,"close"),Q(_t.prototype.enqueue,"enqueue"),Q(_t.prototype.error,"error"),"symbol"==typeof Symbol.toStringTag&&Object.defineProperty(_t.prototype,Symbol.toStringTag,{value:"ReadableByteStreamController",configurable:!0});class Zt{constructor(e){if(xe(e,1,"ReadableStreamBYOBReader"),De(e,"First parameter"),Ao(e))throw new TypeError("This stream has already been locked for exclusive reading by another reader");if(!gt(e._readableStreamController))throw new TypeError("Cannot construct a ReadableStreamBYOBReader for a stream not constructed with a byte source");we(this,e),this._readIntoRequests=new be}get closed(){return er(this)?this._closedPromise:ie(or("closed"))}cancel(e){return er(this)?void 0===this._ownerReadableStream?ie(Oe("cancel")):Se(this,e):ie(or("cancel"))}read(e,t={}){if(!er(this))return ie(or("read"));if(!ArrayBuffer.isView(e))return ie(new TypeError("view must be an array buffer view"));if(0===e.byteLength)return ie(new TypeError("view must have non-zero byteLength"));if(0===e.buffer.byteLength)return ie(new TypeError("view's buffer must have non-zero byteLength"));if(rt(e.buffer))return ie(new TypeError("view's buffer has been detached"));let r;try{r=function(e,t){var r;return je(e,t),{min:Ne(null!==(r=null==e?void 0:e.min)&&void 0!==r?r:1,t+" has member 'min' that")}}(t,"options")}catch(e){return ie(e)}const o=r.min;if(0===o)return ie(new TypeError("options.min must be greater than 0"));if(function(e){return mt(e.constructor)}(e)){if(o>e.byteLength)return ie(new RangeError("options.min must be less than or equal to view's byteLength"))}else if(o>e.length)return ie(new RangeError("options.min must be less than or equal to view's length"));if(void 0===this._ownerReadableStream)return ie(Oe("read from"));let n,i;const a=oe((e,t)=>{n=e,i=t});return tr(this,e,o,{_chunkSteps:e=>n({value:e,done:!1}),_closeSteps:e=>n({value:e,done:!0}),_errorSteps:e=>i(e)}),a}releaseLock(){if(!er(this))throw or("releaseLock");void 0!==this._ownerReadableStream&&function(e){Pe(e);rr(e,new TypeError("Reader was released"))}(this)}}function er(e){return!!G(e)&&!!Object.prototype.hasOwnProperty.call(e,"_readIntoRequests")&&e instanceof Zt}function tr(e,t,r,o){const n=e._ownerReadableStream;n._disturbed=!0,"errored"===n._state?o._errorSteps(n._storedError):function(e,t,r,o){const n=e._controlledReadableByteStream,i=t.constructor,a=function(e){return mt(e)?1:e.BYTES_PER_ELEMENT}(i),{byteOffset:s,byteLength:l}=t,c=r*a;let u;try{u=tt(t.buffer)}catch(e){return void o._errorSteps(e)}const d={buffer:u,bufferByteLength:u.byteLength,byteOffset:s,byteLength:l,bytesFilled:0,minimumFill:c,elementSize:a,viewConstructor:i,readerType:"byob"};if(e._pendingPullIntos.length>0)return e._pendingPullIntos.push(d),void Kt(n,o);if("closed"!==n._state){if(e._queueTotalSize>0){if(At(e,d)){const t=Tt(d);return jt(e),void o._chunkSteps(t)}if(e._closeRequested){const t=new TypeError("Insufficient bytes to fill elements in the given buffer");return Dt(e,t),void o._errorSteps(t)}}e._pendingPullIntos.push(d),Kt(n,o),St(e)}else{const e=new i(d.buffer,d.byteOffset,0);o._closeSteps(e)}}(n._readableStreamController,t,r,o)}function rr(e,t){const r=e._readIntoRequests;e._readIntoRequests=new be,r.forEach(e=>{e._errorSteps(t)})}function or(e){return new TypeError(`ReadableStreamBYOBReader.prototype.${e} can only be used on a ReadableStreamBYOBReader`)}function nr(e,t){const{highWaterMark:r}=e;if(void 0===r)return t;if(ft(r)||r<0)throw new RangeError("Invalid highWaterMark");return r}function ir(e){const{size:t}=e;return t||(()=>1)}function ar(e,t){je(e,t);const r=null==e?void 0:e.highWaterMark,o=null==e?void 0:e.size;return{highWaterMark:void 0===r?void 0:Le(r),size:void 0===o?void 0:sr(o,t+" has member 'size' that")}}function sr(e,t){return Ie(e,t),t=>Le(e(t))}function lr(e,t,r){return Ie(e,r),r=>he(e,t,[r])}function cr(e,t,r){return Ie(e,r),()=>he(e,t,[])}function ur(e,t,r){return Ie(e,r),r=>pe(e,t,[r])}function dr(e,t,r){return Ie(e,r),(r,o)=>he(e,t,[r,o])}function fr(e,t){if(!mr(e))throw new TypeError(t+" is not a WritableStream.")}Object.defineProperties(Zt.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),Q(Zt.prototype.cancel,"cancel"),Q(Zt.prototype.read,"read"),Q(Zt.prototype.releaseLock,"releaseLock"),"symbol"==typeof Symbol.toStringTag&&Object.defineProperty(Zt.prototype,Symbol.toStringTag,{value:"ReadableStreamBYOBReader",configurable:!0});const pr="function"==typeof AbortController;class hr{constructor(e={},t={}){void 0===e?e=null:qe(e,"First parameter");const r=ar(t,"Second parameter"),o=function(e,t){je(e,t);const r=null==e?void 0:e.abort,o=null==e?void 0:e.close,n=null==e?void 0:e.start,i=null==e?void 0:e.type,a=null==e?void 0:e.write;return{abort:void 0===r?void 0:lr(r,e,t+" has member 'abort' that"),close:void 0===o?void 0:cr(o,e,t+" has member 'close' that"),start:void 0===n?void 0:ur(n,e,t+" has member 'start' that"),write:void 0===a?void 0:dr(a,e,t+" has member 'write' that"),type:i}}(e,"First parameter");if(yr(this),void 0!==o.type)throw new RangeError("Invalid type is specified");const n=ir(r);!function(e,t,r,o){const n=Object.create(xr.prototype);let i,a,s,l;i=void 0!==t.start?()=>t.start(n):()=>{},a=void 0!==t.write?e=>t.write(e,n):()=>ne(void 0),s=void 0!==t.close?()=>t.close():()=>ne(void 0),l=void 0!==t.abort?e=>t.abort(e):()=>ne(void 0),Lr(e,n,i,a,s,l,r,o)}(this,o,nr(r,1),n)}get locked(){if(!mr(this))throw Ur("locked");return vr(this)}abort(e){return mr(this)?vr(this)?ie(new TypeError("Cannot abort a stream that already has a writer")):_r(this,e):ie(Ur("abort"))}close(){return mr(this)?vr(this)?ie(new TypeError("Cannot close a stream that already has a writer")):Or(this)?ie(new TypeError("Cannot close an already-closing stream")):gr(this):ie(Ur("close"))}getWriter(){if(!mr(this))throw Ur("getWriter");return br(this)}}function br(e){return new Cr(e)}function yr(e){e._state="writable",e._storedError=void 0,e._writer=void 0,e._writableStreamController=void 0,e._writeRequests=new be,e._inFlightWriteRequest=void 0,e._closeRequest=void 0,e._inFlightCloseRequest=void 0,e._pendingAbortRequest=void 0,e._backpressure=!1}function mr(e){return!!G(e)&&!!Object.prototype.hasOwnProperty.call(e,"_writableStreamController")&&e instanceof hr}function vr(e){return void 0!==e._writer}function _r(e,t){var r;if("closed"===e._state||"errored"===e._state)return ne(void 0);e._writableStreamController._abortReason=t,null===(r=e._writableStreamController._abortController)||void 0===r||r.abort(t);const o=e._state;if("closed"===o||"errored"===o)return ne(void 0);if(void 0!==e._pendingAbortRequest)return e._pendingAbortRequest._promise;let n=!1;"erroring"===o&&(n=!0,t=void 0);const i=oe((r,o)=>{e._pendingAbortRequest={_promise:void 0,_resolve:r,_reject:o,_reason:t,_wasAlreadyErroring:n}});return e._pendingAbortRequest._promise=i,n||Sr(e,t),i}function gr(e){const t=e._state;if("closed"===t||"errored"===t)return ie(new TypeError(`The stream (in ${t} state) is not in the writable state and cannot be closed`));const r=oe((t,r)=>{const o={_resolve:t,_reject:r};e._closeRequest=o}),o=e._writer;var n;return void 0!==o&&e._backpressure&&"writable"===t&&to(o),bt(n=e._writableStreamController,qr,0),Dr(n),r}function wr(e,t){"writable"!==e._state?Pr(e):Sr(e,t)}function Sr(e,t){const r=e._writableStreamController;e._state="erroring",e._storedError=t;const o=e._writer;void 0!==o&&kr(o,t),!function(e){return void 0!==e._inFlightWriteRequest||void 0!==e._inFlightCloseRequest}(e)&&r._started&&Pr(e)}function Pr(e){e._state="errored",e._writableStreamController[me]();const t=e._storedError;if(e._writeRequests.forEach(e=>{e._reject(t)}),e._writeRequests=new be,void 0===e._pendingAbortRequest)return void Tr(e);const r=e._pendingAbortRequest;if(e._pendingAbortRequest=void 0,r._wasAlreadyErroring)return r._reject(t),void Tr(e);se(e._writableStreamController[ye](r._reason),()=>(r._resolve(),Tr(e),null),t=>(r._reject(t),Tr(e),null))}function Or(e){return void 0!==e._closeRequest||void 0!==e._inFlightCloseRequest}function Tr(e){void 0!==e._closeRequest&&(e._closeRequest._reject(e._storedError),e._closeRequest=void 0);const t=e._writer;void 0!==t&&Gr(t,e._storedError)}function Er(e,t){const r=e._writer;void 0!==r&&t!==e._backpressure&&(t?function(e){Qr(e)}(r):to(r)),e._backpressure=t}Object.defineProperties(hr.prototype,{abort:{enumerable:!0},close:{enumerable:!0},getWriter:{enumerable:!0},locked:{enumerable:!0}}),Q(hr.prototype.abort,"abort"),Q(hr.prototype.close,"close"),Q(hr.prototype.getWriter,"getWriter"),"symbol"==typeof Symbol.toStringTag&&Object.defineProperty(hr.prototype,Symbol.toStringTag,{value:"WritableStream",configurable:!0});class Cr{constructor(e){if(xe(e,1,"WritableStreamDefaultWriter"),fr(e,"First parameter"),vr(e))throw new TypeError("This stream has already been locked for exclusive writing by another writer");this._ownerWritableStream=e,e._writer=this;const t=e._state;if("writable"===t)!Or(e)&&e._backpressure?Qr(this):Zr(this),Yr(this);else if("erroring"===t)Xr(this,e._storedError),Yr(this);else if("closed"===t)Zr(this),Yr(this),Kr(this);else{const t=e._storedError;Xr(this,t),Jr(this,t)}}get closed(){return Rr(this)?this._closedPromise:ie(Vr("closed"))}get desiredSize(){if(!Rr(this))throw Vr("desiredSize");if(void 0===this._ownerWritableStream)throw $r("desiredSize");return function(e){const t=e._ownerWritableStream,r=t._state;return"errored"===r||"erroring"===r?null:"closed"===r?0:Nr(t._writableStreamController)}(this)}get ready(){return Rr(this)?this._readyPromise:ie(Vr("ready"))}abort(e){return Rr(this)?void 0===this._ownerWritableStream?ie($r("abort")):function(e,t){return _r(e._ownerWritableStream,t)}(this,e):ie(Vr("abort"))}close(){if(!Rr(this))return ie(Vr("close"));const e=this._ownerWritableStream;return void 0===e?ie($r("close")):Or(e)?ie(new TypeError("Cannot close an already-closing stream")):Ar(this)}releaseLock(){if(!Rr(this))throw Vr("releaseLock");void 0!==this._ownerWritableStream&&jr(this)}write(e){return Rr(this)?void 0===this._ownerWritableStream?ie($r("write to")):Ir(this,e):ie(Vr("write"))}}function Rr(e){return!!G(e)&&!!Object.prototype.hasOwnProperty.call(e,"_ownerWritableStream")&&e instanceof Cr}function Ar(e){return gr(e._ownerWritableStream)}function kr(e,t){"pending"===e._readyPromiseState?eo(e,t):function(e,t){Xr(e,t)}(e,t)}function jr(e){const t=e._ownerWritableStream,r=new TypeError("Writer was released and can no longer be used to monitor the stream's closedness");kr(e,r),function(e,t){"pending"===e._closedPromiseState?Gr(e,t):function(e,t){Jr(e,t)}(e,t)}(e,r),t._writer=void 0,e._ownerWritableStream=void 0}function Ir(e,t){const r=e._ownerWritableStream,o=r._writableStreamController,n=function(e,t){try{return e._strategySizeAlgorithm(t)}catch(t){return Fr(e,t),1}}(o,t);if(r!==e._ownerWritableStream)return ie($r("write to"));const i=r._state;if("errored"===i)return ie(r._storedError);if(Or(r)||"closed"===i)return ie(new TypeError("The stream is closing or closed and cannot be written to"));if("erroring"===i)return ie(r._storedError);const a=function(e){return oe((t,r)=>{const o={_resolve:t,_reject:r};e._writeRequests.push(o)})}(r);return function(e,t,r){try{bt(e,t,r)}catch(t){return void Fr(e,t)}const o=e._controlledWritableStream;Or(o)||"writable"!==o._state||Er(o,Br(e)),Dr(e)}(o,t,n),a}Object.defineProperties(Cr.prototype,{abort:{enumerable:!0},close:{enumerable:!0},releaseLock:{enumerable:!0},write:{enumerable:!0},closed:{enumerable:!0},desiredSize:{enumerable:!0},ready:{enumerable:!0}}),Q(Cr.prototype.abort,"abort"),Q(Cr.prototype.close,"close"),Q(Cr.prototype.releaseLock,"releaseLock"),Q(Cr.prototype.write,"write"),"symbol"==typeof Symbol.toStringTag&&Object.defineProperty(Cr.prototype,Symbol.toStringTag,{value:"WritableStreamDefaultWriter",configurable:!0});const qr={};class xr{constructor(){throw new TypeError("Illegal constructor")}get abortReason(){if(!Wr(this))throw Hr("abortReason");return this._abortReason}get signal(){if(!Wr(this))throw Hr("signal");if(void 0===this._abortController)throw new TypeError("WritableStreamDefaultController.prototype.signal is not supported");return this._abortController.signal}error(e){if(!Wr(this))throw Hr("error");"writable"===this._controlledWritableStream._state&&zr(this,e)}[ye](e){const t=this._abortAlgorithm(e);return Mr(this),t}[me](){yt(this)}}function Wr(e){return!!G(e)&&!!Object.prototype.hasOwnProperty.call(e,"_controlledWritableStream")&&e instanceof xr}function Lr(e,t,r,o,n,i,a,s){t._controlledWritableStream=e,e._writableStreamController=t,t._queue=void 0,t._queueTotalSize=void 0,yt(t),t._abortReason=void 0,t._abortController=function(){if(pr)return new AbortController}(),t._started=!1,t._strategySizeAlgorithm=s,t._strategyHWM=a,t._writeAlgorithm=o,t._closeAlgorithm=n,t._abortAlgorithm=i;const l=Br(t);Er(e,l),se(ne(r()),()=>(t._started=!0,Dr(t),null),r=>(t._started=!0,wr(e,r),null))}function Mr(e){e._writeAlgorithm=void 0,e._closeAlgorithm=void 0,e._abortAlgorithm=void 0,e._strategySizeAlgorithm=void 0}function Nr(e){return e._strategyHWM-e._queueTotalSize}function Dr(e){const t=e._controlledWritableStream;if(!e._started)return;if(void 0!==t._inFlightWriteRequest)return;if("erroring"===t._state)return void Pr(t);if(0===e._queue.length)return;const r=e._queue.peek().value;r===qr?function(e){const t=e._controlledWritableStream;(function(e){e._inFlightCloseRequest=e._closeRequest,e._closeRequest=void 0})(t),ht(e);const r=e._closeAlgorithm();Mr(e),se(r,()=>(function(e){e._inFlightCloseRequest._resolve(void 0),e._inFlightCloseRequest=void 0,"erroring"===e._state&&(e._storedError=void 0,void 0!==e._pendingAbortRequest&&(e._pendingAbortRequest._resolve(),e._pendingAbortRequest=void 0)),e._state="closed";const t=e._writer;void 0!==t&&Kr(t)}(t),null),e=>(function(e,t){e._inFlightCloseRequest._reject(t),e._inFlightCloseRequest=void 0,void 0!==e._pendingAbortRequest&&(e._pendingAbortRequest._reject(t),e._pendingAbortRequest=void 0),wr(e,t)}(t,e),null))}(e):function(e,t){const r=e._controlledWritableStream;!function(e){e._inFlightWriteRequest=e._writeRequests.shift()}(r);se(e._writeAlgorithm(t),()=>{!function(e){e._inFlightWriteRequest._resolve(void 0),e._inFlightWriteRequest=void 0}(r);const t=r._state;if(ht(e),!Or(r)&&"writable"===t){const t=Br(e);Er(r,t)}return Dr(e),null},t=>("writable"===r._state&&Mr(e),function(e,t){e._inFlightWriteRequest._reject(t),e._inFlightWriteRequest=void 0,wr(e,t)}(r,t),null))}(e,r)}function Fr(e,t){"writable"===e._controlledWritableStream._state&&zr(e,t)}function Br(e){return Nr(e)<=0}function zr(e,t){const r=e._controlledWritableStream;Mr(e),Sr(r,t)}function Ur(e){return new TypeError(`WritableStream.prototype.${e} can only be used on a WritableStream`)}function Hr(e){return new TypeError(`WritableStreamDefaultController.prototype.${e} can only be used on a WritableStreamDefaultController`)}function Vr(e){return new TypeError(`WritableStreamDefaultWriter.prototype.${e} can only be used on a WritableStreamDefaultWriter`)}function $r(e){return new TypeError("Cannot "+e+" a stream using a released writer")}function Yr(e){e._closedPromise=oe((t,r)=>{e._closedPromise_resolve=t,e._closedPromise_reject=r,e._closedPromiseState="pending"})}function Jr(e,t){Yr(e),Gr(e,t)}function Gr(e,t){void 0!==e._closedPromise_reject&&(de(e._closedPromise),e._closedPromise_reject(t),e._closedPromise_resolve=void 0,e._closedPromise_reject=void 0,e._closedPromiseState="rejected")}function Kr(e){void 0!==e._closedPromise_resolve&&(e._closedPromise_resolve(void 0),e._closedPromise_resolve=void 0,e._closedPromise_reject=void 0,e._closedPromiseState="resolved")}function Qr(e){e._readyPromise=oe((t,r)=>{e._readyPromise_resolve=t,e._readyPromise_reject=r}),e._readyPromiseState="pending"}function Xr(e,t){Qr(e),eo(e,t)}function Zr(e){Qr(e),to(e)}function eo(e,t){void 0!==e._readyPromise_reject&&(de(e._readyPromise),e._readyPromise_reject(t),e._readyPromise_resolve=void 0,e._readyPromise_reject=void 0,e._readyPromiseState="rejected")}function to(e){void 0!==e._readyPromise_resolve&&(e._readyPromise_resolve(void 0),e._readyPromise_resolve=void 0,e._readyPromise_reject=void 0,e._readyPromiseState="fulfilled")}Object.defineProperties(xr.prototype,{abortReason:{enumerable:!0},signal:{enumerable:!0},error:{enumerable:!0}}),"symbol"==typeof Symbol.toStringTag&&Object.defineProperty(xr.prototype,Symbol.toStringTag,{value:"WritableStreamDefaultController",configurable:!0});const ro="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof global?global:void 0,oo=function(){const e=null==ro?void 0:ro.DOMException;return function(e){if("function"!=typeof e&&"object"!=typeof e)return!1;if("DOMException"!==e.name)return!1;try{return new e,!0}catch(e){return!1}}(e)?e:void 0}()||function(){const e=function(e,t){this.message=e||"",this.name=t||"Error",Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)};return Q(e,"DOMException"),e.prototype=Object.create(Error.prototype),Object.defineProperty(e.prototype,"constructor",{value:e,writable:!0,configurable:!0}),e}();function no(e,t,r,o,n,i){const a=Fe(e),s=br(t);e._disturbed=!0;let l=!1,c=ne(void 0);return oe((u,d)=>{let f;if(void 0!==i){if(f=()=>{const r=void 0!==i.reason?i.reason:new oo("Aborted","AbortError"),a=[];o||a.push(()=>"writable"===t._state?_r(t,r):ne(void 0)),n||a.push(()=>"readable"===e._state?ko(e,r):ne(void 0)),v(()=>Promise.all(a.map(e=>e())),!0,r)},i.aborted)return void f();i.addEventListener("abort",f)}var p,h,b;if(m(e,a._closedPromise,e=>(o?_(!0,e):v(()=>_r(t,e),!0,e),null)),m(t,s._closedPromise,t=>(n?_(!0,t):v(()=>ko(e,t),!0,t),null)),p=e,h=a._closedPromise,b=()=>(r?_():v(()=>function(e){const t=e._ownerWritableStream,r=t._state;return Or(t)||"closed"===r?ne(void 0):"errored"===r?ie(t._storedError):Ar(e)}(s)),null),"closed"===p._state?b():le(h,b),Or(t)||"closed"===t._state){const t=new TypeError("the destination writable stream closed before all data could be piped to it");n?_(!0,t):v(()=>ko(e,t),!0,t)}function y(){const e=c;return ae(c,()=>e!==c?y():void 0)}function m(e,t,r){"errored"===e._state?r(e._storedError):ce(t,r)}function v(e,r,o){function n(){return se(e(),()=>g(r,o),e=>g(!0,e)),null}l||(l=!0,"writable"!==t._state||Or(t)?n():le(y(),n))}function _(e,r){l||(l=!0,"writable"!==t._state||Or(t)?g(e,r):le(y(),()=>g(e,r)))}function g(e,t){return jr(s),Pe(a),void 0!==i&&i.removeEventListener("abort",f),e?d(t):u(void 0),null}de(oe((e,t)=>{!function r(o){o?e():ae(l?ne(!0):ae(s._readyPromise,()=>oe((e,t)=>{Ye(a,{_chunkSteps:t=>{c=ae(Ir(s,t),void 0,J),e(!1)},_closeSteps:()=>e(!0),_errorSteps:t})})),r,t)}(!1)}))})}class io{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!ao(this))throw mo("desiredSize");return ho(this)}close(){if(!ao(this))throw mo("close");if(!bo(this))throw new TypeError("The stream is not in a state that permits close");uo(this)}enqueue(e){if(!ao(this))throw mo("enqueue");if(!bo(this))throw new TypeError("The stream is not in a state that permits enqueue");return fo(this,e)}error(e){if(!ao(this))throw mo("error");po(this,e)}[ve](e){yt(this);const t=this._cancelAlgorithm(e);return co(this),t}[_e](e){const t=this._controlledReadableStream;if(this._queue.length>0){const r=ht(this);this._closeRequested&&0===this._queue.length?(co(this),jo(t)):so(this),e._chunkSteps(r)}else Be(t,e),so(this)}[ge](){}}function ao(e){return!!G(e)&&!!Object.prototype.hasOwnProperty.call(e,"_controlledReadableStream")&&e instanceof io}function so(e){lo(e)&&(e._pulling?e._pullAgain=!0:(e._pulling=!0,se(e._pullAlgorithm(),()=>(e._pulling=!1,e._pullAgain&&(e._pullAgain=!1,so(e)),null),t=>(po(e,t),null))))}function lo(e){const t=e._controlledReadableStream;return!!bo(e)&&(!!e._started&&(!!(Ao(t)&&Ue(t)>0)||ho(e)>0))}function co(e){e._pullAlgorithm=void 0,e._cancelAlgorithm=void 0,e._strategySizeAlgorithm=void 0}function uo(e){if(!bo(e))return;const t=e._controlledReadableStream;e._closeRequested=!0,0===e._queue.length&&(co(e),jo(t))}function fo(e,t){if(!bo(e))return;const r=e._controlledReadableStream;if(Ao(r)&&Ue(r)>0)ze(r,t,!1);else{let r;try{r=e._strategySizeAlgorithm(t)}catch(t){throw po(e,t),t}try{bt(e,t,r)}catch(t){throw po(e,t),t}}so(e)}function po(e,t){const r=e._controlledReadableStream;"readable"===r._state&&(yt(e),co(e),Io(r,t))}function ho(e){const t=e._controlledReadableStream._state;return"errored"===t?null:"closed"===t?0:e._strategyHWM-e._queueTotalSize}function bo(e){const t=e._controlledReadableStream._state;return!e._closeRequested&&"readable"===t}function yo(e,t,r,o,n,i,a){t._controlledReadableStream=e,t._queue=void 0,t._queueTotalSize=void 0,yt(t),t._started=!1,t._closeRequested=!1,t._pullAgain=!1,t._pulling=!1,t._strategySizeAlgorithm=a,t._strategyHWM=i,t._pullAlgorithm=o,t._cancelAlgorithm=n,e._readableStreamController=t,se(ne(r()),()=>(t._started=!0,so(t),null),e=>(po(t,e),null))}function mo(e){return new TypeError(`ReadableStreamDefaultController.prototype.${e} can only be used on a ReadableStreamDefaultController`)}function vo(e){return G(t=e)&&void 0!==t.getReader?function(e){let t;return t=To(J,(function(){let r;try{r=e.read()}catch(r){return ie(r)}return ue(r,e=>{if(!G(e))throw new TypeError("The promise returned by the reader.read() method must fulfill with an object");if(e.done)uo(t._readableStreamController);else{const r=e.value;fo(t._readableStreamController,r)}})}),(function(t){try{return ne(e.cancel(t))}catch(t){return ie(t)}}),0),t}(e.getReader()):function(e){let t;const r=function e(t,r="sync",o){if(void 0===o)if("async"===r){if(void 0===(o=nt(t,at)))return function(e){const t={next(){let t;try{t=st(e)}catch(e){return ie(e)}return it(t)},return(t){let r;try{const o=nt(e.iterator,"return");if(void 0===o)return ne({done:!0,value:t});r=pe(o,e.iterator,[t])}catch(e){return ie(e)}return G(r)?it(r):ie(new TypeError("The iterator.return() method must return an object"))}};return{iterator:t,nextMethod:t.next,done:!1}}(e(t,"sync",nt(t,Symbol.iterator)))}else o=nt(t,Symbol.iterator);if(void 0===o)throw new TypeError("The object is not iterable");const n=pe(o,t,[]);if(!G(n))throw new TypeError("The iterator method must return an object");return{iterator:n,nextMethod:n.next,done:!1}}(e,"async");return t=To(J,(function(){let e;try{e=st(r)}catch(e){return ie(e)}return ue(ne(e),e=>{if(!G(e))throw new TypeError("The promise returned by the iterator.next() method must fulfill with an object");if(e.done)uo(t._readableStreamController);else{const r=e.value;fo(t._readableStreamController,r)}})}),(function(e){const t=r.iterator;let o;try{o=nt(t,"return")}catch(e){return ie(e)}return void 0===o?ne(void 0):ue(he(o,t,[e]),e=>{if(!G(e))throw new TypeError("The promise returned by the iterator.return() method must fulfill with an object")})}),0),t}(e);var t}function _o(e,t,r){return Ie(e,r),r=>he(e,t,[r])}function go(e,t,r){return Ie(e,r),r=>he(e,t,[r])}function wo(e,t,r){return Ie(e,r),r=>pe(e,t,[r])}function So(e,t){if("bytes"!=(e=""+e))throw new TypeError(`${t} '${e}' is not a valid enumeration value for ReadableStreamType`);return e}function Po(e,t){je(e,t);const r=null==e?void 0:e.preventAbort,o=null==e?void 0:e.preventCancel,n=null==e?void 0:e.preventClose,i=null==e?void 0:e.signal;return void 0!==i&&function(e,t){if(!function(e){if("object"!=typeof e||null===e)return!1;try{return"boolean"==typeof e.aborted}catch(e){return!1}}(e))throw new TypeError(t+" is not an AbortSignal.")}(i,t+" has member 'signal' that"),{preventAbort:Boolean(r),preventCancel:Boolean(o),preventClose:Boolean(n),signal:i}}Object.defineProperties(io.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},desiredSize:{enumerable:!0}}),Q(io.prototype.close,"close"),Q(io.prototype.enqueue,"enqueue"),Q(io.prototype.error,"error"),"symbol"==typeof Symbol.toStringTag&&Object.defineProperty(io.prototype,Symbol.toStringTag,{value:"ReadableStreamDefaultController",configurable:!0});class Oo{constructor(e={},t={}){void 0===e?e=null:qe(e,"First parameter");const r=ar(t,"Second parameter"),o=function(e,t){je(e,t);const r=e,o=null==r?void 0:r.autoAllocateChunkSize,n=null==r?void 0:r.cancel,i=null==r?void 0:r.pull,a=null==r?void 0:r.start,s=null==r?void 0:r.type;return{autoAllocateChunkSize:void 0===o?void 0:Ne(o,t+" has member 'autoAllocateChunkSize' that"),cancel:void 0===n?void 0:_o(n,r,t+" has member 'cancel' that"),pull:void 0===i?void 0:go(i,r,t+" has member 'pull' that"),start:void 0===a?void 0:wo(a,r,t+" has member 'start' that"),type:void 0===s?void 0:So(s,t+" has member 'type' that")}}(e,"First parameter");if(Co(this),"bytes"===o.type){if(void 0!==r.size)throw new RangeError("The strategy for a byte stream cannot have a size function");!function(e,t,r){const o=Object.create(_t.prototype);let n,i,a;n=void 0!==t.start?()=>t.start(o):()=>{},i=void 0!==t.pull?()=>t.pull(o):()=>ne(void 0),a=void 0!==t.cancel?e=>t.cancel(e):()=>ne(void 0);const s=t.autoAllocateChunkSize;if(0===s)throw new TypeError("autoAllocateChunkSize must be greater than 0");Vt(e,o,n,i,a,r,s)}(this,o,nr(r,0))}else{const e=ir(r);!function(e,t,r,o){const n=Object.create(io.prototype);let i,a,s;i=void 0!==t.start?()=>t.start(n):()=>{},a=void 0!==t.pull?()=>t.pull(n):()=>ne(void 0),s=void 0!==t.cancel?e=>t.cancel(e):()=>ne(void 0),yo(e,n,i,a,s,r,o)}(this,o,nr(r,1),e)}}get locked(){if(!Ro(this))throw qo("locked");return Ao(this)}cancel(e){return Ro(this)?Ao(this)?ie(new TypeError("Cannot cancel a stream that already has a reader")):ko(this,e):ie(qo("cancel"))}getReader(e){if(!Ro(this))throw qo("getReader");return void 0===function(e,t){je(e,t);const r=null==e?void 0:e.mode;return{mode:void 0===r?void 0:Jt(r,t+" has member 'mode' that")}}(e,"First parameter").mode?Fe(this):Gt(this)}pipeThrough(e,t={}){if(!Ro(this))throw qo("pipeThrough");xe(e,1,"pipeThrough");const r=function(e,t){je(e,t);const r=null==e?void 0:e.readable;We(r,"readable","ReadableWritablePair"),De(r,t+" has member 'readable' that");const o=null==e?void 0:e.writable;return We(o,"writable","ReadableWritablePair"),fr(o,t+" has member 'writable' that"),{readable:r,writable:o}}(e,"First parameter"),o=Po(t,"Second parameter");if(Ao(this))throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked ReadableStream");if(vr(r.writable))throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked WritableStream");return de(no(this,r.writable,o.preventClose,o.preventAbort,o.preventCancel,o.signal)),r.readable}pipeTo(e,t={}){if(!Ro(this))return ie(qo("pipeTo"));if(void 0===e)return ie("Parameter 1 is required in 'pipeTo'.");if(!mr(e))return ie(new TypeError("ReadableStream.prototype.pipeTo's first argument must be a WritableStream"));let r;try{r=Po(t,"Second parameter")}catch(e){return ie(e)}return Ao(this)?ie(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked ReadableStream")):vr(e)?ie(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked WritableStream")):no(this,e,r.preventClose,r.preventAbort,r.preventCancel,r.signal)}tee(){if(!Ro(this))throw qo("tee");return Ze(function(e,t){return gt(e._readableStreamController)?function(e){let t,r,o,n,i,a=Fe(e),s=!1,l=!1,c=!1,u=!1,d=!1;const f=oe(e=>{i=e});function p(e){ce(e._closedPromise,t=>(e!==a||(Dt(o._readableStreamController,t),Dt(n._readableStreamController,t),u&&d||i(void 0)),null))}function h(){er(a)&&(Pe(a),a=Fe(e),p(a)),Ye(a,{_chunkSteps:t=>{fe(()=>{l=!1,c=!1;const r=t;let a=t;if(!u&&!d)try{a=pt(t)}catch(t){return Dt(o._readableStreamController,t),Dt(n._readableStreamController,t),void i(ko(e,t))}u||Nt(o._readableStreamController,r),d||Nt(n._readableStreamController,a),s=!1,l?y():c&&m()})},_closeSteps:()=>{s=!1,u||Mt(o._readableStreamController),d||Mt(n._readableStreamController),o._readableStreamController._pendingPullIntos.length>0&&Ut(o._readableStreamController,0),n._readableStreamController._pendingPullIntos.length>0&&Ut(n._readableStreamController,0),u&&d||i(void 0)},_errorSteps:()=>{s=!1}})}function b(t,r){$e(a)&&(Pe(a),a=Gt(e),p(a));const f=r?n:o,h=r?o:n;tr(a,t,1,{_chunkSteps:t=>{fe(()=>{l=!1,c=!1;const o=r?d:u;if(r?u:d)o||Ht(f._readableStreamController,t);else{let r;try{r=pt(t)}catch(t){return Dt(f._readableStreamController,t),Dt(h._readableStreamController,t),void i(ko(e,t))}o||Ht(f._readableStreamController,t),Nt(h._readableStreamController,r)}s=!1,l?y():c&&m()})},_closeSteps:e=>{s=!1;const t=r?d:u,o=r?u:d;t||Mt(f._readableStreamController),o||Mt(h._readableStreamController),void 0!==e&&(t||Ht(f._readableStreamController,e),!o&&h._readableStreamController._pendingPullIntos.length>0&&Ut(h._readableStreamController,0)),t&&o||i(void 0)},_errorSteps:()=>{s=!1}})}function y(){if(s)return l=!0,ne(void 0);s=!0;const e=Bt(o._readableStreamController);return null===e?h():b(e._view,!1),ne(void 0)}function m(){if(s)return c=!0,ne(void 0);s=!0;const e=Bt(n._readableStreamController);return null===e?h():b(e._view,!0),ne(void 0)}function v(){}return o=Eo(v,y,(function(o){if(u=!0,t=o,d){const o=Ze([t,r]),n=ko(e,o);i(n)}return f})),n=Eo(v,m,(function(o){if(d=!0,r=o,u){const o=Ze([t,r]),n=ko(e,o);i(n)}return f})),p(a),[o,n]}(e):function(e,t){const r=Fe(e);let o,n,i,a,s,l=!1,c=!1,u=!1,d=!1;const f=oe(e=>{s=e});function p(){return l?(c=!0,ne(void 0)):(l=!0,Ye(r,{_chunkSteps:e=>{fe(()=>{c=!1;const t=e,r=e;u||fo(i._readableStreamController,t),d||fo(a._readableStreamController,r),l=!1,c&&p()})},_closeSteps:()=>{l=!1,u||uo(i._readableStreamController),d||uo(a._readableStreamController),u&&d||s(void 0)},_errorSteps:()=>{l=!1}}),ne(void 0))}function h(){}return i=To(h,p,(function(t){if(u=!0,o=t,d){const t=Ze([o,n]),r=ko(e,t);s(r)}return f})),a=To(h,p,(function(t){if(d=!0,n=t,u){const t=Ze([o,n]),r=ko(e,t);s(r)}return f})),ce(r._closedPromise,e=>(po(i._readableStreamController,e),po(a._readableStreamController,e),u&&d||s(void 0),null)),[i,a]}(e)}(this))}values(e){if(!Ro(this))throw qo("values");return function(e,t){const r=Fe(e),o=new lt(r,t),n=Object.create(ct);return n._asyncIteratorImpl=o,n}(this,function(e,t){je(e,"First parameter");const r=null==e?void 0:e.preventCancel;return{preventCancel:Boolean(r)}}(e).preventCancel)}[at](e){return this.values(e)}static from(e){return vo(e)}}function To(e,t,r,o=1,n=(()=>1)){const i=Object.create(Oo.prototype);return Co(i),yo(i,Object.create(io.prototype),e,t,r,o,n),i}function Eo(e,t,r){const o=Object.create(Oo.prototype);return Co(o),Vt(o,Object.create(_t.prototype),e,t,r,0,void 0),o}function Co(e){e._state="readable",e._reader=void 0,e._storedError=void 0,e._disturbed=!1}function Ro(e){return!!G(e)&&!!Object.prototype.hasOwnProperty.call(e,"_readableStreamController")&&e instanceof Oo}function Ao(e){return void 0!==e._reader}function ko(e,t){if(e._disturbed=!0,"closed"===e._state)return ne(void 0);if("errored"===e._state)return ie(e._storedError);jo(e);const r=e._reader;if(void 0!==r&&er(r)){const e=r._readIntoRequests;r._readIntoRequests=new be,e.forEach(e=>{e._closeSteps(void 0)})}return ue(e._readableStreamController[ve](t),J)}function jo(e){e._state="closed";const t=e._reader;if(void 0!==t&&(Re(t),$e(t))){const e=t._readRequests;t._readRequests=new be,e.forEach(e=>{e._closeSteps()})}}function Io(e,t){e._state="errored",e._storedError=t;const r=e._reader;void 0!==r&&(Ce(r,t),$e(r)?Je(r,t):rr(r,t))}function qo(e){return new TypeError(`ReadableStream.prototype.${e} can only be used on a ReadableStream`)}function xo(e,t){je(e,t);const r=null==e?void 0:e.highWaterMark;return We(r,"highWaterMark","QueuingStrategyInit"),{highWaterMark:Le(r)}}Object.defineProperties(Oo,{from:{enumerable:!0}}),Object.defineProperties(Oo.prototype,{cancel:{enumerable:!0},getReader:{enumerable:!0},pipeThrough:{enumerable:!0},pipeTo:{enumerable:!0},tee:{enumerable:!0},values:{enumerable:!0},locked:{enumerable:!0}}),Q(Oo.from,"from"),Q(Oo.prototype.cancel,"cancel"),Q(Oo.prototype.getReader,"getReader"),Q(Oo.prototype.pipeThrough,"pipeThrough"),Q(Oo.prototype.pipeTo,"pipeTo"),Q(Oo.prototype.tee,"tee"),Q(Oo.prototype.values,"values"),"symbol"==typeof Symbol.toStringTag&&Object.defineProperty(Oo.prototype,Symbol.toStringTag,{value:"ReadableStream",configurable:!0}),Object.defineProperty(Oo.prototype,at,{value:Oo.prototype.values,writable:!0,configurable:!0});const Wo=e=>e.byteLength;Q(Wo,"size");class Lo{constructor(e){xe(e,1,"ByteLengthQueuingStrategy"),e=xo(e,"First parameter"),this._byteLengthQueuingStrategyHighWaterMark=e.highWaterMark}get highWaterMark(){if(!No(this))throw Mo("highWaterMark");return this._byteLengthQueuingStrategyHighWaterMark}get size(){if(!No(this))throw Mo("size");return Wo}}function Mo(e){return new TypeError(`ByteLengthQueuingStrategy.prototype.${e} can only be used on a ByteLengthQueuingStrategy`)}function No(e){return!!G(e)&&!!Object.prototype.hasOwnProperty.call(e,"_byteLengthQueuingStrategyHighWaterMark")&&e instanceof Lo}Object.defineProperties(Lo.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),"symbol"==typeof Symbol.toStringTag&&Object.defineProperty(Lo.prototype,Symbol.toStringTag,{value:"ByteLengthQueuingStrategy",configurable:!0});const Do=()=>1;Q(Do,"size");class Fo{constructor(e){xe(e,1,"CountQueuingStrategy"),e=xo(e,"First parameter"),this._countQueuingStrategyHighWaterMark=e.highWaterMark}get highWaterMark(){if(!zo(this))throw Bo("highWaterMark");return this._countQueuingStrategyHighWaterMark}get size(){if(!zo(this))throw Bo("size");return Do}}function Bo(e){return new TypeError(`CountQueuingStrategy.prototype.${e} can only be used on a CountQueuingStrategy`)}function zo(e){return!!G(e)&&!!Object.prototype.hasOwnProperty.call(e,"_countQueuingStrategyHighWaterMark")&&e instanceof Fo}function Uo(e,t,r){return Ie(e,r),r=>he(e,t,[r])}function Ho(e,t,r){return Ie(e,r),r=>pe(e,t,[r])}function Vo(e,t,r){return Ie(e,r),(r,o)=>he(e,t,[r,o])}function $o(e,t,r){return Ie(e,r),r=>he(e,t,[r])}Object.defineProperties(Fo.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),"symbol"==typeof Symbol.toStringTag&&Object.defineProperty(Fo.prototype,Symbol.toStringTag,{value:"CountQueuingStrategy",configurable:!0});class Yo{constructor(e={},t={},r={}){void 0===e&&(e=null);const o=ar(t,"Second parameter"),n=ar(r,"Third parameter"),i=function(e,t){je(e,t);const r=null==e?void 0:e.cancel,o=null==e?void 0:e.flush,n=null==e?void 0:e.readableType,i=null==e?void 0:e.start,a=null==e?void 0:e.transform,s=null==e?void 0:e.writableType;return{cancel:void 0===r?void 0:$o(r,e,t+" has member 'cancel' that"),flush:void 0===o?void 0:Uo(o,e,t+" has member 'flush' that"),readableType:n,start:void 0===i?void 0:Ho(i,e,t+" has member 'start' that"),transform:void 0===a?void 0:Vo(a,e,t+" has member 'transform' that"),writableType:s}}(e,"First parameter");if(void 0!==i.readableType)throw new RangeError("Invalid readableType specified");if(void 0!==i.writableType)throw new RangeError("Invalid writableType specified");const a=nr(n,0),s=ir(n),l=nr(o,1),c=ir(o);let u;!function(e,t,r,o,n,i){function a(){return t}e._writable=function(e,t,r,o,n=1,i=(()=>1)){const a=Object.create(hr.prototype);return yr(a),Lr(a,Object.create(xr.prototype),e,t,r,o,n,i),a}(a,(function(t){return function(e,t){const r=e._transformStreamController;return e._backpressure?ue(e._backpressureChangePromise,()=>{const o=e._writable;if("erroring"===o._state)throw o._storedError;return on(r,t)}):on(r,t)}(e,t)}),(function(){return function(e){const t=e._transformStreamController;if(void 0!==t._finishPromise)return t._finishPromise;const r=e._readable;t._finishPromise=oe((e,r)=>{t._finishPromise_resolve=e,t._finishPromise_reject=r});const o=t._flushAlgorithm();return tn(t),se(o,()=>("errored"===r._state?sn(t,r._storedError):(uo(r._readableStreamController),an(t)),null),e=>(po(r._readableStreamController,e),sn(t,e),null)),t._finishPromise}(e)}),(function(t){return function(e,t){const r=e._transformStreamController;if(void 0!==r._finishPromise)return r._finishPromise;const o=e._readable;r._finishPromise=oe((e,t)=>{r._finishPromise_resolve=e,r._finishPromise_reject=t});const n=r._cancelAlgorithm(t);return tn(r),se(n,()=>("errored"===o._state?sn(r,o._storedError):(po(o._readableStreamController,t),an(r)),null),e=>(po(o._readableStreamController,e),sn(r,e),null)),r._finishPromise}(e,t)}),r,o),e._readable=To(a,(function(){return function(e){return Xo(e,!1),e._backpressureChangePromise}(e)}),(function(t){return function(e,t){const r=e._transformStreamController;if(void 0!==r._finishPromise)return r._finishPromise;const o=e._writable;r._finishPromise=oe((e,t)=>{r._finishPromise_resolve=e,r._finishPromise_reject=t});const n=r._cancelAlgorithm(t);return tn(r),se(n,()=>("errored"===o._state?sn(r,o._storedError):(Fr(o._writableStreamController,t),Qo(e),an(r)),null),t=>(Fr(o._writableStreamController,t),Qo(e),sn(r,t),null)),r._finishPromise}(e,t)}),n,i),e._backpressure=void 0,e._backpressureChangePromise=void 0,e._backpressureChangePromise_resolve=void 0,Xo(e,!0),e._transformStreamController=void 0}(this,oe(e=>{u=e}),l,c,a,s),function(e,t){const r=Object.create(Zo.prototype);let o,n,i;o=void 0!==t.transform?e=>t.transform(e,r):e=>{try{return rn(r,e),ne(void 0)}catch(e){return ie(e)}},n=void 0!==t.flush?()=>t.flush(r):()=>ne(void 0),i=void 0!==t.cancel?e=>t.cancel(e):()=>ne(void 0),function(e,t,r,o,n){t._controlledTransformStream=e,e._transformStreamController=t,t._transformAlgorithm=r,t._flushAlgorithm=o,t._cancelAlgorithm=n,t._finishPromise=void 0,t._finishPromise_resolve=void 0,t._finishPromise_reject=void 0}(e,r,o,n,i)}(this,i),void 0!==i.start?u(i.start(this._transformStreamController)):u(void 0)}get readable(){if(!Jo(this))throw ln("readable");return this._readable}get writable(){if(!Jo(this))throw ln("writable");return this._writable}}function Jo(e){return!!G(e)&&!!Object.prototype.hasOwnProperty.call(e,"_transformStreamController")&&e instanceof Yo}function Go(e,t){po(e._readable._readableStreamController,t),Ko(e,t)}function Ko(e,t){tn(e._transformStreamController),Fr(e._writable._writableStreamController,t),Qo(e)}function Qo(e){e._backpressure&&Xo(e,!1)}function Xo(e,t){void 0!==e._backpressureChangePromise&&e._backpressureChangePromise_resolve(),e._backpressureChangePromise=oe(t=>{e._backpressureChangePromise_resolve=t}),e._backpressure=t}Object.defineProperties(Yo.prototype,{readable:{enumerable:!0},writable:{enumerable:!0}}),"symbol"==typeof Symbol.toStringTag&&Object.defineProperty(Yo.prototype,Symbol.toStringTag,{value:"TransformStream",configurable:!0});class Zo{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!en(this))throw nn("desiredSize");return ho(this._controlledTransformStream._readable._readableStreamController)}enqueue(e){if(!en(this))throw nn("enqueue");rn(this,e)}error(e){if(!en(this))throw nn("error");var t;t=e,Go(this._controlledTransformStream,t)}terminate(){if(!en(this))throw nn("terminate");!function(e){const t=e._controlledTransformStream;uo(t._readable._readableStreamController);Ko(t,new TypeError("TransformStream terminated"))}(this)}}function en(e){return!!G(e)&&!!Object.prototype.hasOwnProperty.call(e,"_controlledTransformStream")&&e instanceof Zo}function tn(e){e._transformAlgorithm=void 0,e._flushAlgorithm=void 0,e._cancelAlgorithm=void 0}function rn(e,t){const r=e._controlledTransformStream,o=r._readable._readableStreamController;if(!bo(o))throw new TypeError("Readable side is not in a state that permits enqueue");try{fo(o,t)}catch(e){throw Ko(r,e),r._readable._storedError}(function(e){return!lo(e)})(o)!==r._backpressure&&Xo(r,!0)}function on(e,t){return ue(e._transformAlgorithm(t),void 0,t=>{throw Go(e._controlledTransformStream,t),t})}function nn(e){return new TypeError(`TransformStreamDefaultController.prototype.${e} can only be used on a TransformStreamDefaultController`)}function an(e){void 0!==e._finishPromise_resolve&&(e._finishPromise_resolve(),e._finishPromise_resolve=void 0,e._finishPromise_reject=void 0)}function sn(e,t){void 0!==e._finishPromise_reject&&(de(e._finishPromise),e._finishPromise_reject(t),e._finishPromise_resolve=void 0,e._finishPromise_reject=void 0)}function ln(e){return new TypeError(`TransformStream.prototype.${e} can only be used on a TransformStream`)}Object.defineProperties(Zo.prototype,{enqueue:{enumerable:!0},error:{enumerable:!0},terminate:{enumerable:!0},desiredSize:{enumerable:!0}}),Q(Zo.prototype.enqueue,"enqueue"),Q(Zo.prototype.error,"error"),Q(Zo.prototype.terminate,"terminate"),"symbol"==typeof Symbol.toStringTag&&Object.defineProperty(Zo.prototype,Symbol.toStringTag,{value:"TransformStreamDefaultController",configurable:!0});var cn,un=(cn=function(e,t){return(cn=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}cn(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),dn=function(){return(dn=Object.assign||function(e){for(var t,r=1,o=arguments.length;r<o;r++)for(var n in t=arguments[r])Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e}).apply(this,arguments)},fn=function(e,t,r,o){return new(r||(r=Promise))((function(n,i){function a(e){try{l(o.next(e))}catch(e){i(e)}}function s(e){try{l(o.throw(e))}catch(e){i(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,s)}l((o=o.apply(e,t||[])).next())}))},pn=function(e,t){var r,o,n,i,a={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(r)throw new TypeError("Generator is already executing.");for(;a;)try{if(r=1,o&&(n=2&i[0]?o.return:i[0]?o.throw||((n=o.return)&&n.call(o),0):o.next)&&!(n=n.call(o,i[1])).done)return n;switch(o=0,n&&(i=[2&i[0],n.value]),i[0]){case 0:case 1:n=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,o=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(n=a.trys,(n=n.length>0&&n[n.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!n||i[1]>n[0]&&i[1]<n[3])){a.label=i[1];break}if(6===i[0]&&a.label<n[1]){a.label=n[1],n=i;break}if(n&&a.label<n[2]){a.label=n[2],a.ops.push(i);break}n[2]&&a.ops.pop(),a.trys.pop();continue}i=t.call(e,a)}catch(e){i=[6,e],o=0}finally{r=n=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,s])}}},hn=function(e,t){var r={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(r[o]=e[o]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var n=0;for(o=Object.getOwnPropertySymbols(e);n<o.length;n++)t.indexOf(o[n])<0&&Object.prototype.propertyIsEnumerable.call(e,o[n])&&(r[o[n]]=e[o[n]])}return r};var bn=function(e){function t(t){void 0===t&&(t={});var r=e.call(this)||this,o=t.timeout,n=t.timeoutMsg,i=t.restrictedMethods;return r._timeout=o||0,r._timeoutMsg=n||"请求超时",r._restrictedMethods=i||["get","post","upload","download"],r}return un(t,e),t.prototype.post=function(e){var t=this;return new Promise((function(r,o){var n=e.url,i=e.data,a=e.headers,s=wx.request({url:u("https:",n),data:i,timeout:t._timeout,method:"POST",header:a,success:function(e){e.statusCode>=200&&e.statusCode<300?r({statusCode:e.statusCode,status:e.statusCode,data:e.data}):o(e)},fail:function(e){o(e)},complete:function(e){if(e&&e.errMsg&&(t._timeout&&-1!==t._restrictedMethods.indexOf("post")&&"request:fail timeout"===e.errMsg)){console.warn(t._timeoutMsg);try{s.abort()}catch(e){}}}})}))},t.prototype.get=function(e){var t=this;return new Promise((function(r,o){var n=e.url,i=e.body,a=e.headers,s=u("https:",n),l=wx.request({url:s,data:i,timeout:t._timeout,method:"GET",header:a,success:function(e){e.statusCode>=200&&e.statusCode<300?r({statusCode:e.statusCode,status:e.statusCode,data:e.data}):o(e)},fail:function(e){o(e)},complete:function(e){if(e&&e.errMsg&&(t._timeout&&-1!==t._restrictedMethods.indexOf("get")&&e.errMsg.includes("timeout"))){console.warn(t._timeoutMsg);try{l.abort()}catch(e){console.warn("Error when aborting requestTask",e)}}}})}))},t.prototype.upload=function(e){var t=this,r=this;return new Promise((function(o){return fn(t,void 0,void 0,(function(){var t,n,i,a,s,l;return pn(this,(function(c){return t=e.url,n=e.file,i=e.data,a=e.headers,s=e.onUploadProgress,l=wx.uploadFile({url:t,filePath:n,name:"file",formData:dn({},i),header:a,timeout:this._timeout,success:function(e){var t={statusCode:e.statusCode,data:e.data||{}};200===e.statusCode&&i.success_action_status&&(t.statusCode=parseInt(i.success_action_status,10)),o(t)},fail:function(e){o(e)},complete:function(e){if(e&&e.errMsg&&(r._timeout&&-1!==r._restrictedMethods.indexOf("upload")&&"request:fail timeout"===e.errMsg)){console.warn(r._timeoutMsg);try{l.abort()}catch(e){}}}}),s&&l.onProgressUpdate((function(e){s(e)})),[2]}))}))}))},t.prototype.download=function(e){var t=this,r=this;return new Promise((function(o,n){var i=e.url,a=e.headers,s=wx.downloadFile({url:u("https:",i),header:a,timeout:t._timeout,success:function(e){200===e.statusCode&&e.tempFilePath?o({statusCode:200,tempFilePath:e.tempFilePath}):o(e)},fail:function(e){n(e)},complete:function(e){if(e&&e.errMsg&&(r._timeout&&-1!==r._restrictedMethods.indexOf("download")&&"request:fail timeout"===e.errMsg)){console.warn(r._timeoutMsg);try{s.abort()}catch(e){}}}})}))},t.prototype.fetch=function(e){var t=e.url,r=e.body,o=e.enableAbort,n=e.headers,i=e.method,a=e.stream,s=void 0!==a&&a,l=e.signal,c=e.timeout,d=this,f=null!=c?c:this._timeout,p=null,h=new Oo({start:function(e){p=e},cancel:function(){p=null}});return new Promise((function(e,a){s&&e({data:h});var c=wx.request({url:u("https:",t),data:r,timeout:f,method:i.toUpperCase(),header:n,success:function(t){var r;null===(r=p)||void 0===r||r.close(),!s&&e(t)},fail:function(e){var t;if(null===(t=p)||void 0===t||t.close(),a(e),s)throw e},complete:function(e){if(e&&e.errMsg&&(f&&-1!==d._restrictedMethods.indexOf("post")&&o&&"request:fail timeout"===e.errMsg)){console.warn(d._timeoutMsg);try{c.abort()}catch(e){console.warn("Error when aborting requestTask",e)}}},enableChunked:s});if(c.onChunkReceived((function(e){var t;null===(t=p)||void 0===t||t.enqueue(new Uint8Array(e.data))})),l){var b=function(){try{c.abort()}catch(e){console.warn("Error when aborting requestTask",e)}};l.aborted?b():l.addEventListener("abort",(function(){return b()}))}}))},t}(l),yn={setItem:function(e,t){wx.setStorageSync(e,t)},getItem:function(e){return wx.getStorageSync(e)},removeItem:function(e){wx.removeStorageSync(e)},clear:function(){wx.clearStorageSync()}},mn=function(e,t){void 0===t&&(t={});var r=wx.connectSocket(dn({url:e},t));return{set onopen(e){r.onOpen(e)},set onmessage(e){r.onMessage(e)},set onclose(e){r.onClose(e)},set onerror(e){r.onError(e)},send:function(e){return r.send({data:e})},close:function(e,t){return r.close({code:e,reason:t})},get readyState(){return r.readyState},CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3}};function vn(e){var t={},r=e.replace(/^[?#]/,"");return r?(r.split("&").forEach((function(e){var r=e.split("="),o=r[0],n=r[1];o=decodeURIComponent(o),n=decodeURIComponent(n),o&&(t[o]?Array.isArray(t[o])?t[o].push(n):t[o]=[t[o],n]:t[o]=n)})),t):t}const _n={genAdapter:function(e){return{root:{globalThis:{}},reqClass:bn,wsClass:mn,captchaOptions:{openURIWithCallback:function(t){var r=e.EventBus,o={},n=t;console.log("openURIWithCallback",t);var i=t.match(/^(data:.*?)(\?[^#\s]*)?$/);if(i){n=i[1],console.log("openURIWithCallback url",n);var a=i[2];a&&(o=vn(a))}console.log("openURIWithCallback queryObj",o);var s=o.token,l=hn(o,["token"]);return/^data:/.test(n)&&!s?Promise.reject({error:"invalid_argument",error_description:"invalie captcha data: "+t}):s?new Promise((function(e){console.log("wait for captcha..."),r.$emit("CAPTCHA_DATA_CHANGE",dn(dn({},l),{token:s,url:n})),r.$once("RESOLVE_CAPTCHA_DATA",(function(t){e(t)}))})):Promise.reject({error:"unimplemented",error_description:"need to impl captcha data"})}},localStorage:yn,primaryStorage:i.local,getAppSign:function(){var e=wx.getAccountInfoSync();return"undefined"!=typeof App||"undefined"!=typeof getApp||wx.onAppHide||wx.offAppHide||wx.onAppShow||wx.offAppShow?e&&e.miniProgram?e.miniProgram.appId:"":e&&e.plugin?e.plugin.appId:""}}},isMatch:function(){if("undefined"==typeof wx)return!1;if("undefined"==typeof Page)return!1;if(!wx.getSystemInfoSync)return!1;if(!wx.getStorageSync)return!1;if(!wx.setStorageSync)return!1;if(!wx.connectSocket)return!1;if(!wx.request)return!1;try{if(!wx.getSystemInfoSync())return!1;if("qq"===wx.getSystemInfoSync().AppPlatform)return!1}catch(e){return!1}return!0},runtime:"wx_mp"};var gn=function(){return(gn=Object.assign||function(e){for(var t,r=1,o=arguments.length;r<o;r++)for(var n in t=arguments[r])Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e}).apply(this,arguments)},wn=function(e,t){var r={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(r[o]=e[o]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var n=0;for(o=Object.getOwnPropertySymbols(e);n<o.length;n++)t.indexOf(o[n])<0&&Object.prototype.propertyIsEnumerable.call(e,o[n])&&(r[o[n]]=e[o[n]])}return r},Sn={},Pn=function(){return(Pn=Object.assign||function(e){for(var t,r=1,o=arguments.length;r<o;r++)for(var n in t=arguments[r])Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e}).apply(this,arguments)},On=A,Tn={},En={};function Cn(e){var t=e.env,r=e.platformInfo,o={userInfoKey:"".concat("user_info","_").concat(t)};Tn[t]=Tn[t]||new On(Pn(Pn({},e),{keys:o,platformInfo:r})),En[t]=En[t]||new On(Pn(Pn({},e),{keys:o,platformInfo:r,persistence:"local"}))}function Rn(e){return En[e]}var An=function(){return(An=Object.assign||function(e){for(var t,r=1,o=arguments.length;r<o;r++)for(var n in t=arguments[r])Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e}).apply(this,arguments)},kn=["ap-shanghai","ap-guangzhou","ap-shenzhen-fsi","ap-shanghai-fsi","ap-nanjing","ap-beijing","ap-chengdu","ap-chongqing","ap-hongkong"],jn=function(e){r=e},In=function(e){n=e},qn="",xn="@cloudbase/js-sdk";function Wn(){return qn}var Ln,Mn=[],Nn=["env","endPointKey","region"];function Dn(e){return Mn.find((function(t){return Nn.filter((function(t){return null!=e[t]})).every((function(r){return t[r]===e[r]}))}))}function Fn(e){var t,r;e.protocol&&!/:$/.test(e.protocol)&&(e.protocol="".concat(e.protocol,":"));var o=Dn(e);o?(null!=e.baseUrl&&(o.baseUrl=e.baseUrl),null!=e.protocol&&(o.protocol=e.protocol)):Mn.push(An(An({},e),{protocol:null!==(t=e.protocol)&&void 0!==t?t:"https:"})),"CLOUD_API"===e.endPointKey&&In(null!==(r=e.protocol)&&void 0!==r?r:"https:")}function Bn(e,t,r){return Dn({env:e,endPointKey:t,region:r})}function zn(e,t){void 0===t&&(t="CLOUD_API");var r=Bn(e,t||"CLOUD_API"),o=r.protocol,n=r.baseUrl;return"".concat(o).concat(n).match(/(http(s)?:)?\/\/([^/?#]*)/)[0]}!function(e){e.NULL="NULL",e.ANONYMOUS="ANONYMOUS",e.WECHAT="WECHAT",e.WECHAT_PUBLIC="WECHAT-PUBLIC",e.WECHAT_OPEN="WECHAT-OPEN",e.CUSTOM="CUSTOM",e.EMAIL="EMAIL",e.USERNAME="USERNAME",e.PHONE="PHONE"}(Ln||(Ln={}));var Un=function(){return(Un=Object.assign||function(e){for(var t,r=1,o=arguments.length;r<o;r++)for(var n in t=arguments[r])Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e}).apply(this,arguments)},Hn=function(e,t,r,o){return new(r||(r=Promise))((function(n,i){function a(e){try{l(o.next(e))}catch(e){i(e)}}function s(e){try{l(o.throw(e))}catch(e){i(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,s)}l((o=o.apply(e,t||[])).next())}))},Vn=function(e,t){var r,o,n,i,a={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(s){return function(l){return function(s){if(r)throw new TypeError("Generator is already executing.");for(;i&&(i=0,s[0]&&(a=0)),a;)try{if(r=1,o&&(n=2&s[0]?o.return:s[0]?o.throw||((n=o.return)&&n.call(o),0):o.next)&&!(n=n.call(o,s[1])).done)return n;switch(o=0,n&&(s=[2&s[0],n.value]),s[0]){case 0:case 1:n=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,o=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!(n=a.trys,(n=n.length>0&&n[n.length-1])||6!==s[0]&&2!==s[0])){a=0;continue}if(3===s[0]&&(!n||s[1]>n[0]&&s[1]<n[3])){a.label=s[1];break}if(6===s[0]&&a.label<n[1]){a.label=n[1],n=s;break}if(n&&a.label<n[2]){a.label=n[2],a.ops.push(s);break}n[2]&&a.ops.pop(),a.trys.pop();continue}s=t.call(e,a)}catch(e){s=[6,e],o=0}finally{r=n=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,l])}}},$n=function(e,t){var r={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(r[o]=e[o]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var n=0;for(o=Object.getOwnPropertySymbols(e);n<o.length;n++)t.indexOf(o[n])<0&&Object.prototype.propertyIsEnumerable.call(e,o[n])&&(r[o[n]]=e[o[n]])}return r},Yn=s,Jn=function(){return Math.random().toString(16).slice(2)},Gn=f,Kn=p,Qn=["auth.getJwt","auth.logout","auth.signInWithTicket","auth.signInAnonymously","auth.signIn","auth.fetchAccessTokenWithRefreshToken","auth.signUpWithEmailAndPassword","auth.activateEndUserMail","auth.sendPasswordResetEmail","auth.resetPasswordWithToken","auth.isUsernameRegistered"];function Xn(e,t,r){var o=e[t];e[t]=function(t){var n={},i={};r.forEach((function(r){var o=r.call(e,t),a=o.data,s=o.headers;Object.assign(n,a),Object.assign(i,s)}));var a=t.data;return a&&(Gn(a)?Object.keys(n).forEach((function(e){a.append(e,n[e])})):t.data=Un(Un({},a),n)),t.headers=Un(Un({},t.headers||{}),i),o.call(e,t)}}function Zn(){var e=Jn();return{data:{seqId:e},headers:{"X-SDK-Version":"@cloudbase/js-sdk/".concat(Wn()),"x-seqid":e}}}var ei,ti,ri=function(){function e(e){var t=this;this.throwWhenRequestFail=!1,this.config=e;var r={timeout:this.config.timeout,timeoutMsg:"[@cloudbase/js-sdk] 请求在".concat(this.config.timeout/1e3,"s内未完成,已中断"),restrictedMethods:["post","put"]};this.reqClass=new Sn.adapter.reqClass(r),this.throwWhenRequestFail=e.throw||!1,this.localCache=Rn(this.config.env),"GATEWAY"!==this.config.endPointMode&&(Xn(this.reqClass,"post",[Zn]),Xn(this.reqClass,"upload",[Zn]),Xn(this.reqClass,"download",[Zn])),W.on("lang_change",(function(e){var r;t.config.i18n=(null===(r=e.data)||void 0===r?void 0:r.i18n)||t.config.i18n}))}return e.prototype.getAccessToken=function(e){return void 0===e&&(e=null),Hn(this,void 0,void 0,(function(){var t,r,o;return Vn(this,(function(n){switch(n.label){case 0:if(null!=e)return[2,e];if(!(t=this.config._fromApp).oauthInstance)throw new Error("you can't request without auth");return r=t.oauthInstance,o=r.oauth2client,[4,this.getOauthAccessTokenV2(o)];case 1:return[2,n.sent().accessToken]}}))}))},e.prototype.getDefaultHeaders=function(){var e,t,r;return(e={})[null===(t=this.config.i18n)||void 0===t?void 0:t.LANG_HEADER_KEY]=null===(r=this.config.i18n)||void 0===r?void 0:r.lang,e["X-SDK-Version"]="@cloudbase/js-sdk/".concat(Wn()),e},e.prototype.post=function(e,t){return Hn(this,void 0,void 0,(function(){return Vn(this,(function(r){switch(r.label){case 0:return[4,this.reqClass.post(Un(Un({},e),{headers:Un(Un({},e.headers),this.getDefaultHeaders()),customReqOpts:t}))];case 1:return[2,r.sent()]}}))}))},e.prototype.upload=function(e){return Hn(this,void 0,void 0,(function(){return Vn(this,(function(t){switch(t.label){case 0:return[4,this.reqClass.upload(Un(Un({},e),{headers:Un(Un({},e.headers),this.getDefaultHeaders())}))];case 1:return[2,t.sent()]}}))}))},e.prototype.download=function(e){return Hn(this,void 0,void 0,(function(){return Vn(this,(function(t){switch(t.label){case 0:return[4,this.reqClass.download(Un(Un({},e),{headers:Un(Un({},e.headers),this.getDefaultHeaders())}))];case 1:return[2,t.sent()]}}))}))},e.prototype.getBaseEndPoint=function(e){return void 0===e&&(e="CLOUD_API"),zn(this.config.env,e)},e.prototype.getOauthAccessTokenV2=function(e){return Hn(this,void 0,void 0,(function(){var t,r;return Vn(this,(function(o){switch(o.label){case 0:return[4,e.getAccessToken()];case 1:return t=o.sent(),[4,e.getCredentials()];case 2:return r=o.sent(),[2,{accessToken:t,accessTokenExpire:new Date(r.expires_at).getTime()}]}}))}))},e.prototype.request=function(e,t,r,o){var n,i;return Hn(this,void 0,void 0,(function(){var a,s,l,c,u,d,f,p,h,b,y,m,v,_,g,w,S,P,O,T,E,C;return Vn(this,(function(R){switch(R.label){case 0:if(a="x-tcb-trace_".concat(this.config.env),s="application/x-www-form-urlencoded",l=Un({action:e,dataVersion:"2020-01-10",env:this.config.env},t),-1!==Qn.indexOf(e))return[3,2];if(!(c=this.config._fromApp).oauthInstance)throw new Error("you can't request without auth");return u=c.oauthInstance,d=u.oauth2client,f=l,[4,this.getOauthAccessTokenV2(d)];case 1:f.access_token=R.sent().accessToken,R.label=2;case 2:return"storage.uploadFile"===e?(p=new FormData,Object.keys(p).forEach((function(e){Object.prototype.hasOwnProperty.call(p,e)&&void 0!==p[e]&&p.append(e,l[e])})),s="multipart/form-data"):(s="application/json;charset=UTF-8",p={},Object.keys(l).forEach((function(e){void 0!==l[e]&&(p[e]=l[e])}))),h={headers:Un(Un({"content-type":s},this.getDefaultHeaders()),null==r?void 0:r.headers)},(null==r?void 0:r.onUploadProgress)&&(h.onUploadProgress=r.onUploadProgress),this.config.region&&(h.headers["X-TCB-Region"]=this.config.region),(b=this.localCache.getStore(a))&&(h.headers["X-TCB-Trace"]=b),y=void 0!==(null==r?void 0:r.parse)?r.parse:t.parse,m=void 0!==(null==r?void 0:r.inQuery)?r.inQuery:t.inQuery,v=void 0!==(null==r?void 0:r.search)?r.search:t.search,_=Un(Un({},(null==r?void 0:r.defaultQuery)||{}),{env:this.config.env}),y&&(_.parse=!0),m&&(_=Un(Un({},m),_)),g=this.config.endPointMode||"CLOUD_API",w=Bn(this.config.env,g),S=w.baseUrl,P=w.protocol,"GATEWAY"===g&&/^((database)\.)|(auth\.wsWebSign)/.test(e)&&(O=Bn(this.config.env,"CLOUD_API"),S="".concat(O.baseUrl.match(/\/\/([^/?#]*)/)[0],"/web")),T=r.pathname?Kn(P,"".concat(null===(n=zn(this.config.env,g))||void 0===n?void 0:n.replace(/^https?:/,""),"/").concat(r.pathname),_):Kn(P,S,_),v&&(T+=v),[4,this.post(Un({url:T,data:p},h),o)];case 3:if(E=R.sent(),(C=null===(i=E.header)||void 0===i?void 0:i["x-tcb-trace"])&&this.localCache.setStore(a,C),200!==Number(E.status)&&200!==Number(E.statusCode)||!E.data)throw new Error("network request error");return[2,E]}}))}))},e.prototype.fetch=function(e){var t,r,o,n,i,a,s,l;return Hn(this,void 0,void 0,(function(){var c,u,d,f,p,h,b=this;return Vn(this,(function(y){switch(y.label){case 0:c=e.token,u=e.headers,d=void 0===u?{}:u,f=$n(e,["token","headers"]),p=function(){return Hn(b,void 0,void 0,(function(){var e,t,r,o,n;return Vn(this,(function(i){switch(i.label){case 0:return t=(e=this.reqClass).fetch,o={},n={"X-SDK-Version":"@cloudbase/js-sdk/".concat(Wn())},r="Bearer ".concat,[4,this.getAccessToken(c)];case 1:return[2,t.apply(e,[Un.apply(void 0,[(o.headers=Un.apply(void 0,[Un.apply(void 0,[(n.Authorization=r.apply("Bearer ",[i.sent()]),n),this.getDefaultHeaders()]),d]),o),f])])]}}))}))},y.label=1;case 1:return y.trys.push([1,3,,6]),[4,p()];case 2:return[2,y.sent()];case 3:if("ACCESS_TOKEN_EXPIRED"!==(null==(h=y.sent())?void 0:h.code))return[3,5];if("function"!=typeof(null===(n=null===(o=null===(r=null===(t=this.config)||void 0===t?void 0:t._fromApp)||void 0===r?void 0:r.oauthInstance)||void 0===o?void 0:o.authApi)||void 0===n?void 0:n.refreshTokenForce))throw h;return[4,null===(l=null===(s=null===(a=null===(i=this.config)||void 0===i?void 0:i._fromApp)||void 0===a?void 0:a.oauthInstance)||void 0===s?void 0:s.authApi)||void 0===l?void 0:l.refreshTokenForce()];case 4:return y.sent(),[2,p()];case 5:throw h;case 6:return[2]}}))}))},e.prototype.send=function(e,t,r,o){return void 0===t&&(t={}),void 0===r&&(r={}),Hn(this,void 0,void 0,(function(){var n;return Vn(this,(function(i){switch(i.label){case 0:return[4,this.request(e,t,Un(Un({},r),{onUploadProgress:t.onUploadProgress}),o)];case 1:if((n=i.sent()).data.code&&this.throwWhenRequestFail)throw new Error(JSON.stringify({code:Yn.OPERATION_FAIL,msg:"[".concat(n.data.code,"] ").concat(n.data.message)}));return[2,n.data]}}))}))},e.prototype.gateWay=function(e,t){var r;return Hn(this,void 0,void 0,(function(){var o,n,i,a,s,l,c,u,d,f,p,h,b,y,m,v,_,g,w;return Vn(this,(function(S){switch(S.label){case 0:if(o=e.url,n=e.name,i=e.data,a=e.path,s=void 0===a?"":a,l=e.method,c=e.header,u=void 0===c?{}:c,!(n&&s||o))throw new Error(JSON.stringify({code:Yn.INVALID_PARAMS,msg:"[gateWay] invalid function name or path or url"}));try{d=i?JSON.stringify(i):""}catch(e){throw new Error(JSON.stringify({code:Yn.INVALID_PARAMS,msg:"[gateWay] invalid data"}))}if(f=function(){var e=(new Date).getTime(),t=(null===Date||void 0===Date?void 0:Date.now)&&1e3*Date.now()||0;return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(r){var o=16*Math.random();return e>0?(o=(e+o)%16|0,e=Math.floor(e/16)):(o=(t+o)%16|0,t=Math.floor(t/16)),("x"===r?o:7&o|8).toString(16)}))}(),p=Bn(this.config.env,"GATEWAY"),h=p.baseUrl,b=p.protocol,y="".concat(b).concat(h).concat(o||"/".concat(s,"/").concat(n)),m=["GET","HEAD"].includes(null===(r=null==l?void 0:l.toUpperCase)||void 0===r?void 0:r.call(l)))try{v={};try{v=JSON.parse(i)}catch(e){v=i||{}}y="".concat(y).concat(y.includes("?")?"&":"?").concat(Object.keys(v).map((function(e){return"".concat(e,"=").concat(v[e])})).join("&"))}catch(e){}return[4,this.fetch(Un(Un({method:l||"POST",headers:Un({"Content-Type":"application/json; charset=utf-8","X-Request-Id":f},u)},m?{}:{body:d}),{url:y,customReqOpts:t}))];case 1:return _=S.sent(),g=[Un({requestId:f},_)],w={},[4,_.data];case 2:return[2,Un.apply(void 0,g.concat([(w.data=S.sent(),w)]))]}}))}))},e}(),oi={};!function(e){e.ZH="zh-CN",e.EN="en-US"}(ti||(ti={}));var ni=((ei={})[ti.EN]={"请检查调用方式,或前往云开发 AI+ 首页查看文档":"Please check the calling method or visit the AI+ homepage to view the documentation","AI+ 请求出错,错误码":"AI+ request error, error code","错误信息":"error message","未实现":"not implemented","小程序不支持 wasm 加载":"wasm loading is not supported in mini programs","小程序不支持动态 js 加载":"dynamic js loading is not supported in mini programs","请求超时":"request timeout","缺少 privatelink sdk 地址":"missing privatelink sdk address"},ei),ii=function(e,t){var r;return(null===(r=ni[t])||void 0===r?void 0:r[e])||e},ai=function(e,t){var r,o,n=function(e){return"lang_".concat(e.clientId||e.env)}(t),i=(e.adapter||{}).localStorage,a=t.lang||(null===(r=null==i?void 0:i.getItem)||void 0===r?void 0:r.call(i,n))||ti.ZH;return null===(o=null==i?void 0:i.setItem)||void 0===o||o.call(i,n,a),new Proxy({t:function(e){return ii(e,a)},LANG_HEADER_KEY:"Accept-Language",lang:a},{get:function(e,t){var r;return"lang"===t&&(null===(r=null==i?void 0:i.getItem)||void 0===r?void 0:r.call(i,n))||e[t]},set:function(e,t,r){var o;return"lang"===t&&r!==e[t]&&(e[t]=r,e.t=function(e){return ii(e,r)},null===(o=null==i?void 0:i.setItem)||void 0===o||o.call(i,n,r),W.fire("lang_change",{i18n:e})),e[t]=r,!0}})},si=function(){return(si=Object.assign||function(e){for(var t,r=1,o=arguments.length;r<o;r++)for(var n in t=arguments[r])Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e}).apply(this,arguments)},li=function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},ci=function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},ui=function(e,t,r,o){return new(r||(r=Promise))((function(n,i){function a(e){try{l(o.next(e))}catch(e){i(e)}}function s(e){try{l(o.throw(e))}catch(e){i(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,s)}l((o=o.apply(e,t||[])).next())}))},di=function(e,t){var r,o,n,i,a={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(s){return function(l){return function(s){if(r)throw new TypeError("Generator is already executing.");for(;i&&(i=0,s[0]&&(a=0)),a;)try{if(r=1,o&&(n=2&s[0]?o.return:s[0]?o.throw||((n=o.return)&&n.call(o),0):o.next)&&!(n=n.call(o,s[1])).done)return n;switch(o=0,n&&(s=[2&s[0],n.value]),s[0]){case 0:case 1:n=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,o=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!(n=a.trys,(n=n.length>0&&n[n.length-1])||6!==s[0]&&2!==s[0])){a=0;continue}if(3===s[0]&&(!n||s[1]>n[0]&&s[1]<n[3])){a.label=s[1];break}if(6===s[0]&&a.label<n[1]){a.label=n[1],n=s;break}if(n&&a.label<n[2]){a.label=n[2],a.ops.push(s);break}n[2]&&a.ops.pop(),a.trys.pop();continue}s=t.call(e,a)}catch(e){s=[6,e],o=0}finally{r=n=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,l])}}},fi=function(e,t){for(var r,o=0,n=(r=e,"[object Array]"===Object.prototype.toString.call(r)?e:[e]);o<n.length;o++){var i=n[o],a=i.isMatch,s=i.genAdapter,l=i.runtime;if(a())return{adapter:O({isMatch:a},s(t)),runtime:l}}},pi=function(){return{adapter:O({},{type:"default",root:window,reqClass:S,wsClass:WebSocket,localStorage:localStorage}),runtime:P.WEB}},hi=s,bi=h,yi=function(e){var t=e.mode,r=void 0===t?"async":t,o=e.customInfo,n=void 0===o?{}:o,i=e.title,s=e.messages,l=void 0===s?[]:s;return function(e,t,o){if(a){var s=n.className||e.constructor.name,c=n.methodName||t,u=o.value,d=function(e){var t="",r=e.stack.split("\n"),o=r.findIndex((function(e){return D.test(e)}));if(-1!==o){var n=F.exec(r[o+1]||"");t=n?n[0]:""}return t}(new Error);o.value="sync"===r?function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var r=B({err:new Error,className:s,methodName:c,sourceLink:d});try{return u.apply(this,e)}catch(e){var o=e,n=e.message,a=e.error,f=e.error_description,p={title:i||"".concat(s,".").concat(c," failed"),content:[{type:"error",body:e}]};if(n&&/^\{.*\}$/.test(n)){var h=JSON.parse(n);p.subtitle=n,h.code&&(r?(r.code=h.code,r.msg=h.msg):(e.code=h.code,e.message=h.msg),o=r||e,p.content=l.map((function(e){return{type:"info",body:e}})))}throw a&&f&&(p.subtitle=f,r?(r.code=a,r.msg=f):(e.code=a,e.message=f),o=r||e,p.content=l.map((function(e){return{type:"info",body:e}}))),b(p),o}}:function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return L(this,void 0,void 0,(function(){var t,r,o,n,a,f,p,h;return M(this,(function(y){switch(y.label){case 0:t=B({err:new Error,className:s,methodName:c,sourceLink:d}),y.label=1;case 1:return y.trys.push([1,3,,4]),[4,u.apply(this,e)];case 2:return[2,y.sent()];case 3:throw r=y.sent(),o=r,n=r.message,a=r.error,f=r.error_description,p={title:i||"".concat(s,".").concat(c," failed"),content:[{type:"error",body:r}]},n&&/^\{.*\}$/.test(n)&&(h=JSON.parse(n),p.subtitle=h,h.code&&(t?(t.code=h.code,t.message=h.msg):(r.code=h.code,r.message=h.msg),o=t||r,p.content=l.map((function(e){return{type:"info",body:e}})))),a&&f&&(p.subtitle=f,t?(t.code=a,t.msg=f):(r.code=a,r.message=f),o=t||r,p.content=l.map((function(e){return{type:"info",body:e}}))),b(p),o;case 4:return[2]}}))}))}}}},mi={timeout:15e3,persistence:"local"},vi={},_i=new(function(){function e(e){this.cloudbaseConfig=e||this.cloudbaseConfig,this.authInstance=null,this.oauthInstance=null,this.version=Wn()}return Object.defineProperty(e.prototype,"config",{get:function(){return this.cloudbaseConfig},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"platform",{get:function(){return Sn},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"cache",{get:function(){return e=this.cloudbaseConfig.env,Tn[e];var e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"localCache",{get:function(){return Rn(this.cloudbaseConfig.env)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"request",{get:function(){return e=this.cloudbaseConfig.env,oi[e];var e},enumerable:!1,configurable:!0}),e.prototype.init=function(t){var r;if(!t.env)throw new Error(JSON.stringify({code:hi.INVALID_PARAMS,msg:"env must not be specified"}));Sn.adapter||this.useDefaultAdapter();var o={timeout:t.timeout||5e3,timeoutMsg:"[".concat(xn,"][REQUEST TIMEOUT] request had been abort since didn't finished within").concat(t.timeout/1e3,"s")};this.requestClient=new Sn.adapter.reqClass(o),this.cloudbaseConfig=si(si(si({},mi),t),{i18n:ai(Sn,t)}),delete this.cloudbaseConfig.lang,this.cloudbaseConfig.timeout=this.formatTimeout(this.cloudbaseConfig.timeout);var n=this.cloudbaseConfig,i=n.env,a=n.persistence,s=n.debug,l=n.timeout,c=n.oauthClient,u=n.i18n;Cn({env:i,persistence:a,debug:s,platformInfo:this.platform}),function(e,t,r){Fn({env:e,region:t,baseUrl:"//".concat(e,".").concat(t||"ap-shanghai",".tcb-api.tencentcloudapi.com/web"),protocol:r,endPointKey:"CLOUD_API"})}(i,t.region||""),function(e,t,r){void 0===r&&(r="ap-shanghai"),r=r||"ap-shanghai";var o="//".concat(e,".api.tcloudbasegateway.com/v1");kn.includes(r)||(o="//".concat(e,".api.intl.tcloudbasegateway.com/v1")),Fn({endPointKey:"GATEWAY",env:e,baseUrl:o,protocol:t})}(i,"https:",t.region||"");var d=new e(this.cloudbaseConfig);return function(e){oi[e.env]=new ri(Un(Un({},e),{throw:!0}))}({env:i,region:t.region||"",timeout:l,oauthClient:c,_fromApp:d,i18n:u,endPointMode:t.endPointMode}),d.requestClient=this.requestClient,null===(r=null==this?void 0:this.fire)||void 0===r||r.call(this,"cloudbase_init",d),this.try2InitAuth(d),d},e.prototype.updateConfig=function(e){var t=e.persistence,r=e.debug;this.cloudbaseConfig.persistence=t,this.cloudbaseConfig.debug=r,Cn({env:this.cloudbaseConfig.env,persistence:t,debug:r,platformInfo:this.platform})},e.prototype.updateLang=function(e){var t;e&&e!==(null===(t=this.cloudbaseConfig.i18n)||void 0===t?void 0:t.lang)&&(this.cloudbaseConfig.i18n.lang=e)},e.prototype.registerExtension=function(e){vi[e.name]=e},e.prototype.invokeExtension=function(e,t){return ui(this,void 0,void 0,(function(){var r;return di(this,(function(o){switch(o.label){case 0:if(!(r=vi[e]))throw new Error(JSON.stringify({code:hi.INVALID_PARAMS,msg:"extension:".concat(e," must be registered before invoke")}));return[4,r.invoke(t,this)];case 1:return[2,o.sent()]}}))}))},e.prototype.useAdapters=function(e,t){var r=fi(e,t)||{},o=r.adapter,n=r.runtime;o&&(Sn.adapter=o),n&&(Sn.runtime=n)},e.prototype.registerHook=function(t){!function(e,t){var r=t.entity,o=t.target;if(Object.prototype.hasOwnProperty.call(e,o))throw new Error(JSON.stringify({code:V.INVALID_OPERATION,msg:"target:".concat(o," is not exist")}));var n=e.prototype[o];if("function"!=typeof n)throw new Error(JSON.stringify({code:V.INVALID_OPERATION,msg:"target:".concat(o," is not a function which is the only type supports hook")}));e.prototype[o]=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return r.call.apply(r,H([this],e,!1)),n.call.apply(n,H([this],e,!1))}}(e,t)},e.prototype.registerComponent=function(t){Y(e,t)},e.prototype.registerVersion=function(e){!function(e){qn=e}(e),this.version=e},e.prototype.registerSdkName=function(e){!function(e){xn=e,jn(e)}(e)},e.prototype.registerEndPoint=function(e,t){Fn({baseUrl:e,protocol:t,env:this.config.env,endPointKey:"CLOUD_API"})},e.prototype.registerEndPointWithKey=function(e){Fn({env:this.config.env,endPointKey:e.key,baseUrl:e.url,protocol:e.protocol})},e.prototype.getEndPointWithKey=function(e){var t=Bn(this.config.env,e);return{BASE_URL:t.baseUrl,PROTOCOL:t.protocol}},e.prototype.parseCaptcha=function(e){return y(e)},e.prototype.useDefaultAdapter=function(){var e=pi.bind(this)(),t=e.adapter,r=e.runtime;Sn.adapter=t,Sn.runtime=r},e.prototype.formatTimeout=function(e){switch(!0){case e>6e5:return bi(hi.INVALID_PARAMS,"timeout is greater than maximum value[10min]"),6e5;case e<100:return bi(hi.INVALID_PARAMS,"timeout is less than maximum value[100ms]"),100;default:return e}},e.prototype.try2InitAuth=function(e){try{e.auth()}catch(e){console.log("try2InitAuth error:",e)}},li([yi({mode:"sync",title:"Cloudbase 初始化失败",messages:["请确认以下各项:"," 1 - 调用 cloudbase.init() 的语法或参数是否正确"," 2 - 如果是非浏览器环境,是否配置了安全应用来源(https://docs.cloudbase.net/api-reference/webv3/adapter#%E7%AC%AC-2-%E6%AD%A5%E9%85%8D%E7%BD%AE%E5%AE%89%E5%85%A8%E5%BA%94%E7%94%A8%E6%9D%A5%E6%BA%90)","如果问题依然存在,建议到官方问答社区提问或寻找帮助:".concat("https://support.qq.com/products/148793")]}),ci("design:type",Function),ci("design:paramtypes",[Object]),ci("design:returntype",e)],e.prototype,"init",null),li([yi({title:"调用扩展能力失败",messages:["请确认以下各项:"," 1 - 调用 invokeExtension() 的语法或参数是否正确"," 2 - 被调用的扩展能力是否已经安装并通过 registerExtension() 注册","如果问题依然存在,建议到官方问答社区提问或寻找帮助:".concat("https://support.qq.com/products/148793")]}),ci("design:type",Function),ci("design:paramtypes",[String,Object]),ci("design:returntype",Promise)],e.prototype,"invokeExtension",null),e}());_i.useAdapters((bn.prototype.upload=function(e){var t=this,r=this;return new Promise((function(o){var n=e.url,i=e.file,a=e.data,s=e.headers,l=wx.getFileSystemManager(),c=wx.request({url:n,method:e.method,header:gn({"content-type":" "},s),data:l.readFileSync(i),timeout:t._timeout,success:function(e){var t={statusCode:e.statusCode,data:e.data||{}};200===e.statusCode&&(null==a?void 0:a.success_action_status)&&(t.statusCode=parseInt(a.success_action_status,10)),o(t)},fail:function(e){o(e)},complete:function(e){if((null==e?void 0:e.errMsg)&&r._timeout&&-1!==r._restrictedMethods.indexOf("upload")&&"request:fail timeout"===e.errMsg){console.warn(r._timeoutMsg);try{c.abort()}catch(e){}}}})}))},_n.genAdapter=function(e){return{root:{globalThis:{}},reqClass:bn,wsClass:mn,captchaOptions:{openURIWithCallback:function(t){var r=e.EventBus,o={},n=t;console.log("openURIWithCallback",t);var i=t.match(/^(data:.*?)(\?[^#\s]*)?$/);if(i){n=i[1],console.log("openURIWithCallback url",n);var a=i[2];a&&(o=vn(a))}console.log("openURIWithCallback queryObj",o);var s=o.token,l=wn(o,["token"]);return/^data:/.test(n)&&!s?Promise.reject({error:"invalid_argument",error_description:"invalie captcha data: ".concat(t)}):s?new Promise((function(e){console.log("wait for captcha..."),r.$emit("CAPTCHA_DATA_CHANGE",gn(gn({},l),{token:s,url:n})),r.$once("RESOLVE_CAPTCHA_DATA",(function(t){e(t)}))})):Promise.reject({error:"unimplemented",error_description:"need to impl captcha data"})}},localStorage:yn,primaryStorage:i.local,getAppSign:function(){var e=wx.getAccountInfoSync();return"undefined"!=typeof App||"undefined"!=typeof getApp||wx.onAppHide||wx.offAppHide||wx.onAppShow||wx.offAppShow?e&&e.miniProgram?e.miniProgram.appId:"":e&&e.plugin?e.plugin.appId:""}}},_n));const gi=_i;return t})());
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cloudbase/app",
|
|
3
|
-
"version": "2.25.
|
|
3
|
+
"version": "2.25.5-alpha.0",
|
|
4
4
|
"description": "cloudbase javascript sdk core",
|
|
5
5
|
"main": "dist/cjs/index.js",
|
|
6
6
|
"module": "dist/esm/index.js",
|
|
@@ -31,8 +31,8 @@
|
|
|
31
31
|
"dependencies": {
|
|
32
32
|
"@cloudbase/adapter-interface": "^0.7.1",
|
|
33
33
|
"@cloudbase/adapter-wx_mp": "^1.2.1",
|
|
34
|
-
"@cloudbase/types": "2.25.
|
|
35
|
-
"@cloudbase/utilities": "2.25.
|
|
34
|
+
"@cloudbase/types": "2.25.5-alpha.0",
|
|
35
|
+
"@cloudbase/utilities": "2.25.5-alpha.0"
|
|
36
36
|
},
|
|
37
|
-
"gitHead": "
|
|
37
|
+
"gitHead": "a53529dcb46b574c1e9786f60096d375c3d11dd5"
|
|
38
38
|
}
|
package/src/libs/request.ts
CHANGED
|
@@ -48,18 +48,19 @@ function bindHooks(instance: SDKRequestInterface, name: string, hooks: IRequestB
|
|
|
48
48
|
Object.assign(headers, appendedHeaders)
|
|
49
49
|
})
|
|
50
50
|
const originData = options.data
|
|
51
|
-
originData
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
(
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
51
|
+
originData
|
|
52
|
+
&& (() => {
|
|
53
|
+
if (isFormData(originData)) {
|
|
54
|
+
Object.keys(data).forEach((key) => {
|
|
55
|
+
(originData as FormData).append(key, data[key])
|
|
56
|
+
})
|
|
57
|
+
return
|
|
58
|
+
}
|
|
59
|
+
options.data = {
|
|
60
|
+
...originData,
|
|
61
|
+
...data,
|
|
62
|
+
}
|
|
63
|
+
})()
|
|
63
64
|
options.headers = {
|
|
64
65
|
...(options.headers || {}),
|
|
65
66
|
...headers,
|
|
@@ -277,10 +278,11 @@ export class CloudbaseRequest implements ICloudbaseRequest {
|
|
|
277
278
|
}
|
|
278
279
|
// 尝试解析响应数据为 JSON
|
|
279
280
|
parse && (formatQuery.parse = true)
|
|
280
|
-
inQuery
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
281
|
+
inQuery
|
|
282
|
+
&& (formatQuery = {
|
|
283
|
+
...inQuery,
|
|
284
|
+
...formatQuery,
|
|
285
|
+
})
|
|
284
286
|
|
|
285
287
|
const endPointMode = this.config.endPointMode || 'CLOUD_API'
|
|
286
288
|
|
|
@@ -411,7 +413,26 @@ export class CloudbaseRequest implements ICloudbaseRequest {
|
|
|
411
413
|
|
|
412
414
|
const requestId = utils.generateRequestId()
|
|
413
415
|
const { baseUrl, protocol } = getEndPointInfo(this.config.env, 'GATEWAY')
|
|
414
|
-
|
|
416
|
+
let endpoint = `${protocol}${baseUrl}${url || `/${path}/${name}`}`
|
|
417
|
+
|
|
418
|
+
const isGetAndHead = ['GET', 'HEAD'].includes(method?.toUpperCase?.())
|
|
419
|
+
|
|
420
|
+
if (isGetAndHead) {
|
|
421
|
+
try {
|
|
422
|
+
let dataParse = {}
|
|
423
|
+
try {
|
|
424
|
+
dataParse = JSON.parse(data as any)
|
|
425
|
+
} catch (error) {
|
|
426
|
+
dataParse = data || {}
|
|
427
|
+
}
|
|
428
|
+
endpoint = `${endpoint}${endpoint.includes('?') ? '&' : '?'}${Object.keys(dataParse)
|
|
429
|
+
.map(key => `${key}=${dataParse[key]}`)
|
|
430
|
+
.join('&')}`
|
|
431
|
+
} catch (error) {
|
|
432
|
+
//
|
|
433
|
+
}
|
|
434
|
+
}
|
|
435
|
+
|
|
415
436
|
const response = await this.fetch({
|
|
416
437
|
method: method || 'POST',
|
|
417
438
|
headers: {
|
|
@@ -419,7 +440,7 @@ export class CloudbaseRequest implements ICloudbaseRequest {
|
|
|
419
440
|
'X-Request-Id': requestId,
|
|
420
441
|
...header,
|
|
421
442
|
},
|
|
422
|
-
...(
|
|
443
|
+
...(isGetAndHead ? {} : { body: jsonData }),
|
|
423
444
|
url: endpoint,
|
|
424
445
|
customReqOpts,
|
|
425
446
|
})
|