@microsoft/ocsdk 0.5.3-main.af99799 → 0.5.3-main.f256c62

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.
@@ -1,106 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports["default"] = void 0;
9
-
10
- var _Constants = _interopRequireDefault(require("../Common/Constants"));
11
-
12
- var _sleep = _interopRequireDefault(require("./sleep"));
13
-
14
- function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
15
-
16
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
17
-
18
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
19
-
20
- /**
21
- * Custom handler for HTTP calls with Axios. Handler allows to retry HTTP calls if failed.
22
- *
23
- * @param axios Axios instance.
24
- * @param axiosRetryOptions Options for axios retry.
25
- */
26
- var axiosRetry = function axiosRetry(axios, axiosRetryOptions) {
27
- // eslint-disable-line @typescript-eslint/explicit-module-boundary-types
28
- // Default values
29
- if (axiosRetryOptions.retryOn429 === undefined || axiosRetryOptions.retryOn429 === null) {
30
- axiosRetryOptions.retryOn429 = true;
31
- }
32
-
33
- var retries = axiosRetryOptions.retries,
34
- headerOverwrites = axiosRetryOptions.headerOverwrites;
35
- var currentTry = 1; // Executed as soon as after 1st try
36
- // Method to intercepts responses within range of 2xx
37
-
38
- var onSuccess = undefined; // define default behaviour for 429 retries in case the handler was not included by the caller.
39
-
40
- if (!axiosRetryOptions.shouldRetry) {
41
- axiosRetryOptions.shouldRetry = function (response) {
42
- if (response !== null && response !== void 0 && response.status && response.status === _Constants["default"].tooManyRequestsStatusCode && axiosRetryOptions.retryOn429 === false) {
43
- return false;
44
- }
45
-
46
- return true;
47
- };
48
- } // Method to intercepts responses outside range of 2xx
49
-
50
-
51
- var onError = function onError(error) {
52
- var config = error.config,
53
- response = error.response; // If we have no information of the request to retry
54
-
55
- if (!config) {
56
- return Promise.reject(error);
57
- } // Evaluates if execution should stop according to the conditions defined in the handler
58
-
59
-
60
- if (axiosRetryOptions.shouldRetry && !axiosRetryOptions.shouldRetry(response)) {
61
- return Promise.reject(error);
62
- } // Retry request if below threshold
63
-
64
-
65
- var shouldRetry = currentTry < retries;
66
-
67
- if (shouldRetry) {
68
- currentTry++;
69
-
70
- if (headerOverwrites && response !== null && response !== void 0 && response.headers) {
71
- var _iterator = _createForOfIteratorHelper(headerOverwrites),
72
- _step;
73
-
74
- try {
75
- for (_iterator.s(); !(_step = _iterator.n()).done;) {
76
- var headerName = _step.value;
77
- var responseHeader = response === null || response === void 0 ? void 0 : response.headers[headerName.toLocaleLowerCase()];
78
-
79
- if (responseHeader) {
80
- // eslint-disable-next-line security/detect-object-injection
81
- config.headers[headerName] = responseHeader;
82
- }
83
- }
84
- } catch (err) {
85
- _iterator.e(err);
86
- } finally {
87
- _iterator.f();
88
- }
89
- }
90
-
91
- return new Promise(function (resolve) {
92
- return (0, _sleep["default"])(axiosRetryOptions.waitTimeInMsBetweenRetries).then(function () {
93
- return resolve(axios(config));
94
- });
95
- });
96
- }
97
-
98
- return Promise.reject(error);
99
- };
100
-
101
- axios.interceptors.response.use(onSuccess, onError); // Intercept response before returning
102
- };
103
-
104
- var _default = axiosRetry;
105
- exports["default"] = _default;
106
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9VdGlscy9heGlvc1JldHJ5LnRzIl0sIm5hbWVzIjpbImF4aW9zUmV0cnkiLCJheGlvcyIsImF4aW9zUmV0cnlPcHRpb25zIiwicmV0cnlPbjQyOSIsInVuZGVmaW5lZCIsInJldHJpZXMiLCJoZWFkZXJPdmVyd3JpdGVzIiwiY3VycmVudFRyeSIsIm9uU3VjY2VzcyIsInNob3VsZFJldHJ5IiwicmVzcG9uc2UiLCJzdGF0dXMiLCJDb25zdGFudHMiLCJ0b29NYW55UmVxdWVzdHNTdGF0dXNDb2RlIiwib25FcnJvciIsImVycm9yIiwiY29uZmlnIiwiUHJvbWlzZSIsInJlamVjdCIsImhlYWRlcnMiLCJoZWFkZXJOYW1lIiwicmVzcG9uc2VIZWFkZXIiLCJ0b0xvY2FsZUxvd2VyQ2FzZSIsInJlc29sdmUiLCJ3YWl0VGltZUluTXNCZXR3ZWVuUmV0cmllcyIsInRoZW4iLCJpbnRlcmNlcHRvcnMiLCJ1c2UiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUVBOztBQUVBOzs7Ozs7OztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQU1BLFVBQVUsR0FBRyxTQUFiQSxVQUFhLENBQUNDLEtBQUQsRUFBdUJDLGlCQUF2QixFQUFpRTtBQUFFO0FBRXBGO0FBQ0EsTUFBSUEsaUJBQWlCLENBQUNDLFVBQWxCLEtBQWlDQyxTQUFqQyxJQUE4Q0YsaUJBQWlCLENBQUNDLFVBQWxCLEtBQWlDLElBQW5GLEVBQXlGO0FBQ3ZGRCxJQUFBQSxpQkFBaUIsQ0FBQ0MsVUFBbEIsR0FBK0IsSUFBL0I7QUFDRDs7QUFFRCxNQUFRRSxPQUFSLEdBQXNDSCxpQkFBdEMsQ0FBUUcsT0FBUjtBQUFBLE1BQWlCQyxnQkFBakIsR0FBc0NKLGlCQUF0QyxDQUFpQkksZ0JBQWpCO0FBRUEsTUFBSUMsVUFBVSxHQUFHLENBQWpCLENBVGtGLENBUzlEO0FBRXBCOztBQUNBLE1BQU1DLFNBQVMsR0FBR0osU0FBbEIsQ0Faa0YsQ0FjbEY7O0FBQ0EsTUFBSSxDQUFDRixpQkFBaUIsQ0FBQ08sV0FBdkIsRUFBb0M7QUFDbENQLElBQUFBLGlCQUFpQixDQUFDTyxXQUFsQixHQUFnQyxVQUFDQyxRQUFELEVBQWM7QUFDNUMsVUFBSUEsUUFBUSxTQUFSLElBQUFBLFFBQVEsV0FBUixJQUFBQSxRQUFRLENBQUVDLE1BQVYsSUFBb0JELFFBQVEsQ0FBQ0MsTUFBVCxLQUFvQkMsc0JBQVVDLHlCQUFsRCxJQUErRVgsaUJBQWlCLENBQUNDLFVBQWxCLEtBQWlDLEtBQXBILEVBQTJIO0FBQ3pILGVBQU8sS0FBUDtBQUNEOztBQUNELGFBQU8sSUFBUDtBQUNELEtBTEQ7QUFNRCxHQXRCaUYsQ0F3QmxGOzs7QUFDQSxNQUFNVyxPQUFPLEdBQUcsU0FBVkEsT0FBVSxDQUFDQyxLQUFELEVBQXVCO0FBRXJDLFFBQVFDLE1BQVIsR0FBNkJELEtBQTdCLENBQVFDLE1BQVI7QUFBQSxRQUFnQk4sUUFBaEIsR0FBNkJLLEtBQTdCLENBQWdCTCxRQUFoQixDQUZxQyxDQUdyQzs7QUFDQSxRQUFJLENBQUNNLE1BQUwsRUFBYTtBQUNYLGFBQU9DLE9BQU8sQ0FBQ0MsTUFBUixDQUFlSCxLQUFmLENBQVA7QUFDRCxLQU5vQyxDQVFyQzs7O0FBQ0EsUUFBSWIsaUJBQWlCLENBQUNPLFdBQWxCLElBQWlDLENBQUNQLGlCQUFpQixDQUFDTyxXQUFsQixDQUE4QkMsUUFBOUIsQ0FBdEMsRUFBK0U7QUFDN0UsYUFBT08sT0FBTyxDQUFDQyxNQUFSLENBQWVILEtBQWYsQ0FBUDtBQUNELEtBWG9DLENBWXJDOzs7QUFDQSxRQUFNTixXQUFXLEdBQUdGLFVBQVUsR0FBR0YsT0FBakM7O0FBRUEsUUFBSUksV0FBSixFQUFpQjtBQUNmRixNQUFBQSxVQUFVOztBQUVWLFVBQUlELGdCQUFnQixJQUFJSSxRQUFKLGFBQUlBLFFBQUosZUFBSUEsUUFBUSxDQUFFUyxPQUFsQyxFQUEyQztBQUFBLG1EQUNoQmIsZ0JBRGdCO0FBQUE7O0FBQUE7QUFDekMsOERBQTJDO0FBQUEsZ0JBQWhDYyxVQUFnQztBQUN6QyxnQkFBTUMsY0FBYyxHQUFHWCxRQUFILGFBQUdBLFFBQUgsdUJBQUdBLFFBQVEsQ0FBRVMsT0FBVixDQUFrQkMsVUFBVSxDQUFDRSxpQkFBWCxFQUFsQixDQUF2Qjs7QUFDQSxnQkFBSUQsY0FBSixFQUFvQjtBQUNsQjtBQUNBTCxjQUFBQSxNQUFNLENBQUNHLE9BQVAsQ0FBZUMsVUFBZixJQUE2QkMsY0FBN0I7QUFDRDtBQUNGO0FBUHdDO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFRMUM7O0FBRUQsYUFBTyxJQUFJSixPQUFKLENBQVksVUFBQ00sT0FBRDtBQUFBLGVBQWEsdUJBQU1yQixpQkFBaUIsQ0FBQ3NCLDBCQUF4QixFQUFvREMsSUFBcEQsQ0FBeUQ7QUFBQSxpQkFBTUYsT0FBTyxDQUFDdEIsS0FBSyxDQUFDZSxNQUFELENBQU4sQ0FBYjtBQUFBLFNBQXpELENBQWI7QUFBQSxPQUFaLENBQVA7QUFDRDs7QUFDRCxXQUFPQyxPQUFPLENBQUNDLE1BQVIsQ0FBZUgsS0FBZixDQUFQO0FBQ0QsR0EvQkQ7O0FBaUNBZCxFQUFBQSxLQUFLLENBQUN5QixZQUFOLENBQW1CaEIsUUFBbkIsQ0FBNEJpQixHQUE1QixDQUFnQ25CLFNBQWhDLEVBQTJDTSxPQUEzQyxFQTFEa0YsQ0EwRDdCO0FBQ3RELENBM0REOztlQTREZWQsVSIsInNvdXJjZVJvb3QiOiJvY3NkazovLy8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBeGlvc0Vycm9yLCBBeGlvc0luc3RhbmNlIH0gZnJvbSBcImF4aW9zXCI7XG5cbmltcG9ydCBDb25zdGFudHMgZnJvbSBcIi4uL0NvbW1vbi9Db25zdGFudHNcIjtcbmltcG9ydCBJQXhpb3NSZXRyeU9wdGlvbnMgZnJvbSBcIi4uL0ludGVyZmFjZXMvSUF4aW9zUmV0cnlPcHRpb25zXCI7XG5pbXBvcnQgc2xlZXAgZnJvbSBcIi4vc2xlZXBcIjtcblxuLyoqXG4gKiBDdXN0b20gaGFuZGxlciBmb3IgSFRUUCBjYWxscyB3aXRoIEF4aW9zLiBIYW5kbGVyIGFsbG93cyB0byByZXRyeSBIVFRQIGNhbGxzIGlmIGZhaWxlZC5cbiAqXG4gKiBAcGFyYW0gYXhpb3MgQXhpb3MgaW5zdGFuY2UuXG4gKiBAcGFyYW0gYXhpb3NSZXRyeU9wdGlvbnMgT3B0aW9ucyBmb3IgYXhpb3MgcmV0cnkuXG4gKi9cbmNvbnN0IGF4aW9zUmV0cnkgPSAoYXhpb3M6IEF4aW9zSW5zdGFuY2UsIGF4aW9zUmV0cnlPcHRpb25zOiBJQXhpb3NSZXRyeU9wdGlvbnMpID0+IHsgLy8gZXNsaW50LWRpc2FibGUtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvZXhwbGljaXQtbW9kdWxlLWJvdW5kYXJ5LXR5cGVzXG5cbiAgLy8gRGVmYXVsdCB2YWx1ZXNcbiAgaWYgKGF4aW9zUmV0cnlPcHRpb25zLnJldHJ5T240MjkgPT09IHVuZGVmaW5lZCB8fCBheGlvc1JldHJ5T3B0aW9ucy5yZXRyeU9uNDI5ID09PSBudWxsKSB7XG4gICAgYXhpb3NSZXRyeU9wdGlvbnMucmV0cnlPbjQyOSA9IHRydWU7XG4gIH1cblxuICBjb25zdCB7IHJldHJpZXMsIGhlYWRlck92ZXJ3cml0ZXMgfSA9IGF4aW9zUmV0cnlPcHRpb25zO1xuXG4gIGxldCBjdXJyZW50VHJ5ID0gMTsgLy8gRXhlY3V0ZWQgYXMgc29vbiBhcyBhZnRlciAxc3QgdHJ5XG5cbiAgLy8gTWV0aG9kIHRvIGludGVyY2VwdHMgcmVzcG9uc2VzIHdpdGhpbiByYW5nZSBvZiAyeHhcbiAgY29uc3Qgb25TdWNjZXNzID0gdW5kZWZpbmVkO1xuXG4gIC8vIGRlZmluZSBkZWZhdWx0IGJlaGF2aW91ciBmb3IgNDI5IHJldHJpZXMgaW4gY2FzZSB0aGUgaGFuZGxlciB3YXMgbm90IGluY2x1ZGVkIGJ5IHRoZSBjYWxsZXIuXG4gIGlmICghYXhpb3NSZXRyeU9wdGlvbnMuc2hvdWxkUmV0cnkpIHtcbiAgICBheGlvc1JldHJ5T3B0aW9ucy5zaG91bGRSZXRyeSA9IChyZXNwb25zZSkgPT4ge1xuICAgICAgaWYgKHJlc3BvbnNlPy5zdGF0dXMgJiYgcmVzcG9uc2Uuc3RhdHVzID09PSBDb25zdGFudHMudG9vTWFueVJlcXVlc3RzU3RhdHVzQ29kZSAmJiBheGlvc1JldHJ5T3B0aW9ucy5yZXRyeU9uNDI5ID09PSBmYWxzZSkge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICAvLyBNZXRob2QgdG8gaW50ZXJjZXB0cyByZXNwb25zZXMgb3V0c2lkZSByYW5nZSBvZiAyeHhcbiAgY29uc3Qgb25FcnJvciA9IChlcnJvcjogQXhpb3NFcnJvcikgPT4ge1xuXG4gICAgY29uc3QgeyBjb25maWcsIHJlc3BvbnNlIH0gPSBlcnJvcjtcbiAgICAvLyBJZiB3ZSBoYXZlIG5vIGluZm9ybWF0aW9uIG9mIHRoZSByZXF1ZXN0IHRvIHJldHJ5XG4gICAgaWYgKCFjb25maWcpIHtcbiAgICAgIHJldHVybiBQcm9taXNlLnJlamVjdChlcnJvcik7XG4gICAgfVxuXG4gICAgLy8gRXZhbHVhdGVzIGlmIGV4ZWN1dGlvbiBzaG91bGQgc3RvcCBhY2NvcmRpbmcgdG8gdGhlIGNvbmRpdGlvbnMgZGVmaW5lZCBpbiB0aGUgaGFuZGxlclxuICAgIGlmIChheGlvc1JldHJ5T3B0aW9ucy5zaG91bGRSZXRyeSAmJiAhYXhpb3NSZXRyeU9wdGlvbnMuc2hvdWxkUmV0cnkocmVzcG9uc2UpKSB7XG4gICAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QoZXJyb3IpO1xuICAgIH1cbiAgICAvLyBSZXRyeSByZXF1ZXN0IGlmIGJlbG93IHRocmVzaG9sZFxuICAgIGNvbnN0IHNob3VsZFJldHJ5ID0gY3VycmVudFRyeSA8IHJldHJpZXM7XG5cbiAgICBpZiAoc2hvdWxkUmV0cnkpIHtcbiAgICAgIGN1cnJlbnRUcnkrKztcblxuICAgICAgaWYgKGhlYWRlck92ZXJ3cml0ZXMgJiYgcmVzcG9uc2U/LmhlYWRlcnMpIHtcbiAgICAgICAgZm9yIChjb25zdCBoZWFkZXJOYW1lIG9mIGhlYWRlck92ZXJ3cml0ZXMpIHtcbiAgICAgICAgICBjb25zdCByZXNwb25zZUhlYWRlciA9IHJlc3BvbnNlPy5oZWFkZXJzW2hlYWRlck5hbWUudG9Mb2NhbGVMb3dlckNhc2UoKV07XG4gICAgICAgICAgaWYgKHJlc3BvbnNlSGVhZGVyKSB7XG4gICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VjdXJpdHkvZGV0ZWN0LW9iamVjdC1pbmplY3Rpb25cbiAgICAgICAgICAgIGNvbmZpZy5oZWFkZXJzW2hlYWRlck5hbWVdID0gcmVzcG9uc2VIZWFkZXI7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4gc2xlZXAoYXhpb3NSZXRyeU9wdGlvbnMud2FpdFRpbWVJbk1zQmV0d2VlblJldHJpZXMpLnRoZW4oKCkgPT4gcmVzb2x2ZShheGlvcyhjb25maWcpKSkpO1xuICAgIH1cbiAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QoZXJyb3IpO1xuICB9O1xuXG4gIGF4aW9zLmludGVyY2VwdG9ycy5yZXNwb25zZS51c2Uob25TdWNjZXNzLCBvbkVycm9yKTsgLy8gSW50ZXJjZXB0IHJlc3BvbnNlIGJlZm9yZSByZXR1cm5pbmdcbn07XG5leHBvcnQgZGVmYXVsdCBheGlvc1JldHJ5OyJdfQ==
@@ -1 +0,0 @@
1
- {"version":3,"file":"axiosRetry.js","sourceRoot":"","sources":["../../src/Utils/axiosRetry.ts"],"names":[],"mappings":";;AAEA,iDAA4C;AAE5C,iCAA4B;AAE5B;;;;;GAKG;AACH,IAAM,UAAU,GAAG,UAAC,KAAoB,EAAE,iBAAqC;IAE7E,iBAAiB;IACjB,IAAI,iBAAiB,CAAC,UAAU,KAAK,SAAS,IAAI,iBAAiB,CAAC,UAAU,KAAK,IAAI,EAAE;QACvF,iBAAiB,CAAC,UAAU,GAAG,IAAI,CAAC;KACrC;IAEO,IAAA,OAAO,GAAuB,iBAAiB,QAAxC,EAAE,gBAAgB,GAAK,iBAAiB,iBAAtB,CAAuB;IAExD,IAAI,UAAU,GAAG,CAAC,CAAC,CAAC,oCAAoC;IAExD,qDAAqD;IACrD,IAAM,SAAS,GAAG,SAAS,CAAC;IAE5B,+FAA+F;IAC/F,IAAI,CAAC,iBAAiB,CAAC,WAAW,EAAE;QAClC,iBAAiB,CAAC,WAAW,GAAG,UAAC,QAAQ;YACvC,IAAI,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,MAAM,KAAI,QAAQ,CAAC,MAAM,KAAK,mBAAS,CAAC,yBAAyB,IAAI,iBAAiB,CAAC,UAAU,KAAK,KAAK,EAAE;gBACzH,OAAO,KAAK,CAAC;aACd;YACD,OAAO,IAAI,CAAC;QACd,CAAC,CAAA;KACF;IAED,sDAAsD;IACtD,IAAM,OAAO,GAAG,UAAC,KAAiB;QAExB,IAAA,MAAM,GAAe,KAAK,OAApB,EAAE,QAAQ,GAAK,KAAK,SAAV,CAAW;QACnC,oDAAoD;QACpD,IAAI,CAAC,MAAM,EAAE;YACX,OAAO,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;SAC9B;QAED,wFAAwF;QACxF,IAAI,iBAAiB,CAAC,WAAW,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE;YAC7E,OAAO,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;SAC9B;QACD,mCAAmC;QACnC,IAAM,WAAW,GAAG,UAAU,GAAG,OAAO,CAAC;QAEzC,IAAI,WAAW,EAAE;YACf,UAAU,EAAE,CAAC;YAEb,IAAI,gBAAgB,KAAI,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAO,CAAA,EAAE;gBACzC,KAAyB,UAAgB,EAAhB,qCAAgB,EAAhB,8BAAgB,EAAhB,IAAgB,EAAE;oBAAtC,IAAM,UAAU,yBAAA;oBACnB,IAAM,cAAc,GAAG,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAO,CAAC,UAAU,CAAC,iBAAiB,EAAE,CAAC,CAAC;oBACzE,IAAI,cAAc,EAAE;wBAClB,4DAA4D;wBAC5D,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,cAAc,CAAC;qBAC7C;iBACF;aACF;YAED,OAAO,IAAI,OAAO,CAAC,UAAC,OAAO,IAAK,OAAA,IAAA,eAAK,EAAC,iBAAiB,CAAC,0BAA0B,CAAC,CAAC,IAAI,CAAC,cAAM,OAAA,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAtB,CAAsB,CAAC,EAAtF,CAAsF,CAAC,CAAC;SACzH;QACD,OAAO,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC,CAAC;IAEF,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,sCAAsC;AAC7F,CAAC,CAAC;AACF,kBAAe,UAAU,CAAC"}