@cloudbase/auth 2.19.2 → 2.19.3

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.
@@ -97,6 +97,9 @@ var URL_REG = /^[^:]+:\/\/[^/]+(\/[^?#]+)/;
97
97
  var dealAdapterRequestData = function (res, options) {
98
98
  var _a, _b, _c;
99
99
  var requestId = (_a = options === null || options === void 0 ? void 0 : options.headers) === null || _a === void 0 ? void 0 : _a['x-request-id'];
100
+ if (!res) {
101
+ res = {};
102
+ }
100
103
  if ((res === null || res === void 0 ? void 0 : res.code) || ((_b = res === null || res === void 0 ? void 0 : res.data) === null || _b === void 0 ? void 0 : _b.error_code)) {
101
104
  res = {
102
105
  error: res.code || res.data.error,
@@ -183,30 +186,35 @@ var dealUserAdapter = function (config, adapter) {
183
186
  };
184
187
  var adapterReq_1 = new adapter.reqClass(reqClassParams);
185
188
  data.baseRequest = function (url, options) {
186
- var _a, _b;
189
+ var _a;
187
190
  return __awaiter(this, void 0, void 0, function () {
188
- var res, error_1;
189
- return __generator(this, function (_c) {
190
- switch (_c.label) {
191
+ var res, requestType, func, error_1;
192
+ return __generator(this, function (_b) {
193
+ switch (_b.label) {
191
194
  case 0:
192
195
  res = {};
193
- _c.label = 1;
196
+ requestType = ((_a = options.method) === null || _a === void 0 ? void 0 : _a.toLocaleLowerCase()) || 'get';
197
+ func = adapterReq_1 === null || adapterReq_1 === void 0 ? void 0 : adapterReq_1[requestType];
198
+ if (typeof func !== 'function') {
199
+ throw new Error("invalid \u3010".concat(requestType, "\u3011 request method"));
200
+ }
201
+ _b.label = 1;
194
202
  case 1:
195
- _c.trys.push([1, 3, , 4]);
203
+ _b.trys.push([1, 3, , 4]);
196
204
  if ((!options.headers['content-type'] || options.headers['content-type'].includes('application/json')) && typeof options.body !== 'string') {
197
205
  options.data = options.data || options.body;
198
206
  options.body = JSON.stringify(options.body);
199
207
  }
200
- return [4, ((_b = adapterReq_1 === null || adapterReq_1 === void 0 ? void 0 : adapterReq_1[((_a = options.method) === null || _a === void 0 ? void 0 : _a.toLocaleLowerCase()) || 'get']) === null || _b === void 0 ? void 0 : _b.call(adapterReq_1, __assign({ url: url }, options)))];
208
+ return [4, func(__assign({ url: url }, options))];
201
209
  case 2:
202
- res = _c.sent();
210
+ res = _b.sent();
211
+ res = dealAdapterRequestData(res, __assign(__assign({}, options), { url: url }));
203
212
  return [3, 4];
204
213
  case 3:
205
- error_1 = _c.sent();
214
+ error_1 = _b.sent();
206
215
  res = error_1;
207
- return [3, 4];
216
+ throw error_1;
208
217
  case 4:
209
- res = dealAdapterRequestData(res, __assign(__assign({}, options), { url: url }));
210
218
  if (res === null || res === void 0 ? void 0 : res.error) {
211
219
  throw res;
212
220
  }
@@ -257,4 +265,4 @@ var useAuthAdapter = function (config) {
257
265
  return dealAuthAdapter(config, config.adapter);
258
266
  };
259
267
  exports.useAuthAdapter = useAuthAdapter;
260
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRhcHRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hZGFwdGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQ0EseUNBQTRDO0FBSzVDO0lBRUUsZ0NBQVksTUFBbUY7O1FBQzdGLElBQUk7WUFDRixJQUFJLENBQUMsWUFBWSxHQUFHLENBQUEsTUFBTSxhQUFOLE1BQU0sdUJBQU4sTUFBTSxDQUFFLFlBQVksS0FBSSxDQUFDLENBQUEsTUFBQSxNQUFBLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxPQUFPLDBDQUFFLElBQUksMENBQUUsVUFBVSxLQUFJLFVBQVUsQ0FBQyxDQUFDLFlBQVksQ0FBQTtTQUMzRztRQUFDLE9BQU8sS0FBSyxFQUFFO1lBQ2QsSUFBSSxDQUFDLFlBQVksR0FBRyxDQUFBLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxZQUFZLEtBQUksRUFBRSxDQUFBO1NBQy9DO0lBQ0gsQ0FBQztJQU1LLHdDQUFPLEdBQWIsVUFBYyxHQUFXOzs7Z0JBQ3ZCLFdBQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUE7OztLQUN0QztJQU9LLDJDQUFVLEdBQWhCLFVBQWlCLEdBQVc7OztnQkFDMUIsSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUE7Ozs7S0FDbEM7SUFRSyx3Q0FBTyxHQUFiLFVBQWMsR0FBVyxFQUFFLEtBQWE7OztnQkFDdEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFBOzs7O0tBQ3RDO0lBRUQsNENBQVcsR0FBWCxVQUFZLEdBQVc7UUFDckIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQTtJQUN2QyxDQUFDO0lBRUQsNENB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QWMsa0JBTzFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU0RLQWRhcHRlckludGVyZmFjZSB9IGZyb20gJ0BjbG91ZGJhc2UvYWRhcHRlci1pbnRlcmZhY2UnXG5pbXBvcnQgeyBhZGFwdGVyRm9yV3hNcCB9IGZyb20gJy4vdXRpbGl0aWVzJ1xuaW1wb3J0IHR5cGUgeyBBdXRoT3B0aW9ucyB9IGZyb20gJ0BjbG91ZGJhc2Uvb2F1dGgnXG5cbmRlY2xhcmUgY29uc3Qgd3g6IGFueVxuXG5jbGFzcyBPYXV0aENsaWVudFN0b3JhZ2VCYXNlIHtcbiAgcHVibGljIHJlYWRvbmx5IGxvY2FsU3RvcmFnZVxuICBjb25zdHJ1Y3Rvcihjb25maWc/OiB7IGxvY2FsU3RvcmFnZTogYW55IC8qIFN0b3JhZ2VJbnRlcmZhY2UgKi87IGFkYXB0ZXI6IFNES0FkYXB0ZXJJbnRlcmZhY2UgfSkge1xuICAgIHRyeSB7XG4gICAgICB0aGlzLmxvY2FsU3RvcmFnZSA9IGNvbmZpZz8ubG9jYWxTdG9yYWdlIHx8IChjb25maWc/LmFkYXB0ZXI/LnJvb3Q/Lmdsb2JhbFRoaXMgfHwgZ2xvYmFsVGhpcykubG9jYWxTdG9yYWdlXG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHRoaXMubG9jYWxTdG9yYWdlID0gY29uZmlnPy5sb2NhbFN0b3JhZ2UgfHwge31cbiAgICB9XG4gIH1cbiAgLyoqXG4gICAqIEdldCBJdGVtXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBrZXlcbiAgICogQHJldHVybiB7UHJvbWlzZTxzdHJpbmcgfCBudWxsPn1cbiAgICovXG4gIGFzeW5jIGdldEl0ZW0oa2V5OiBzdHJpbmcpOiBQcm9taXNlPHN0cmluZyB8IG51bGw+IHtcbiAgICByZXR1cm4gdGhpcy5sb2NhbFN0b3JhZ2UuZ2V0SXRlbShrZXkpXG4gIH1cblxuICAvKipcbiAgICogUmVtb3ZlIEl0ZW0uXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBrZXlcbiAgICogQHJldHVybiB7UHJvbWlzZTx2b2lkPn1cbiAgICovXG4gIGFzeW5jIHJlbW92ZUl0ZW0oa2V5OiBzdHJpbmcpIHtcbiAgICB0aGlzLmxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKGtleSlcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgSXRlbS5cbiAgICogQHBhcmFtIHtzdHJpbmd9IGtleVxuICAgKiBAcGFyYW0ge3N0cmluZ30gdmFsdWVcbiAgICogQHJldHVybiB7UHJvbWlzZTx2b2lkPn1cbiAgICovXG4gIGFzeW5jIHNldEl0ZW0oa2V5OiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0aGlzLmxvY2FsU3RvcmFnZS5zZXRJdGVtKGtleSwgdmFsdWUpXG4gIH1cblxuICBnZXRJdGVtU3luYyhrZXk6IHN0cmluZyk6IHN0cmluZyB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLmxvY2FsU3RvcmFnZS5nZXRJdGVtKGtleSlcbiAgfVxuXG4gIHNldEl0ZW1TeW5jKGtleTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5sb2NhbFN0b3JhZ2Uuc2V0SXRlbShrZXksIHZhbHVlKVxuICB9XG5cbiAgcmVtb3ZlSXRlbVN5bmMoa2V5OiBzdHJpbmcpIHtcbiAgICB0aGlzLmxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKGtleSlcbiAgfVxufVxuXG4vKipcbiAqIGNvcHkgdG8gZ2l0QGdpdC53b2EuY29tOlFCYXNlL2xjYXAvZGF0YXNvdXJjZS5naXQvcGFja2FnZXMvY2xvdWQtc2RrL2NvbW1vblxuICog5ZCM5q2l5L+u5pS5XG4gKi9cbmNvbnN0IFVSTF9SRUcgPSAvXlteOl0rOlxcL1xcL1teL10rKFxcL1tePyNdKykvXG5cbmNvbnN0IGRlYWxBZGFwdGVyUmVxdWVzdERhdGEgPSAocmVzLCBvcHRpb25zKSA9PiB7XG4gIGNvbnN0IHJlcXVlc3RJZCA9IG9wdGlvbnM/LmhlYWRlcnM/LlsneC1yZXF1ZXN0LWlkJ11cblxuICBpZiAocmVzPy5jb2RlIHx8IHJlcz8uZGF0YT8uZXJyb3JfY29kZSkge1xuICAgIHJlcyA9IHtcbiAgICAgIGVycm9yOiByZXMuY29kZSB8fCByZXMuZGF0YS5lcnJvcixcbiAgICAgIGVycm9yX2Rlc2NyaXB0aW9uOiByZXMuZGF0YS5lcnJvcl9kZXNjcmlwdGlvbiB8fCByZXMubWVzc2FnZSB8fCByZXMuY29kZSB8fCByZXMuZGF0YS5lcnJvcl9jb2RlLFxuICAgICAgcmVxdWVzdF9pZDogcmVzLnJlcXVlc3RJZCxcbiAgICAgIGVycm9yX2NvZGU6IHJlcy5kYXRhPy5lcnJvcl9jb2RlLFxuICAgIH1cbiAgfVxuXG4gIGlmICghcmVzPy5yZXF1ZXN0X2lkKSB7XG4gICAgcmVzLnJlcXVlc3RfaWQgPSByZXMucmVxdWVzdF9pZCB8fCByZXF1ZXN0SWRcbiAgfVxuXG4gIGlmIChyZXM/LmVycm9yKSB7XG4gICAgcmVzLmVycm9yX3VyaSA9IGdldFVybFBhdGgob3B0aW9ucz8udXJsKVxuICAgIHJldHVybiByZXNcbiAgfVxuXG4gIHJldHVybiByZXM/LmRhdGEgfHwge31cbn1cblxuZnVuY3Rpb24gZ2VuZXJhdGVPYXV0aENsaWVudFJlcXVlc3QocmVxQ2xhc3MpIHtcbiAgcmV0dXJuIGFzeW5jIGZ1bmN0aW9uIChcbiAgICB1cmw6IHN0cmluZyxcbiAgICBvcHRpb25zPzoge1xuICAgICAgYm9keT86IGFueSB8IG51bGxcbiAgICAgIGhlYWRlcnM/OiBhbnkgfCBudWxsXG4gICAgICBtZXRob2Q/OiBzdHJpbmdcbiAgICAgIFtrZXk6IHN0cmluZ106IGFueVxuICAgIH0sXG4gICkge1xuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICAvLyBPYmplY3RzIG11c3QgYmUgY29waWVkIHRvIHByZXZlbnQgbW9kaWZpY2F0aW9uIG9mIGRhdGEgc3VjaCBhcyBib2R5LlxuICAgICAgY29uc3QgY29weU9wdGlvbnMgPSBPYmplY3QuYXNzaWduKHt9LCBvcHRpb25zKVxuICAgICAgaWYgKGNvcHlPcHRpb25zLmJvZHkgJiYgdHlwZW9mIGNvcHlPcHRpb25zLmJvZHkgIT09ICdzdHJpbmcnKSB7XG4gICAgICAgIGNvcHlPcHRpb25zLmJvZHkgPSBKU09OLnN0cmluZ2lmeShjb3B5T3B0aW9ucy5ib2R5KVxuICAgICAgfVxuXG4gICAgICBjb25zdCB0YXNrID0gd3gucmVxdWVzdCh7XG4gICAgICAgIHVybCxcbiAgICAgICAgZGF0YTogY29weU9wdGlvbnMuYm9keSxcbiAgICAgICAgdGltZW91dDogcmVxQ2xhc3MuX3RpbWVvdXQsXG4gICAgICAgIG1ldGhvZDogY29weU9wdGlvbnMubWV0aG9kIHx8ICdHRVQnLFxuICAgICAgICBoZWFkZXI6IGNvcHlPcHRpb25zLmhlYWRlcnMsXG4gICAgICAgIHN1Y2Nlc3MocmVzKSB7XG4gICAgICAgICAgcmVzID0gZGVhbEFkYXB0ZXJSZXF1ZXN0RGF0YShyZXMsIHsgLi4ub3B0aW9ucywgdXJsIH0pXG5cbiAgICAgICAgICBpZiAocmVzLmVycm9yKSB7XG4gICAgICAgICAgICByZWplY3QocmVzKVxuICAgICAgICAgIH1cbiAgICAgICAgICByZXNvbHZlKHJlcylcbiAgICAgICAgfSxcbiAgICAgICAgZmFpbChlcnIpIHtcbiAgICAgICAgICByZWplY3Qoe1xuICAgICAgICAgICAgZXJyb3I6ICd1bnJlYWNoYWJsZScsXG4gICAgICAgICAgICBlcnJvcl9kZXNjcmlwdGlvbjogKGVyciBhcyBFcnJvcikubWVzc2FnZSxcbiAgICAgICAgICB9KVxuICAgICAgICB9LFxuICAgICAgICBjb21wbGV0ZShlcnIpIHtcbiAgICAgICAgICBpZiAoIWVyciB8fCAhZXJyLmVyck1zZykge1xuICAgICAgICAgICAgcmV0dXJuXG4gICAgICAgICAgfVxuICAgICAgICAgIGlmICghcmVxQ2xhc3MuX3RpbWVvdXQgfHwgcmVxQ2xhc3MuX3Jlc3RyaWN0ZWRNZXRob2RzLmluZGV4T2YoJ3JlcXVlc3QnKSA9PT0gLTEpIHtcbiAgICAgICAgICAgIHJldHVyblxuICAgICAgICAgIH1cbiAgICAgICAgICBjb25zdCB7IGVyck1zZyB9ID0gZXJyXG4gICAgICAgICAgaWYgKGVyck1zZyA9PT0gJ3JlcXVlc3Q6ZmFpbCB0aW1lb3V0Jykge1xuICAgICAgICAgICAgY29uc29sZS53YXJuKHJlcUNsYXNzLl90aW1lb3V0TXNnKVxuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgdGFzay5hYm9ydCgpXG4gICAgICAgICAgICB9IGNhdGNoIChlKSB7fVxuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgIH0pXG4gICAgfSlcbiAgfVxufVxuXG4vKipcbiAqIEdldCB1cmwgcGF0aC5cbiAqIEBwYXJhbSB7c3RyaW5nfSB1cmxcbiAqIEByZXR1cm4ge3N0cmluZ31cbiAqL1xuZnVuY3Rpb24gZ2V0VXJsUGF0aCh1cmw6IHN0cmluZykge1xuICAvLyByZXR1cm4gcGF0aCBpZiBtYXRjaGVkLCBvciBvcmlnaW5hbCB1cmxcbiAgcmV0dXJuIFVSTF9SRUcudGVzdCh1cmwpID8gUmVnRXhwLiQxIDogdXJsXG59XG5cbi8qKlxuICog55So5oi36Ieq5a6a5LmJYWRhcHRlcuWkhOeQhlxuICogQHBhcmFtIGNvbmZpZ1xuICogQHBhcmFtIGFkYXB0ZXJcbiAqIEByZXR1cm5zXG4gKi9cbmNvbnN0IGRlYWxVc2VyQWRhcHRlciA9IChjb25maWc6IEF1dGhPcHRpb25zLCBhZGFwdGVyOiBTREtBZGFwdGVySW50ZXJmYWNlKSA9PiB7XG4gIGNvbnN0IGRhdGEgPSB7IC4uLmNvbmZpZyB9XG5cbiAgdHJ5IHtcbiAgICBpZiAoIWNvbmZpZz8uc3RvcmFnZSAmJiBhZGFwdGVyPy5sb2NhbFN0b3JhZ2UpIHtcbiAgICAgIGRhdGEuc3RvcmFnZSA9IG5ldyBPYXV0aENsaWVudFN0b3JhZ2VCYXNlKHsgbG9jYWxTdG9yYWdlOiBhZGFwdGVyLmxvY2FsU3RvcmFnZSwgYWRhcHRlciB9KVxuICAgIH1cblxuICAgIGlmICghY29uZmlnLmNhcHRjaGFPcHRpb25zICYmIGFkYXB0ZXI/LmNhcHRjaGFPcHRpb25zKSB7XG4gICAgICBkYXRhLmNhcHRjaGFPcHRpb25zID0gYWRhcHRlci5jYXB0Y2hhT3B0aW9uc1xuICAgIH1cblxuICAgIC8vIOeUqOaIt+acquS8oOWFpWJhc2VSZXF1ZXN05ZKMcmVxdWVzdOaXtuWkhOeQhlxuICAgIC8vIE9BdXRoMkNsaWVudOS8mOWFiOS7pSBiYXNlUmVxdWVzdCDkuLrlh4ZcbiAgICAvLyBBdXRoIOWcqOayoeaciSByZXF1ZXN0IOeahOaXtuWAmeS8muWIneWni+WMliBDYXB0Y2hh77yM5LuO6ICM5L2/55SoIENhcHRjaGEg55qEIHJlcXVlc3RcbiAgICBpZiAoIWNvbmZpZy5iYXNlUmVxdWVzdCAmJiAhY29uZmlnLnJlcXVlc3QgJiYgYWRhcHRlcj8ucmVxQ2xhc3MpIHtcbiAgICAgIGNvbnN0IHJlcUNsYXNzUGFyYW1zID0ge1xuICAgICAgICB0aW1lb3V0OiAxMDAwMCxcbiAgICAgICAgcmVzdHJpY3RlZE1ldGhvZHM6IFsnZ2V0JywgJ3Bvc3QnLCAndXBsb2FkJywgJ2Rvd25sb2FkJywgJ3JlcXVlc3QnXSxcbiAgICAgIH1cbiAgICAgIGNvbnN0IGFkYXB0ZXJSZXEgPSBuZXcgYWRhcHRlci5yZXFDbGFzcyhyZXFDbGFzc1BhcmFtcylcbiAgICAgIGRhdGEuYmFzZVJlcXVlc3QgPSBhc3luYyBmdW5jdGlvbiAodXJsOiBzdHJpbmcsIG9wdGlvbnM/OiB7IG1ldGhvZD86IHN0cmluZzsgW2tleTogc3RyaW5nXTogYW55IH0pIHtcbiAgICAgICAgbGV0IHJlczogYW55ID0ge31cblxuICAgICAgICB0cnkge1xuICAgICAgICAgIC8vIOWFvOWuuemdnuWwj+eoi+W6j+eahGFkYXB0ZXJcbiAgICAgICAgICBpZiAoKCFvcHRpb25zLmhlYWRlcnNbJ2NvbnRlbnQtdHlwZSddIHx8IG9wdGlvbnMuaGVhZGVyc1snY29udGVudC10eXBlJ10uaW5jbHVkZXMoJ2FwcGxpY2F0aW9uL2pzb24nKSkgJiYgdHlwZW9mIG9wdGlvbnMuYm9keSAhPT0gJ3N0cmluZycpIHtcbiAgICAgICAgICAgIG9wdGlvbnMuZGF0YSA9IG9wdGlvbnMuZGF0YSB8fCBvcHRpb25zLmJvZHlcbiAgICAgICAgICAgIG9wdGlvbnMuYm9keSA9IEpTT04uc3RyaW5naWZ5KG9wdGlvbnMuYm9keSlcbiAgICAgICAgICB9XG5cbiAgICAgICAgICByZXMgPSBhd2FpdCBhZGFwdGVyUmVxPy5bb3B0aW9ucy5tZXRob2Q/LnRvTG9jYWxlTG93ZXJDYXNlKCkgfHwgJ2dldCddPy4oeyB1cmwsIC4uLm9wdGlvbnMgfSlcbiAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgICByZXMgPSBlcnJvclxuICAgICAgICB9XG5cbiAgICAgICAgcmVzID0gZGVhbEFkYXB0ZXJSZXF1ZXN0RGF0YShyZXMsIHsgLi4ub3B0aW9ucywgdXJsIH0pXG5cbiAgICAgICAgaWYgKHJlcz8uZXJyb3IpIHtcbiAgICAgICAgICB0aHJvdyByZXNcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiByZXNcbiAgICAgIH1cbiAgICB9XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICBjb25zb2xlLmVycm9yKCd1c2VyIGFkYXB0ZXIgZ2VuZXJhdGUgZmFpbDonLCBlKVxuICB9XG5cbiAgcmV0dXJuIGRhdGFcbn1cblxuLyoqXG4gKiDlhoXnva7pu5jorqRhZGFwdGVy5aSE55CGXG4gKiBAcGFyYW0gY29uZmlnXG4gKiBAcmV0dXJuc1xuICovXG5jb25zdCBkZWFsQXV0aEFkYXB0ZXIgPSAoY29uZmlnOiBBdXRoT3B0aW9ucywgYWRhcHRlcjogU0RLQWRhcHRlckludGVyZmFjZSkgPT4ge1xuICBpZiAoIWFkYXB0ZXJGb3JXeE1wLmlzTWF0Y2goKSB8fCAoY29uZmlnLnN0b3JhZ2UgJiYgY29uZmlnLmJhc2VSZXF1ZXN0KSkgcmV0dXJuIGNvbmZpZ1xuXG4gIGNvbnN0IGRhdGEgPSB7IC4uLmNvbmZpZyB9XG4gIGNvbnN0IGF1dGhPcHRpb25zOiBhbnkgPSB7fVxuXG4gIHRyeSB7XG4gICAgY29uc3QgeyBsb2NhbFN0b3JhZ2UsIHJlcUNsYXNzOiBSZXFDbGFzcyB9ID0gYWRhcHRlckZvcld4TXAuZ2VuQWRhcHRlcigpXG4gICAgaWYgKGxvY2FsU3RvcmFnZSkge1xuICAgICAgYXV0aE9wdGlvbnMuc3RvcmFnZSA9IG5ldyBPYXV0aENsaWVudFN0b3JhZ2VCYXNlKHsgbG9jYWxTdG9yYWdlLCBhZGFwdGVyIH0pXG4gICAgfVxuICAgIGlmIChSZXFDbGFzcykge1xuICAgICAgY29uc3QgcmVxQ2xhc3MgPSBuZXcgUmVxQ2xhc3Moe1xuICAgICAgICB0aW1lb3V0OiAxMDAwMCxcbiAgICAgICAgcmVzdHJpY3RlZE1ldGhvZHM6IFsnZ2V0JywgJ3Bvc3QnLCAndXBsb2FkJywgJ2Rvd25sb2FkJywgJ3JlcXVlc3QnXSxcbiAgICAgIH0pXG4gICAgICBhdXRoT3B0aW9ucy5yZXF1ZXN0ID0gZ2VuZXJhdGVPYXV0aENsaWVudFJlcXVlc3QocmVxQ2xhc3MpXG4gICAgfVxuXG4gICAgaWYgKGRhdGEuY2FwdGNoYU9wdGlvbnMpIHtcbiAgICAgIGF1dGhPcHRpb25zLmJhc2VSZXF1ZXN0ID0gYXV0aE9wdGlvbnMucmVxdWVzdFxuICAgICAgYXV0aE9wdGlvbnMucmVxdWVzdCA9IHVuZGVmaW5lZFxuICAgIH1cblxuICAgIHJldHVybiB7IC4uLmRhdGEsIC4uLmF1dGhPcHRpb25zIH1cbiAgfSBjYXRjaCAoZSkge1xuICAgIGNvbnNvbGUuZXJyb3IoJ2FkYXB0ZXIgZ2VuZXJhdGUgZmFpbDonLCBlKVxuICB9XG5cbiAgcmV0dXJuIGRhdGFcbn1cblxuZXhwb3J0IGNvbnN0IHVzZUF1dGhBZGFwdGVyID0gKGNvbmZpZzogQXV0aE9wdGlvbnMpID0+IHtcbiAgLy8g5YW85a655b6u5pCtY2xvdWQtc2Rr77yMYXV0aOS4rWpzLXNka+m7mOiupOeahGFkYXB0ZXLkuI3ov5vooYzphY3nva5cbiAgaWYgKGNvbmZpZy5hZGFwdGVyICYmIChjb25maWcuYWRhcHRlciBhcyBhbnkpLnR5cGUgIT09ICdkZWZhdWx0Jykge1xuICAgIHJldHVybiBkZWFsVXNlckFkYXB0ZXIoY29uZmlnLCBjb25maWcuYWRhcHRlcilcbiAgfVxuXG4gIHJldHVybiBkZWFsQXV0aEFkYXB0ZXIoY29uZmlnLCBjb25maWcuYWRhcHRlcilcbn1cbiJdfQ==
268
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRhcHRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hZGFwdGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQ0EseUNBQTRDO0FBSzVDO0lBRUUsZ0NBQVksTUFBbUY7O1FBQzdGLElBQUk7WUFDRixJQUFJLENBQUMsWUFBWSxHQUFHLENBQUEsTUFBTSxhQUFOLE1BQU0sdUJBQU4sTUFBTSxDQUFFLFlBQVksS0FBSSxDQUFDLENBQUEsTUFBQSxNQUFBLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxPQUFPLDBDQUFFLElBQUksMENBQUUsVUFBVSxLQUFJLFVBQVUsQ0FBQyxDQUFDLFlBQVksQ0FBQTtTQUMzRztRQUFDLE9BQU8sS0FBSyxFQUFFO1lBQ2QsSUFBSSxDQUFDLFlBQVksR0FBRyxDQUFBLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxZQUFZLEtBQUksRUFBRSxDQUFBO1NBQy9DO0lBQ0gsQ0FBQztJQU1LLHdDQUFPLEdBQWIsVUFBYyxHQUFXOzs7Z0JBQ3ZCLFdBQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUE7OztLQUN0QztJQU9LLDJDQUFVLEdBQWhCLFVBQWlCLEdBQVc7OztnQkFDMUIsSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUE7Ozs7S0FDbEM7SUFRSyx3Q0FBTyxHQUFiLFVBQWMsR0FBVyxFQUFFLEtBQWE7OztnQkFDdEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFBOzs7O0tBQ3RDO0lBRUQsNENBQVcsR0FBWCxVQUFZLEdBQVc7UUFDckIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQTtJQUN2QyxDQUFDO0lBRUQsNENB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LElBQUksTUFBTSxDQUFDLE9BQU8sSUFBSyxNQUFNLENBQUMsT0FBZSxDQUFDLElBQUksS0FBSyxTQUFTLEVBQUU7UUFDaEUsT0FBTyxlQUFlLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQTtLQUMvQztJQUVELE9BQU8sZUFBZSxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUE7QUFDaEQsQ0FBQyxDQUFBO0FBUFksUUFBQSxjQUFjLGtCQU8xQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNES0FkYXB0ZXJJbnRlcmZhY2UgfSBmcm9tICdAY2xvdWRiYXNlL2FkYXB0ZXItaW50ZXJmYWNlJ1xuaW1wb3J0IHsgYWRhcHRlckZvcld4TXAgfSBmcm9tICcuL3V0aWxpdGllcydcbmltcG9ydCB0eXBlIHsgQXV0aE9wdGlvbnMgfSBmcm9tICdAY2xvdWRiYXNlL29hdXRoJ1xuXG5kZWNsYXJlIGNvbnN0IHd4OiBhbnlcblxuY2xhc3MgT2F1dGhDbGllbnRTdG9yYWdlQmFzZSB7XG4gIHB1YmxpYyByZWFkb25seSBsb2NhbFN0b3JhZ2VcbiAgY29uc3RydWN0b3IoY29uZmlnPzogeyBsb2NhbFN0b3JhZ2U6IGFueSAvKiBTdG9yYWdlSW50ZXJmYWNlICovOyBhZGFwdGVyOiBTREtBZGFwdGVySW50ZXJmYWNlIH0pIHtcbiAgICB0cnkge1xuICAgICAgdGhpcy5sb2NhbFN0b3JhZ2UgPSBjb25maWc/LmxvY2FsU3RvcmFnZSB8fCAoY29uZmlnPy5hZGFwdGVyPy5yb290Py5nbG9iYWxUaGlzIHx8IGdsb2JhbFRoaXMpLmxvY2FsU3RvcmFnZVxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICB0aGlzLmxvY2FsU3RvcmFnZSA9IGNvbmZpZz8ubG9jYWxTdG9yYWdlIHx8IHt9XG4gICAgfVxuICB9XG4gIC8qKlxuICAgKiBHZXQgSXRlbVxuICAgKiBAcGFyYW0ge3N0cmluZ30ga2V5XG4gICAqIEByZXR1cm4ge1Byb21pc2U8c3RyaW5nIHwgbnVsbD59XG4gICAqL1xuICBhc3luYyBnZXRJdGVtKGtleTogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmcgfCBudWxsPiB7XG4gICAgcmV0dXJuIHRoaXMubG9jYWxTdG9yYWdlLmdldEl0ZW0oa2V5KVxuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZSBJdGVtLlxuICAgKiBAcGFyYW0ge3N0cmluZ30ga2V5XG4gICAqIEByZXR1cm4ge1Byb21pc2U8dm9pZD59XG4gICAqL1xuICBhc3luYyByZW1vdmVJdGVtKGtleTogc3RyaW5nKSB7XG4gICAgdGhpcy5sb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbShrZXkpXG4gIH1cblxuICAvKipcbiAgICogU2V0IEl0ZW0uXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBrZXlcbiAgICogQHBhcmFtIHtzdHJpbmd9IHZhbHVlXG4gICAqIEByZXR1cm4ge1Byb21pc2U8dm9pZD59XG4gICAqL1xuICBhc3luYyBzZXRJdGVtKGtleTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdGhpcy5sb2NhbFN0b3JhZ2Uuc2V0SXRlbShrZXksIHZhbHVlKVxuICB9XG5cbiAgZ2V0SXRlbVN5bmMoa2V5OiBzdHJpbmcpOiBzdHJpbmcgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5sb2NhbFN0b3JhZ2UuZ2V0SXRlbShrZXkpXG4gIH1cblxuICBzZXRJdGVtU3luYyhrZXk6IHN0cmluZywgdmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMubG9jYWxTdG9yYWdlLnNldEl0ZW0oa2V5LCB2YWx1ZSlcbiAgfVxuXG4gIHJlbW92ZUl0ZW1TeW5jKGtleTogc3RyaW5nKSB7XG4gICAgdGhpcy5sb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbShrZXkpXG4gIH1cbn1cblxuLyoqXG4gKiBjb3B5IHRvIGdpdEBnaXQud29hLmNvbTpRQmFzZS9sY2FwL2RhdGFzb3VyY2UuZ2l0L3BhY2thZ2VzL2Nsb3VkLXNkay9jb21tb25cbiAqIOWQjOatpeS/ruaUuVxuICovXG5jb25zdCBVUkxfUkVHID0gL15bXjpdKzpcXC9cXC9bXi9dKyhcXC9bXj8jXSspL1xuXG5jb25zdCBkZWFsQWRhcHRlclJlcXVlc3REYXRhID0gKHJlcywgb3B0aW9ucykgPT4ge1xuICBjb25zdCByZXF1ZXN0SWQgPSBvcHRpb25zPy5oZWFkZXJzPy5bJ3gtcmVxdWVzdC1pZCddXG5cbiAgaWYgKCFyZXMpIHtcbiAgICByZXMgPSB7fVxuICB9XG5cbiAgaWYgKHJlcz8uY29kZSB8fCByZXM/LmRhdGE/LmVycm9yX2NvZGUpIHtcbiAgICByZXMgPSB7XG4gICAgICBlcnJvcjogcmVzLmNvZGUgfHwgcmVzLmRhdGEuZXJyb3IsXG4gICAgICBlcnJvcl9kZXNjcmlwdGlvbjogcmVzLmRhdGEuZXJyb3JfZGVzY3JpcHRpb24gfHwgcmVzLm1lc3NhZ2UgfHwgcmVzLmNvZGUgfHwgcmVzLmRhdGEuZXJyb3JfY29kZSxcbiAgICAgIHJlcXVlc3RfaWQ6IHJlcy5yZXF1ZXN0SWQsXG4gICAgICBlcnJvcl9jb2RlOiByZXMuZGF0YT8uZXJyb3JfY29kZSxcbiAgICB9XG4gIH1cblxuICBpZiAoIXJlcz8ucmVxdWVzdF9pZCkge1xuICAgIHJlcy5yZXF1ZXN0X2lkID0gcmVzLnJlcXVlc3RfaWQgfHwgcmVxdWVzdElkXG4gIH1cblxuICBpZiAocmVzPy5lcnJvcikge1xuICAgIHJlcy5lcnJvcl91cmkgPSBnZXRVcmxQYXRoKG9wdGlvbnM/LnVybClcbiAgICByZXR1cm4gcmVzXG4gIH1cblxuICByZXR1cm4gcmVzPy5kYXRhIHx8IHt9XG59XG5cbmZ1bmN0aW9uIGdlbmVyYXRlT2F1dGhDbGllbnRSZXF1ZXN0KHJlcUNsYXNzKSB7XG4gIHJldHVybiBhc3luYyBmdW5jdGlvbiAoXG4gICAgdXJsOiBzdHJpbmcsXG4gICAgb3B0aW9ucz86IHtcbiAgICAgIGJvZHk/OiBhbnkgfCBudWxsXG4gICAgICBoZWFkZXJzPzogYW55IHwgbnVsbFxuICAgICAgbWV0aG9kPzogc3RyaW5nXG4gICAgICBba2V5OiBzdHJpbmddOiBhbnlcbiAgICB9LFxuICApIHtcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgLy8gT2JqZWN0cyBtdXN0IGJlIGNvcGllZCB0byBwcmV2ZW50IG1vZGlmaWNhdGlvbiBvZiBkYXRhIHN1Y2ggYXMgYm9keS5cbiAgICAgIGNvbnN0IGNvcHlPcHRpb25zID0gT2JqZWN0LmFzc2lnbih7fSwgb3B0aW9ucylcbiAgICAgIGlmIChjb3B5T3B0aW9ucy5ib2R5ICYmIHR5cGVvZiBjb3B5T3B0aW9ucy5ib2R5ICE9PSAnc3RyaW5nJykge1xuICAgICAgICBjb3B5T3B0aW9ucy5ib2R5ID0gSlNPTi5zdHJpbmdpZnkoY29weU9wdGlvbnMuYm9keSlcbiAgICAgIH1cblxuICAgICAgY29uc3QgdGFzayA9IHd4LnJlcXVlc3Qoe1xuICAgICAgICB1cmwsXG4gICAgICAgIGRhdGE6IGNvcHlPcHRpb25zLmJvZHksXG4gICAgICAgIHRpbWVvdXQ6IHJlcUNsYXNzLl90aW1lb3V0LFxuICAgICAgICBtZXRob2Q6IGNvcHlPcHRpb25zLm1ldGhvZCB8fCAnR0VUJyxcbiAgICAgICAgaGVhZGVyOiBjb3B5T3B0aW9ucy5oZWFkZXJzLFxuICAgICAgICBzdWNjZXNzKHJlcykge1xuICAgICAgICAgIHJlcyA9IGRlYWxBZGFwdGVyUmVxdWVzdERhdGEocmVzLCB7IC4uLm9wdGlvbnMsIHVybCB9KVxuXG4gICAgICAgICAgaWYgKHJlcy5lcnJvcikge1xuICAgICAgICAgICAgcmVqZWN0KHJlcylcbiAgICAgICAgICB9XG4gICAgICAgICAgcmVzb2x2ZShyZXMpXG4gICAgICAgIH0sXG4gICAgICAgIGZhaWwoZXJyKSB7XG4gICAgICAgICAgcmVqZWN0KHtcbiAgICAgICAgICAgIGVycm9yOiAndW5yZWFjaGFibGUnLFxuICAgICAgICAgICAgZXJyb3JfZGVzY3JpcHRpb246IChlcnIgYXMgRXJyb3IpLm1lc3NhZ2UsXG4gICAgICAgICAgfSlcbiAgICAgICAgfSxcbiAgICAgICAgY29tcGxldGUoZXJyKSB7XG4gICAgICAgICAgaWYgKCFlcnIgfHwgIWVyci5lcnJNc2cpIHtcbiAgICAgICAgICAgIHJldHVyblxuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAoIXJlcUNsYXNzLl90aW1lb3V0IHx8IHJlcUNsYXNzLl9yZXN0cmljdGVkTWV0aG9kcy5pbmRleE9mKCdyZXF1ZXN0JykgPT09IC0xKSB7XG4gICAgICAgICAgICByZXR1cm5cbiAgICAgICAgICB9XG4gICAgICAgICAgY29uc3QgeyBlcnJNc2cgfSA9IGVyclxuICAgICAgICAgIGlmIChlcnJNc2cgPT09ICdyZXF1ZXN0OmZhaWwgdGltZW91dCcpIHtcbiAgICAgICAgICAgIGNvbnNvbGUud2FybihyZXFDbGFzcy5fdGltZW91dE1zZylcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgIHRhc2suYWJvcnQoKVxuICAgICAgICAgICAgfSBjYXRjaCAoZSkge31cbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICB9KVxuICAgIH0pXG4gIH1cbn1cblxuLyoqXG4gKiBHZXQgdXJsIHBhdGguXG4gKiBAcGFyYW0ge3N0cmluZ30gdXJsXG4gKiBAcmV0dXJuIHtzdHJpbmd9XG4gKi9cbmZ1bmN0aW9uIGdldFVybFBhdGgodXJsOiBzdHJpbmcpIHtcbiAgLy8gcmV0dXJuIHBhdGggaWYgbWF0Y2hlZCwgb3Igb3JpZ2luYWwgdXJsXG4gIHJldHVybiBVUkxfUkVHLnRlc3QodXJsKSA/IFJlZ0V4cC4kMSA6IHVybFxufVxuXG4vKipcbiAqIOeUqOaIt+iHquWumuS5iWFkYXB0ZXLlpITnkIZcbiAqIEBwYXJhbSBjb25maWdcbiAqIEBwYXJhbSBhZGFwdGVyXG4gKiBAcmV0dXJuc1xuICovXG5jb25zdCBkZWFsVXNlckFkYXB0ZXIgPSAoY29uZmlnOiBBdXRoT3B0aW9ucywgYWRhcHRlcjogU0RLQWRhcHRlckludGVyZmFjZSkgPT4ge1xuICBjb25zdCBkYXRhID0geyAuLi5jb25maWcgfVxuXG4gIHRyeSB7XG4gICAgaWYgKCFjb25maWc/LnN0b3JhZ2UgJiYgYWRhcHRlcj8ubG9jYWxTdG9yYWdlKSB7XG4gICAgICBkYXRhLnN0b3JhZ2UgPSBuZXcgT2F1dGhDbGllbnRTdG9yYWdlQmFzZSh7IGxvY2FsU3RvcmFnZTogYWRhcHRlci5sb2NhbFN0b3JhZ2UsIGFkYXB0ZXIgfSlcbiAgICB9XG5cbiAgICBpZiAoIWNvbmZpZy5jYXB0Y2hhT3B0aW9ucyAmJiBhZGFwdGVyPy5jYXB0Y2hhT3B0aW9ucykge1xuICAgICAgZGF0YS5jYXB0Y2hhT3B0aW9ucyA9IGFkYXB0ZXIuY2FwdGNoYU9wdGlvbnNcbiAgICB9XG5cbiAgICAvLyDnlKjmiLfmnKrkvKDlhaViYXNlUmVxdWVzdOWSjHJlcXVlc3Tml7blpITnkIZcbiAgICAvLyBPQXV0aDJDbGllbnTkvJjlhYjku6UgYmFzZVJlcXVlc3Qg5Li65YeGXG4gICAgLy8gQXV0aCDlnKjmsqHmnIkgcmVxdWVzdCDnmoTml7blgJnkvJrliJ3lp4vljJYgQ2FwdGNoYe+8jOS7juiAjOS9v+eUqCBDYXB0Y2hhIOeahCByZXF1ZXN0XG4gICAgaWYgKCFjb25maWcuYmFzZVJlcXVlc3QgJiYgIWNvbmZpZy5yZXF1ZXN0ICYmIGFkYXB0ZXI/LnJlcUNsYXNzKSB7XG4gICAgICBjb25zdCByZXFDbGFzc1BhcmFtcyA9IHtcbiAgICAgICAgdGltZW91dDogMTAwMDAsXG4gICAgICAgIHJlc3RyaWN0ZWRNZXRob2RzOiBbJ2dldCcsICdwb3N0JywgJ3VwbG9hZCcsICdkb3dubG9hZCcsICdyZXF1ZXN0J10sXG4gICAgICB9XG4gICAgICBjb25zdCBhZGFwdGVyUmVxID0gbmV3IGFkYXB0ZXIucmVxQ2xhc3MocmVxQ2xhc3NQYXJhbXMpXG4gICAgICBkYXRhLmJhc2VSZXF1ZXN0ID0gYXN5bmMgZnVuY3Rpb24gKHVybDogc3RyaW5nLCBvcHRpb25zPzogeyBtZXRob2Q/OiBzdHJpbmc7IFtrZXk6IHN0cmluZ106IGFueSB9KSB7XG4gICAgICAgIGxldCByZXM6IGFueSA9IHt9XG5cbiAgICAgICAgY29uc3QgcmVxdWVzdFR5cGUgPSBvcHRpb25zLm1ldGhvZD8udG9Mb2NhbGVMb3dlckNhc2UoKSB8fCAnZ2V0J1xuXG4gICAgICAgIGNvbnN0IGZ1bmMgPSBhZGFwdGVyUmVxPy5bcmVxdWVzdFR5cGVdXG5cbiAgICAgICAgaWYgKHR5cGVvZiBmdW5jICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBpbnZhbGlkIOOAkCR7cmVxdWVzdFR5cGV944CRIHJlcXVlc3QgbWV0aG9kYClcbiAgICAgICAgfVxuXG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgLy8g5YW85a656Z2e5bCP56iL5bqP55qEYWRhcHRlclxuICAgICAgICAgIGlmICgoIW9wdGlvbnMuaGVhZGVyc1snY29udGVudC10eXBlJ10gfHwgb3B0aW9ucy5oZWFkZXJzWydjb250ZW50LXR5cGUnXS5pbmNsdWRlcygnYXBwbGljYXRpb24vanNvbicpKSAmJiB0eXBlb2Ygb3B0aW9ucy5ib2R5ICE9PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgb3B0aW9ucy5kYXRhID0gb3B0aW9ucy5kYXRhIHx8IG9wdGlvbnMuYm9keVxuICAgICAgICAgICAgb3B0aW9ucy5ib2R5ID0gSlNPTi5zdHJpbmdpZnkob3B0aW9ucy5ib2R5KVxuICAgICAgICAgIH1cbiAgICAgICAgICByZXMgPSBhd2FpdCBmdW5jKHsgdXJsLCAuLi5vcHRpb25zIH0pXG4gICAgICAgICAgcmVzID0gZGVhbEFkYXB0ZXJSZXF1ZXN0RGF0YShyZXMsIHsgLi4ub3B0aW9ucywgdXJsIH0pXG4gICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgcmVzID0gZXJyb3JcbiAgICAgICAgICB0aHJvdyBlcnJvclxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHJlcz8uZXJyb3IpIHtcbiAgICAgICAgICB0aHJvdyByZXNcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiByZXNcbiAgICAgIH1cbiAgICB9XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICBjb25zb2xlLmVycm9yKCd1c2VyIGFkYXB0ZXIgZ2VuZXJhdGUgZmFpbDonLCBlKVxuICB9XG5cbiAgcmV0dXJuIGRhdGFcbn1cblxuLyoqXG4gKiDlhoXnva7pu5jorqRhZGFwdGVy5aSE55CGXG4gKiBAcGFyYW0gY29uZmlnXG4gKiBAcmV0dXJuc1xuICovXG5jb25zdCBkZWFsQXV0aEFkYXB0ZXIgPSAoY29uZmlnOiBBdXRoT3B0aW9ucywgYWRhcHRlcjogU0RLQWRhcHRlckludGVyZmFjZSkgPT4ge1xuICBpZiAoIWFkYXB0ZXJGb3JXeE1wLmlzTWF0Y2goKSB8fCAoY29uZmlnLnN0b3JhZ2UgJiYgY29uZmlnLmJhc2VSZXF1ZXN0KSkgcmV0dXJuIGNvbmZpZ1xuXG4gIGNvbnN0IGRhdGEgPSB7IC4uLmNvbmZpZyB9XG4gIGNvbnN0IGF1dGhPcHRpb25zOiBhbnkgPSB7fVxuXG4gIHRyeSB7XG4gICAgY29uc3QgeyBsb2NhbFN0b3JhZ2UsIHJlcUNsYXNzOiBSZXFDbGFzcyB9ID0gYWRhcHRlckZvcld4TXAuZ2VuQWRhcHRlcigpXG4gICAgaWYgKGxvY2FsU3RvcmFnZSkge1xuICAgICAgYXV0aE9wdGlvbnMuc3RvcmFnZSA9IG5ldyBPYXV0aENsaWVudFN0b3JhZ2VCYXNlKHsgbG9jYWxTdG9yYWdlLCBhZGFwdGVyIH0pXG4gICAgfVxuICAgIGlmIChSZXFDbGFzcykge1xuICAgICAgY29uc3QgcmVxQ2xhc3MgPSBuZXcgUmVxQ2xhc3Moe1xuICAgICAgICB0aW1lb3V0OiAxMDAwMCxcbiAgICAgICAgcmVzdHJpY3RlZE1ldGhvZHM6IFsnZ2V0JywgJ3Bvc3QnLCAndXBsb2FkJywgJ2Rvd25sb2FkJywgJ3JlcXVlc3QnXSxcbiAgICAgIH0pXG4gICAgICBhdXRoT3B0aW9ucy5yZXF1ZXN0ID0gZ2VuZXJhdGVPYXV0aENsaWVudFJlcXVlc3QocmVxQ2xhc3MpXG4gICAgfVxuXG4gICAgaWYgKGRhdGEuY2FwdGNoYU9wdGlvbnMpIHtcbiAgICAgIGF1dGhPcHRpb25zLmJhc2VSZXF1ZXN0ID0gYXV0aE9wdGlvbnMucmVxdWVzdFxuICAgICAgYXV0aE9wdGlvbnMucmVxdWVzdCA9IHVuZGVmaW5lZFxuICAgIH1cblxuICAgIHJldHVybiB7IC4uLmRhdGEsIC4uLmF1dGhPcHRpb25zIH1cbiAgfSBjYXRjaCAoZSkge1xuICAgIGNvbnNvbGUuZXJyb3IoJ2FkYXB0ZXIgZ2VuZXJhdGUgZmFpbDonLCBlKVxuICB9XG5cbiAgcmV0dXJuIGRhdGFcbn1cblxuZXhwb3J0IGNvbnN0IHVzZUF1dGhBZGFwdGVyID0gKGNvbmZpZzogQXV0aE9wdGlvbnMpID0+IHtcbiAgLy8g5YW85a655b6u5pCtY2xvdWQtc2Rr77yMYXV0aOS4rWpzLXNka+m7mOiupOeahGFkYXB0ZXLkuI3ov5vooYzphY3nva5cbiAgaWYgKGNvbmZpZy5hZGFwdGVyICYmIChjb25maWcuYWRhcHRlciBhcyBhbnkpLnR5cGUgIT09ICdkZWZhdWx0Jykge1xuICAgIHJldHVybiBkZWFsVXNlckFkYXB0ZXIoY29uZmlnLCBjb25maWcuYWRhcHRlcilcbiAgfVxuXG4gIHJldHVybiBkZWFsQXV0aEFkYXB0ZXIoY29uZmlnLCBjb25maWcuYWRhcHRlcilcbn1cbiJdfQ==
@@ -187,7 +187,7 @@ declare class Auth {
187
187
  private createLoginState;
188
188
  private signInWithUsername;
189
189
  }
190
- type TInitAuthOptions = Pick<ICloudbaseAuthConfig, 'region' | 'persistence'> & Partial<AuthOptions>;
190
+ type TInitAuthOptions = Pick<ICloudbaseAuthConfig, 'region' | 'persistence' | 'i18n'> & Partial<AuthOptions>;
191
191
  export declare function generateAuthInstance(config: TInitAuthOptions, options?: {
192
192
  clientId: ICloudbaseConfig['clientId'];
193
193
  env: ICloudbaseConfig['env'];