@supabase/gotrue-js 2.8.0 → 2.10.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.
@@ -26,8 +26,7 @@ export default class GoTrueClient {
26
26
  protected persistSession: boolean;
27
27
  protected storage: SupportedStorage;
28
28
  protected stateChangeEmitters: Map<string, Subscription>;
29
- protected refreshTokenTimer?: ReturnType<typeof setTimeout>;
30
- protected networkRetries: number;
29
+ protected autoRefreshTicker: ReturnType<typeof setInterval> | null;
31
30
  protected refreshingDeferred: Deferred<CallRefreshTokenResult> | null;
32
31
  /**
33
32
  * Keeps track of the async client initialization.
@@ -234,12 +233,45 @@ export default class GoTrueClient {
234
233
  private _persistSession;
235
234
  private _removeSession;
236
235
  /**
237
- * Clear and re-create refresh token timer
238
- * @param value time intervals in milliseconds.
239
- * @param session The current session.
236
+ * Starts an auto-refresh process in the background. The session is checked
237
+ * every few seconds. Close to the time of expiration a process is started to
238
+ * refresh the session. If refreshing fails it will be retried for as long as
239
+ * necessary.
240
+ *
241
+ * If you set the {@link GoTrueClientOptions#autoRefreshToken} you don't need
242
+ * to call this function, it will be called for you.
243
+ *
244
+ * On browsers the refresh process works only when the tab/window is in the
245
+ * foreground to conserve resources as well as prevent race conditions and
246
+ * flooding auth with requests.
247
+ *
248
+ * On non-browser platforms the refresh process works *continuously* in the
249
+ * background, which may not be desireable. You should hook into your
250
+ * platform's foreground indication mechanism and call these methods
251
+ * appropriately to conserve resources.
252
+ *
253
+ * {@see #stopAutoRefresh}
254
+ */
255
+ startAutoRefresh(): Promise<void>;
256
+ /**
257
+ * Stops an active auto refresh process running in the background (if any).
258
+ * See {@link #startAutoRefresh} for more details.
259
+ */
260
+ stopAutoRefresh(): Promise<void>;
261
+ /**
262
+ * Runs the auto refresh token tick.
263
+ */
264
+ private _autoRefreshTokenTick;
265
+ /**
266
+ * Registers callbacks on the browser / platform, which in-turn run
267
+ * algorithms when the browser window/tab are in foreground. On non-browser
268
+ * platforms it assumes always foreground.
240
269
  */
241
- private _startAutoRefreshToken;
242
270
  private _handleVisibilityChange;
271
+ /**
272
+ * Callback registered with `window.addEventListener('visibilitychange')`.
273
+ */
274
+ private _onVisibilityChanged;
243
275
  /**
244
276
  * Generates the relevant login URL for a third-party provider.
245
277
  * @param options.redirectTo A URL or mobile address to send the user to after they are confirmed.
@@ -249,36 +281,27 @@ export default class GoTrueClient {
249
281
  private _getUrlForProvider;
250
282
  private _unenroll;
251
283
  /**
252
- * Enrolls a factor
253
- * @param friendlyName Human readable name assigned to a device
254
- * @param factorType device which we're validating against. Can only be TOTP for now.
255
- * @param issuer domain which the user is enrolling with
284
+ * {@see GoTrueMFAApi#enroll}
256
285
  */
257
286
  private _enroll;
258
287
  /**
259
- * Validates a device as part of the enrollment step.
260
- * @param factorId System assigned identifier for authenticator device as returned by enroll
261
- * @param code Code Generated by an authenticator device
288
+ * {@see GoTrueMFAApi#verify}
262
289
  */
263
290
  private _verify;
264
291
  /**
265
- * Creates a challenge which a user can verify against
266
- * @param factorId System assigned identifier for authenticator device as returned by enroll
292
+ * {@see GoTrueMFAApi#challenge}
267
293
  */
268
294
  private _challenge;
269
295
  /**
270
- * Creates a challenge and immediately verifies it
271
- * @param factorId System assigned identifier for authenticator device as returned by enroll
272
- * @param code Code Generated by an authenticator device
296
+ * {@see GoTrueMFAApi#challengeAndVerify}
273
297
  */
274
298
  private _challengeAndVerify;
275
299
  /**
276
- * Displays all devices for a given user
300
+ * {@see GoTrueMFAApi#listFactors}
277
301
  */
278
302
  private _listFactors;
279
303
  /**
280
- * Gets the current and next authenticator assurance level (AAL)
281
- * and the current authentication methods for the session (AMR)
304
+ * {@see GoTrueMFAApi#getAuthenticatorAssuranceLevel}
282
305
  */
283
306
  private _getAuthenticatorAssuranceLevel;
284
307
  }
@@ -1 +1 @@
1
- {"version":3,"file":"GoTrueClient.d.ts","sourceRoot":"","sources":["../../src/GoTrueClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GoTrueClient.d.ts","sourceRoot":"","sources":["../../src/GoTrueClient.ts"],"names":[],"mappings":"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"}
@@ -28,13 +28,18 @@ const DEFAULT_OPTIONS = {
28
28
  detectSessionInUrl: true,
29
29
  headers: constants_1.DEFAULT_HEADERS,
30
30
  };
31
+ /** Current session will be checked for refresh at this interval. */
32
+ const AUTO_REFRESH_TICK_DURATION = 10 * 1000;
33
+ /**
34
+ * A token refresh will be attempted this many ticks before the current session expires. */
35
+ const AUTO_REFRESH_TICK_THRESHOLD = 3;
31
36
  class GoTrueClient {
32
37
  /**
33
38
  * Create a new client for use in the browser.
34
39
  */
35
40
  constructor(options) {
36
41
  this.stateChangeEmitters = new Map();
37
- this.networkRetries = 0;
42
+ this.autoRefreshTicker = null;
38
43
  this.refreshingDeferred = null;
39
44
  /**
40
45
  * Keeps track of the async client initialization.
@@ -59,7 +64,6 @@ class GoTrueClient {
59
64
  this.headers = settings.headers;
60
65
  this.fetch = (0, helpers_1.resolveFetch)(settings.fetch);
61
66
  this.detectSessionInUrl = settings.detectSessionInUrl;
62
- this.initialize();
63
67
  this.mfa = {
64
68
  verify: this._verify.bind(this),
65
69
  enroll: this._enroll.bind(this),
@@ -69,6 +73,7 @@ class GoTrueClient {
69
73
  challengeAndVerify: this._challengeAndVerify.bind(this),
70
74
  getAuthenticatorAssuranceLevel: this._getAuthenticatorAssuranceLevel.bind(this),
71
75
  };
76
+ this.initialize();
72
77
  }
73
78
  /**
74
79
  * Initializes the client session either from the url or from storage.
@@ -122,7 +127,7 @@ class GoTrueClient {
122
127
  };
123
128
  }
124
129
  finally {
125
- this._handleVisibilityChange();
130
+ yield this._handleVisibilityChange();
126
131
  }
127
132
  });
128
133
  }
@@ -255,13 +260,14 @@ class GoTrueClient {
255
260
  * Log in an existing user via a third-party provider.
256
261
  */
257
262
  signInWithOAuth(credentials) {
258
- var _a, _b, _c;
263
+ var _a, _b, _c, _d;
259
264
  return __awaiter(this, void 0, void 0, function* () {
260
265
  yield this._removeSession();
261
266
  return this._handleProviderSignIn(credentials.provider, {
262
267
  redirectTo: (_a = credentials.options) === null || _a === void 0 ? void 0 : _a.redirectTo,
263
268
  scopes: (_b = credentials.options) === null || _b === void 0 ? void 0 : _b.scopes,
264
269
  queryParams: (_c = credentials.options) === null || _c === void 0 ? void 0 : _c.queryParams,
270
+ skipBrowserRedirect: (_d = credentials.options) === null || _d === void 0 ? void 0 : _d.skipBrowserRedirect,
265
271
  });
266
272
  });
267
273
  }
@@ -746,11 +752,20 @@ class GoTrueClient {
746
752
  _refreshAccessToken(refreshToken) {
747
753
  return __awaiter(this, void 0, void 0, function* () {
748
754
  try {
749
- return yield (0, fetch_1._request)(this.fetch, 'POST', `${this.url}/token?grant_type=refresh_token`, {
750
- body: { refresh_token: refreshToken },
751
- headers: this.headers,
752
- xform: fetch_1._sessionResponse,
753
- });
755
+ const startedAt = Date.now();
756
+ // will attempt to refresh the token with exponential backoff
757
+ return yield (0, helpers_1.retryable)((attempt) => __awaiter(this, void 0, void 0, function* () {
758
+ yield (0, helpers_1.sleep)(attempt * 200); // 0, 200, 400, 800, ...
759
+ return yield (0, fetch_1._request)(this.fetch, 'POST', `${this.url}/token?grant_type=refresh_token`, {
760
+ body: { refresh_token: refreshToken },
761
+ headers: this.headers,
762
+ xform: fetch_1._sessionResponse,
763
+ });
764
+ }), (attempt, _, result) => result &&
765
+ result.error &&
766
+ result.error instanceof errors_1.AuthRetryableFetchError &&
767
+ // retryable only if the request can be sent before the backoff overflows the tick duration
768
+ Date.now() + (attempt + 1) * 200 - startedAt < AUTO_REFRESH_TICK_DURATION);
754
769
  }
755
770
  catch (error) {
756
771
  if ((0, errors_1.isAuthError)(error)) {
@@ -775,7 +790,7 @@ class GoTrueClient {
775
790
  queryParams: options.queryParams,
776
791
  });
777
792
  // try to open on the browser
778
- if ((0, helpers_1.isBrowser)()) {
793
+ if ((0, helpers_1.isBrowser)() && !options.skipBrowserRedirect) {
779
794
  window.location.assign(url);
780
795
  }
781
796
  return { data: { provider, url }, error: null };
@@ -798,21 +813,11 @@ class GoTrueClient {
798
813
  const timeNow = Math.round(Date.now() / 1000);
799
814
  if (((_a = currentSession.expires_at) !== null && _a !== void 0 ? _a : Infinity) < timeNow + constants_1.EXPIRY_MARGIN) {
800
815
  if (this.autoRefreshToken && currentSession.refresh_token) {
801
- this.networkRetries++;
802
816
  const { error } = yield this._callRefreshToken(currentSession.refresh_token);
803
817
  if (error) {
804
818
  console.log(error.message);
805
- if (error instanceof errors_1.AuthRetryableFetchError &&
806
- this.networkRetries < constants_1.NETWORK_FAILURE.MAX_RETRIES) {
807
- if (this.refreshTokenTimer)
808
- clearTimeout(this.refreshTokenTimer);
809
- this.refreshTokenTimer = setTimeout(() => this._recoverAndRefresh(), Math.pow(constants_1.NETWORK_FAILURE.RETRY_INTERVAL, this.networkRetries) * 100 // exponential backoff
810
- );
811
- return;
812
- }
813
819
  yield this._removeSession();
814
820
  }
815
- this.networkRetries = 0;
816
821
  }
817
822
  else {
818
823
  yield this._removeSession();
@@ -880,13 +885,6 @@ class GoTrueClient {
880
885
  if (!this.persistSession) {
881
886
  this.inMemorySession = session;
882
887
  }
883
- const expiresAt = session.expires_at;
884
- if (expiresAt) {
885
- const timeNow = Math.round(Date.now() / 1000);
886
- const expiresIn = expiresAt - timeNow;
887
- const refreshDurationBeforeExpires = expiresIn > constants_1.EXPIRY_MARGIN ? constants_1.EXPIRY_MARGIN : 0.5;
888
- this._startAutoRefreshToken((expiresIn - refreshDurationBeforeExpires) * 1000);
889
- }
890
888
  if (this.persistSession && session.expires_at) {
891
889
  yield this._persistSession(session);
892
890
  }
@@ -903,51 +901,119 @@ class GoTrueClient {
903
901
  else {
904
902
  this.inMemorySession = null;
905
903
  }
906
- if (this.refreshTokenTimer) {
907
- clearTimeout(this.refreshTokenTimer);
904
+ });
905
+ }
906
+ /**
907
+ * Starts an auto-refresh process in the background. The session is checked
908
+ * every few seconds. Close to the time of expiration a process is started to
909
+ * refresh the session. If refreshing fails it will be retried for as long as
910
+ * necessary.
911
+ *
912
+ * If you set the {@link GoTrueClientOptions#autoRefreshToken} you don't need
913
+ * to call this function, it will be called for you.
914
+ *
915
+ * On browsers the refresh process works only when the tab/window is in the
916
+ * foreground to conserve resources as well as prevent race conditions and
917
+ * flooding auth with requests.
918
+ *
919
+ * On non-browser platforms the refresh process works *continuously* in the
920
+ * background, which may not be desireable. You should hook into your
921
+ * platform's foreground indication mechanism and call these methods
922
+ * appropriately to conserve resources.
923
+ *
924
+ * {@see #stopAutoRefresh}
925
+ */
926
+ startAutoRefresh() {
927
+ return __awaiter(this, void 0, void 0, function* () {
928
+ yield this.stopAutoRefresh();
929
+ this.autoRefreshTicker = setInterval(() => this._autoRefreshTokenTick(), AUTO_REFRESH_TICK_DURATION);
930
+ // run the tick immediately
931
+ yield this._autoRefreshTokenTick();
932
+ });
933
+ }
934
+ /**
935
+ * Stops an active auto refresh process running in the background (if any).
936
+ * See {@link #startAutoRefresh} for more details.
937
+ */
938
+ stopAutoRefresh() {
939
+ return __awaiter(this, void 0, void 0, function* () {
940
+ const ticker = this.autoRefreshTicker;
941
+ this.autoRefreshTicker = null;
942
+ if (ticker) {
943
+ clearInterval(ticker);
908
944
  }
909
945
  });
910
946
  }
911
947
  /**
912
- * Clear and re-create refresh token timer
913
- * @param value time intervals in milliseconds.
914
- * @param session The current session.
948
+ * Runs the auto refresh token tick.
915
949
  */
916
- _startAutoRefreshToken(value) {
917
- if (this.refreshTokenTimer)
918
- clearTimeout(this.refreshTokenTimer);
919
- if (value <= 0 || !this.autoRefreshToken)
920
- return;
921
- this.refreshTokenTimer = setTimeout(() => __awaiter(this, void 0, void 0, function* () {
922
- this.networkRetries++;
923
- const { data: { session }, error: sessionError, } = yield this.getSession();
924
- if (!sessionError && session) {
925
- const { error } = yield this._callRefreshToken(session.refresh_token);
926
- if (!error)
927
- this.networkRetries = 0;
928
- if (error instanceof errors_1.AuthRetryableFetchError &&
929
- this.networkRetries < constants_1.NETWORK_FAILURE.MAX_RETRIES)
930
- this._startAutoRefreshToken(Math.pow(constants_1.NETWORK_FAILURE.RETRY_INTERVAL, this.networkRetries) * 100); // exponential backoff
931
- }
932
- }), value);
933
- if (typeof this.refreshTokenTimer.unref === 'function')
934
- this.refreshTokenTimer.unref();
950
+ _autoRefreshTokenTick() {
951
+ return __awaiter(this, void 0, void 0, function* () {
952
+ const now = Date.now();
953
+ try {
954
+ const { data: { session }, error, } = yield this.getSession();
955
+ if (!session || !session.refresh_token || !session.expires_at) {
956
+ return;
957
+ }
958
+ // session will expire in this many ticks (or has already expired if <= 0)
959
+ const expiresInTicks = Math.floor((session.expires_at * 1000 - now) / AUTO_REFRESH_TICK_DURATION);
960
+ if (expiresInTicks < AUTO_REFRESH_TICK_THRESHOLD) {
961
+ yield this._callRefreshToken(session.refresh_token);
962
+ }
963
+ }
964
+ catch (e) {
965
+ console.error('Auto refresh tick failed with error. This is likely a transient error.', e);
966
+ }
967
+ });
935
968
  }
969
+ /**
970
+ * Registers callbacks on the browser / platform, which in-turn run
971
+ * algorithms when the browser window/tab are in foreground. On non-browser
972
+ * platforms it assumes always foreground.
973
+ */
936
974
  _handleVisibilityChange() {
937
- if (!(0, helpers_1.isBrowser)() || !(window === null || window === void 0 ? void 0 : window.addEventListener)) {
938
- return false;
939
- }
940
- try {
941
- window === null || window === void 0 ? void 0 : window.addEventListener('visibilitychange', () => __awaiter(this, void 0, void 0, function* () {
942
- if (document.visibilityState === 'visible') {
975
+ return __awaiter(this, void 0, void 0, function* () {
976
+ if (!(0, helpers_1.isBrowser)() || !(window === null || window === void 0 ? void 0 : window.addEventListener)) {
977
+ if (this.autoRefreshToken) {
978
+ // in non-browser environments the refresh token ticker runs always
979
+ this.startAutoRefresh();
980
+ }
981
+ return false;
982
+ }
983
+ try {
984
+ window === null || window === void 0 ? void 0 : window.addEventListener('visibilitychange', () => __awaiter(this, void 0, void 0, function* () { return yield this._onVisibilityChanged(false); }));
985
+ // now immediately call the visbility changed callback to setup with the
986
+ // current visbility state
987
+ yield this._onVisibilityChanged(true); // initial call
988
+ }
989
+ catch (error) {
990
+ console.error('_handleVisibilityChange', error);
991
+ }
992
+ });
993
+ }
994
+ /**
995
+ * Callback registered with `window.addEventListener('visibilitychange')`.
996
+ */
997
+ _onVisibilityChanged(isInitial) {
998
+ return __awaiter(this, void 0, void 0, function* () {
999
+ if (document.visibilityState === 'visible') {
1000
+ if (!isInitial) {
1001
+ // initial visibility change setup is handled in another flow under #initialize()
943
1002
  yield this.initializePromise;
944
1003
  yield this._recoverAndRefresh();
945
1004
  }
946
- }));
947
- }
948
- catch (error) {
949
- console.error('_handleVisibilityChange', error);
950
- }
1005
+ if (this.autoRefreshToken) {
1006
+ // in browser environments the refresh token ticker runs only on focused tabs
1007
+ // which prevents race conditions
1008
+ this.startAutoRefresh();
1009
+ }
1010
+ }
1011
+ else if (document.visibilityState === 'hidden') {
1012
+ if (this.autoRefreshToken) {
1013
+ this.stopAutoRefresh();
1014
+ }
1015
+ }
1016
+ });
951
1017
  }
952
1018
  /**
953
1019
  * Generates the relevant login URL for a third-party provider.
@@ -991,10 +1057,7 @@ class GoTrueClient {
991
1057
  });
992
1058
  }
993
1059
  /**
994
- * Enrolls a factor
995
- * @param friendlyName Human readable name assigned to a device
996
- * @param factorType device which we're validating against. Can only be TOTP for now.
997
- * @param issuer domain which the user is enrolling with
1060
+ * {@see GoTrueMFAApi#enroll}
998
1061
  */
999
1062
  _enroll(params) {
1000
1063
  var _a, _b;
@@ -1030,9 +1093,7 @@ class GoTrueClient {
1030
1093
  });
1031
1094
  }
1032
1095
  /**
1033
- * Validates a device as part of the enrollment step.
1034
- * @param factorId System assigned identifier for authenticator device as returned by enroll
1035
- * @param code Code Generated by an authenticator device
1096
+ * {@see GoTrueMFAApi#verify}
1036
1097
  */
1037
1098
  _verify(params) {
1038
1099
  var _a;
@@ -1063,8 +1124,7 @@ class GoTrueClient {
1063
1124
  });
1064
1125
  }
1065
1126
  /**
1066
- * Creates a challenge which a user can verify against
1067
- * @param factorId System assigned identifier for authenticator device as returned by enroll
1127
+ * {@see GoTrueMFAApi#challenge}
1068
1128
  */
1069
1129
  _challenge(params) {
1070
1130
  var _a;
@@ -1088,9 +1148,7 @@ class GoTrueClient {
1088
1148
  });
1089
1149
  }
1090
1150
  /**
1091
- * Creates a challenge and immediately verifies it
1092
- * @param factorId System assigned identifier for authenticator device as returned by enroll
1093
- * @param code Code Generated by an authenticator device
1151
+ * {@see GoTrueMFAApi#challengeAndVerify}
1094
1152
  */
1095
1153
  _challengeAndVerify(params) {
1096
1154
  return __awaiter(this, void 0, void 0, function* () {
@@ -1108,7 +1166,7 @@ class GoTrueClient {
1108
1166
  });
1109
1167
  }
1110
1168
  /**
1111
- * Displays all devices for a given user
1169
+ * {@see GoTrueMFAApi#listFactors}
1112
1170
  */
1113
1171
  _listFactors() {
1114
1172
  return __awaiter(this, void 0, void 0, function* () {
@@ -1128,8 +1186,7 @@ class GoTrueClient {
1128
1186
  });
1129
1187
  }
1130
1188
  /**
1131
- * Gets the current and next authenticator assurance level (AAL)
1132
- * and the current authentication methods for the session (AMR)
1189
+ * {@see GoTrueMFAApi#getAuthenticatorAssuranceLevel}
1133
1190
  */
1134
1191
  _getAuthenticatorAssuranceLevel() {
1135
1192
  var _a, _b;
@@ -1 +1 @@
1
- {"version":3,"file":"GoTrueClient.js","sourceRoot":"","sources":["../../src/GoTrueClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GoTrueClient.js","sourceRoot":"","sources":["../../src/GoTrueClient.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,sEAA6C;AAC7C,+CAMwB;AACxB,yCASqB;AACrB,uCAA4F;AAC5F,2CAYsB;AACtB,wEAAqD;AACrD,+CAAoD;AAuCpD,IAAA,8BAAkB,GAAE,CAAA,CAAC,8BAA8B;AAEnD,MAAM,eAAe,GAA6D;IAChF,GAAG,EAAE,sBAAU;IACf,UAAU,EAAE,uBAAW;IACvB,gBAAgB,EAAE,IAAI;IACtB,cAAc,EAAE,IAAI;IACpB,kBAAkB,EAAE,IAAI;IACxB,OAAO,EAAE,2BAAe;CACzB,CAAA;AAED,oEAAoE;AACpE,MAAM,0BAA0B,GAAG,EAAE,GAAG,IAAI,CAAA;AAE5C;2FAC2F;AAC3F,MAAM,2BAA2B,GAAG,CAAC,CAAA;AAErC,MAAqB,YAAY;IAyC/B;;OAEG;IACH,YAAY,OAA4B;QApB9B,wBAAmB,GAA8B,IAAI,GAAG,EAAE,CAAA;QAC1D,sBAAiB,GAA0C,IAAI,CAAA;QAC/D,uBAAkB,GAA4C,IAAI,CAAA;QAC5E;;;;;WAKG;QACO,sBAAiB,GAAqC,IAAI,CAAA;QAC1D,uBAAkB,GAAG,IAAI,CAAA;QAWjC,MAAM,QAAQ,mCAAQ,eAAe,GAAK,OAAO,CAAE,CAAA;QACnD,IAAI,CAAC,eAAe,GAAG,IAAI,CAAA;QAC3B,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAA;QACrC,IAAI,CAAC,gBAAgB,GAAG,QAAQ,CAAC,gBAAgB,CAAA;QACjD,IAAI,CAAC,cAAc,GAAG,QAAQ,CAAC,cAAc,CAAA;QAC7C,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC,OAAO,IAAI,uBAAmB,CAAA;QACtD,IAAI,CAAC,KAAK,GAAG,IAAI,wBAAc,CAAC;YAC9B,GAAG,EAAE,QAAQ,CAAC,GAAG;YACjB,OAAO,EAAE,QAAQ,CAAC,OAAO;YACzB,KAAK,EAAE,QAAQ,CAAC,KAAK;SACtB,CAAC,CAAA;QAEF,IAAI,CAAC,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAA;QACvB,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAA;QAC/B,IAAI,CAAC,KAAK,GAAG,IAAA,sBAAY,EAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;QACzC,IAAI,CAAC,kBAAkB,GAAG,QAAQ,CAAC,kBAAkB,CAAA;QAErD,IAAI,CAAC,GAAG,GAAG;YACT,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;YAC/B,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;YAC/B,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;YACnC,SAAS,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;YACrC,WAAW,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC;YACzC,kBAAkB,EAAE,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC;YACvD,8BAA8B,EAAE,IAAI,CAAC,+BAA+B,CAAC,IAAI,CAAC,IAAI,CAAC;SAChF,CAAA;QAED,IAAI,CAAC,UAAU,EAAE,CAAA;IACnB,CAAC;IAED;;;;OAIG;IACH,UAAU;QACR,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE;YAC3B,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;SAC5C;QAED,OAAO,IAAI,CAAC,iBAAiB,CAAA;IAC/B,CAAC;IAED;;;;;OAKG;IACW,WAAW;;YACvB,IAAI,IAAI,CAAC,iBAAiB,EAAE;gBAC1B,OAAO,IAAI,CAAC,iBAAiB,CAAA;aAC9B;YAED,IAAI;gBACF,IAAI,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC,oBAAoB,EAAE,EAAE;oBAC1D,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAA;oBAEvD,IAAI,KAAK,EAAE;wBACT,gCAAgC;wBAChC,6DAA6D;wBAC7D,MAAM,IAAI,CAAC,cAAc,EAAE,CAAA;wBAE3B,OAAO,EAAE,KAAK,EAAE,CAAA;qBACjB;oBAED,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,IAAI,CAAA;oBAEtC,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAA;oBAChC,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAA;oBAChD,IAAI,YAAY,KAAK,UAAU,EAAE;wBAC/B,IAAI,CAAC,qBAAqB,CAAC,mBAAmB,EAAE,OAAO,CAAC,CAAA;qBACzD;oBAED,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAA;iBACvB;gBAED,wEAAwE;gBACxE,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAA;gBAC/B,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAA;aACvB;YAAC,OAAO,KAAK,EAAE;gBACd,IAAI,IAAA,oBAAW,EAAC,KAAK,CAAC,EAAE;oBACtB,OAAO,EAAE,KAAK,EAAE,CAAA;iBACjB;gBAED,OAAO;oBACL,KAAK,EAAE,IAAI,yBAAgB,CAAC,wCAAwC,EAAE,KAAK,CAAC;iBAC7E,CAAA;aACF;oBAAS;gBACR,MAAM,IAAI,CAAC,uBAAuB,EAAE,CAAA;aACrC;QACH,CAAC;KAAA;IAED;;;;;;;;OAQG;IACG,MAAM,CAAC,WAA0C;;;YACrD,IAAI;gBACF,MAAM,IAAI,CAAC,cAAc,EAAE,CAAA;gBAE3B,IAAI,GAAiB,CAAA;gBACrB,IAAI,OAAO,IAAI,WAAW,EAAE;oBAC1B,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,WAAW,CAAA;oBAChD,GAAG,GAAG,MAAM,IAAA,gBAAQ,EAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,SAAS,EAAE;wBAC7D,OAAO,EAAE,IAAI,CAAC,OAAO;wBACrB,UAAU,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,eAAe;wBACpC,IAAI,EAAE;4BACJ,KAAK;4BACL,QAAQ;4BACR,IAAI,EAAE,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,mCAAI,EAAE;4BACzB,oBAAoB,EAAE,EAAE,aAAa,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,YAAY,EAAE;yBAC/D;wBACD,KAAK,EAAE,wBAAgB;qBACxB,CAAC,CAAA;iBACH;qBAAM,IAAI,OAAO,IAAI,WAAW,EAAE;oBACjC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,WAAW,CAAA;oBAChD,GAAG,GAAG,MAAM,IAAA,gBAAQ,EAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,SAAS,EAAE;wBAC7D,OAAO,EAAE,IAAI,CAAC,OAAO;wBACrB,IAAI,EAAE;4BACJ,KAAK;4BACL,QAAQ;4BACR,IAAI,EAAE,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,mCAAI,EAAE;4BACzB,oBAAoB,EAAE,EAAE,aAAa,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,YAAY,EAAE;yBAC/D;wBACD,KAAK,EAAE,wBAAgB;qBACxB,CAAC,CAAA;iBACH;qBAAM;oBACL,MAAM,IAAI,oCAA2B,CACnC,iEAAiE,CAClE,CAAA;iBACF;gBAED,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,GAAG,CAAA;gBAE3B,IAAI,KAAK,IAAI,CAAC,IAAI,EAAE;oBAClB,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAA;iBAC7D;gBAED,MAAM,OAAO,GAAmB,IAAI,CAAC,OAAO,CAAA;gBAC5C,MAAM,IAAI,GAAgB,IAAI,CAAC,IAAI,CAAA;gBAEnC,IAAI,IAAI,CAAC,OAAO,EAAE;oBAChB,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;oBACrC,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAA;iBACjD;gBAED,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAA;aAChD;YAAC,OAAO,KAAK,EAAE;gBACd,IAAI,IAAA,oBAAW,EAAC,KAAK,CAAC,EAAE;oBACtB,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,CAAA;iBACtD;gBAED,MAAM,KAAK,CAAA;aACZ;;KACF;IAED;;;;;;;OAOG;IACG,kBAAkB,CAAC,WAA0C;;;YACjE,IAAI;gBACF,MAAM,IAAI,CAAC,cAAc,EAAE,CAAA;gBAE3B,IAAI,GAAiB,CAAA;gBACrB,IAAI,OAAO,IAAI,WAAW,EAAE;oBAC1B,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,WAAW,CAAA;oBAChD,GAAG,GAAG,MAAM,IAAA,gBAAQ,EAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,4BAA4B,EAAE;wBAChF,OAAO,EAAE,IAAI,CAAC,OAAO;wBACrB,IAAI,EAAE;4BACJ,KAAK;4BACL,QAAQ;4BACR,IAAI,EAAE,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,mCAAI,EAAE;4BACzB,oBAAoB,EAAE,EAAE,aAAa,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,YAAY,EAAE;yBAC/D;wBACD,KAAK,EAAE,wBAAgB;qBACxB,CAAC,CAAA;iBACH;qBAAM,IAAI,OAAO,IAAI,WAAW,EAAE;oBACjC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,WAAW,CAAA;oBAChD,GAAG,GAAG,MAAM,IAAA,gBAAQ,EAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,4BAA4B,EAAE;wBAChF,OAAO,EAAE,IAAI,CAAC,OAAO;wBACrB,IAAI,EAAE;4BACJ,KAAK;4BACL,QAAQ;4BACR,IAAI,EAAE,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,mCAAI,EAAE;4BACzB,oBAAoB,EAAE,EAAE,aAAa,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,YAAY,EAAE;yBAC/D;wBACD,KAAK,EAAE,wBAAgB;qBACxB,CAAC,CAAA;iBACH;qBAAM;oBACL,MAAM,IAAI,oCAA2B,CACnC,iEAAiE,CAClE,CAAA;iBACF;gBACD,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,GAAG,CAAA;gBAC3B,IAAI,KAAK,IAAI,CAAC,IAAI;oBAAE,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,CAAA;gBACzE,IAAI,IAAI,CAAC,OAAO,EAAE;oBAChB,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;oBACrC,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;iBACtD;gBACD,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAA;aACvB;YAAC,OAAO,KAAK,EAAE;gBACd,IAAI,IAAA,oBAAW,EAAC,KAAK,CAAC,EAAE;oBACtB,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,CAAA;iBACtD;gBACD,MAAM,KAAK,CAAA;aACZ;;KACF;IAED;;OAEG;IACG,eAAe,CAAC,WAAuC;;;YAC3D,MAAM,IAAI,CAAC,cAAc,EAAE,CAAA;YAC3B,OAAO,IAAI,CAAC,qBAAqB,CAAC,WAAW,CAAC,QAAQ,EAAE;gBACtD,UAAU,EAAE,MAAA,WAAW,CAAC,OAAO,0CAAE,UAAU;gBAC3C,MAAM,EAAE,MAAA,WAAW,CAAC,OAAO,0CAAE,MAAM;gBACnC,WAAW,EAAE,MAAA,WAAW,CAAC,OAAO,0CAAE,WAAW;gBAC7C,mBAAmB,EAAE,MAAA,WAAW,CAAC,OAAO,0CAAE,mBAAmB;aAC9D,CAAC,CAAA;;KACH;IAED;;;;;;;;;;OAUG;IACG,aAAa,CAAC,WAA8C;;;YAChE,IAAI;gBACF,MAAM,IAAI,CAAC,cAAc,EAAE,CAAA;gBAE3B,IAAI,OAAO,IAAI,WAAW,EAAE;oBAC1B,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,WAAW,CAAA;oBACtC,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAA,gBAAQ,EAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,MAAM,EAAE;wBACtE,OAAO,EAAE,IAAI,CAAC,OAAO;wBACrB,IAAI,EAAE;4BACJ,KAAK;4BACL,IAAI,EAAE,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,mCAAI,EAAE;4BACzB,WAAW,EAAE,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,gBAAgB,mCAAI,IAAI;4BAC9C,oBAAoB,EAAE,EAAE,aAAa,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,YAAY,EAAE;yBAC/D;wBACD,UAAU,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,eAAe;qBACrC,CAAC,CAAA;oBACF,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,CAAA;iBACtD;gBACD,IAAI,OAAO,IAAI,WAAW,EAAE;oBAC1B,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,WAAW,CAAA;oBACtC,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAA,gBAAQ,EAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,MAAM,EAAE;wBACtE,OAAO,EAAE,IAAI,CAAC,OAAO;wBACrB,IAAI,EAAE;4BACJ,KAAK;4BACL,IAAI,EAAE,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,mCAAI,EAAE;4BACzB,WAAW,EAAE,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,gBAAgB,mCAAI,IAAI;4BAC9C,oBAAoB,EAAE,EAAE,aAAa,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,YAAY,EAAE;yBAC/D;qBACF,CAAC,CAAA;oBACF,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,CAAA;iBACtD;gBACD,MAAM,IAAI,oCAA2B,CAAC,mDAAmD,CAAC,CAAA;aAC3F;YAAC,OAAO,KAAK,EAAE;gBACd,IAAI,IAAA,oBAAW,EAAC,KAAK,CAAC,EAAE;oBACtB,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,CAAA;iBACtD;gBAED,MAAM,KAAK,CAAA;aACZ;;KACF;IAED;;OAEG;IACG,SAAS,CAAC,MAAuB;;;YACrC,IAAI;gBACF,MAAM,IAAI,CAAC,cAAc,EAAE,CAAA;gBAE3B,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,IAAA,gBAAQ,EAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,SAAS,EAAE;oBAC/E,OAAO,EAAE,IAAI,CAAC,OAAO;oBACrB,IAAI,kCACC,MAAM,KACT,oBAAoB,EAAE,EAAE,aAAa,EAAE,MAAA,MAAM,CAAC,OAAO,0CAAE,YAAY,EAAE,GACtE;oBACD,UAAU,EAAE,MAAA,MAAM,CAAC,OAAO,0CAAE,UAAU;oBACtC,KAAK,EAAE,wBAAgB;iBACxB,CAAC,CAAA;gBAEF,IAAI,KAAK,EAAE;oBACT,MAAM,KAAK,CAAA;iBACZ;gBAED,IAAI,CAAC,IAAI,EAAE;oBACT,MAAM,0CAA0C,CAAA;iBACjD;gBAED,MAAM,OAAO,GAAmB,IAAI,CAAC,OAAO,CAAA;gBAC5C,MAAM,IAAI,GAAS,IAAI,CAAC,IAAI,CAAA;gBAE5B,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,YAAY,EAAE;oBACzB,MAAM,IAAI,CAAC,YAAY,CAAC,OAAkB,CAAC,CAAA;oBAC3C,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAA;iBACjD;gBAED,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAA;aAChD;YAAC,OAAO,KAAK,EAAE;gBACd,IAAI,IAAA,oBAAW,EAAC,KAAK,CAAC,EAAE;oBACtB,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,CAAA;iBACtD;gBAED,MAAM,KAAK,CAAA;aACZ;;KACF;IAED;;;;;;;;;;;;;;;;;;OAkBG;IACG,aAAa,CAAC,MAAqB;;;YACvC,IAAI;gBACF,MAAM,IAAI,CAAC,cAAc,EAAE,CAAA;gBAE3B,OAAO,MAAM,IAAA,gBAAQ,EAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,MAAM,EAAE;oBAC3D,IAAI,4EACC,CAAC,YAAY,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GACpE,CAAC,QAAQ,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAC1D,WAAW,EAAE,MAAA,MAAA,MAAM,CAAC,OAAO,0CAAE,UAAU,mCAAI,SAAS,KACjD,CAAC,CAAA,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,0CAAE,YAAY;wBAC/B,CAAC,CAAC,EAAE,oBAAoB,EAAE,EAAE,aAAa,EAAE,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE;wBAC1E,CAAC,CAAC,IAAI,CAAC,KACT,kBAAkB,EAAE,IAAI,GACzB;oBACD,OAAO,EAAE,IAAI,CAAC,OAAO;oBACrB,KAAK,EAAE,oBAAY;iBACpB,CAAC,CAAA;aACH;YAAC,OAAO,KAAK,EAAE;gBACd,IAAI,IAAA,oBAAW,EAAC,KAAK,CAAC,EAAE;oBACtB,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAA;iBAC7B;gBACD,MAAM,KAAK,CAAA;aACZ;;KACF;IAED;;;OAGG;IACG,UAAU;;YAoBd,gEAAgE;YAChE,sEAAsE;YACtE,MAAM,IAAI,CAAC,iBAAiB,CAAA;YAE5B,IAAI,cAAc,GAAmB,IAAI,CAAA;YAEzC,IAAI,IAAI,CAAC,cAAc,EAAE;gBACvB,MAAM,YAAY,GAAG,MAAM,IAAA,sBAAY,EAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC,CAAA;gBAEtE,IAAI,YAAY,KAAK,IAAI,EAAE;oBACzB,IAAI,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,EAAE;wBACtC,cAAc,GAAG,YAAY,CAAA;qBAC9B;yBAAM;wBACL,MAAM,IAAI,CAAC,cAAc,EAAE,CAAA;qBAC5B;iBACF;aACF;iBAAM;gBACL,cAAc,GAAG,IAAI,CAAC,eAAe,CAAA;aACtC;YAED,IAAI,CAAC,cAAc,EAAE;gBACnB,OAAO,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAA;aAChD;YAED,MAAM,UAAU,GAAG,cAAc,CAAC,UAAU;gBAC1C,CAAC,CAAC,cAAc,CAAC,UAAU,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI;gBAChD,CAAC,CAAC,KAAK,CAAA;YACT,IAAI,CAAC,UAAU,EAAE;gBACf,OAAO,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,cAAc,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAA;aAC1D;YAED,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,aAAa,CAAC,CAAA;YACrF,IAAI,KAAK,EAAE;gBACT,OAAO,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,CAAA;aAC1C;YAED,OAAO,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAA;QAC3C,CAAC;KAAA;IAED;;;OAGG;IACG,OAAO,CAAC,GAAY;;;YACxB,IAAI;gBACF,IAAI,CAAC,GAAG,EAAE;oBACR,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAA;oBAC/C,IAAI,KAAK,EAAE;wBACT,MAAM,KAAK,CAAA;qBACZ;oBAED,kEAAkE;oBAClE,GAAG,GAAG,MAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,YAAY,mCAAI,SAAS,CAAA;iBAC9C;gBAED,OAAO,MAAM,IAAA,gBAAQ,EAAC,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,GAAG,OAAO,EAAE;oBAC3D,OAAO,EAAE,IAAI,CAAC,OAAO;oBACrB,GAAG,EAAE,GAAG;oBACR,KAAK,EAAE,qBAAa;iBACrB,CAAC,CAAA;aACH;YAAC,OAAO,KAAK,EAAE;gBACd,IAAI,IAAA,oBAAW,EAAC,KAAK,CAAC,EAAE;oBACtB,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,CAAA;iBACvC;gBAED,MAAM,KAAK,CAAA;aACZ;;KACF;IAED;;OAEG;IACG,UAAU,CAAC,UAA0B;;YACzC,IAAI;gBACF,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAA;gBAC1E,IAAI,YAAY,EAAE;oBAChB,MAAM,YAAY,CAAA;iBACnB;gBACD,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE;oBACxB,MAAM,IAAI,gCAAuB,EAAE,CAAA;iBACpC;gBACD,MAAM,OAAO,GAAY,WAAW,CAAC,OAAO,CAAA;gBAC5C,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,MAAM,IAAA,gBAAQ,EAAC,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,GAAG,OAAO,EAAE;oBACvF,OAAO,EAAE,IAAI,CAAC,OAAO;oBACrB,IAAI,EAAE,UAAU;oBAChB,GAAG,EAAE,OAAO,CAAC,YAAY;oBACzB,KAAK,EAAE,qBAAa;iBACrB,CAAC,CAAA;gBACF,IAAI,SAAS;oBAAE,MAAM,SAAS,CAAA;gBAC9B,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,IAAY,CAAA;gBAChC,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAA;gBAChC,IAAI,CAAC,qBAAqB,CAAC,cAAc,EAAE,OAAO,CAAC,CAAA;gBAEnD,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAA;aACrD;YAAC,OAAO,KAAK,EAAE;gBACd,IAAI,IAAA,oBAAW,EAAC,KAAK,CAAC,EAAE;oBACtB,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,CAAA;iBACvC;gBAED,MAAM,KAAK,CAAA;aACZ;QACH,CAAC;KAAA;IAED;;OAEG;IACK,UAAU,CAAC,GAAW;QAK5B,OAAO,IAAA,0BAAgB,EAAC,GAAG,CAAC,CAAA;IAC9B,CAAC;IAED;;;;OAIG;IACG,UAAU,CAAC,cAGhB;;YACC,IAAI;gBACF,IAAI,CAAC,cAAc,CAAC,YAAY,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE;oBACjE,MAAM,IAAI,gCAAuB,EAAE,CAAA;iBACpC;gBAED,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAA;gBACjC,IAAI,SAAS,GAAG,OAAO,CAAA;gBACvB,IAAI,UAAU,GAAG,IAAI,CAAA;gBACrB,IAAI,OAAO,GAAmB,IAAI,CAAA;gBAClC,MAAM,OAAO,GAAG,IAAA,0BAAgB,EAAC,cAAc,CAAC,YAAY,CAAC,CAAA;gBAC7D,IAAI,OAAO,CAAC,GAAG,EAAE;oBACf,SAAS,GAAG,OAAO,CAAC,GAAG,CAAA;oBACvB,UAAU,GAAG,SAAS,IAAI,OAAO,CAAA;iBAClC;gBAED,IAAI,UAAU,EAAE;oBACd,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,iBAAiB,CACvE,cAAc,CAAC,aAAa,CAC7B,CAAA;oBACD,IAAI,KAAK,EAAE;wBACT,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAA;qBAC7D;oBAED,IAAI,CAAC,gBAAgB,EAAE;wBACrB,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAA;qBAC5D;oBACD,OAAO,GAAG,gBAAgB,CAAA;iBAC3B;qBAAM;oBACL,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,YAAY,CAAC,CAAA;oBACvE,IAAI,KAAK,EAAE;wBACT,MAAM,KAAK,CAAA;qBACZ;oBACD,OAAO,GAAG;wBACR,YAAY,EAAE,cAAc,CAAC,YAAY;wBACzC,aAAa,EAAE,cAAc,CAAC,aAAa;wBAC3C,IAAI,EAAE,IAAI,CAAC,IAAI;wBACf,UAAU,EAAE,QAAQ;wBACpB,UAAU,EAAE,SAAS,GAAG,OAAO;wBAC/B,UAAU,EAAE,SAAS;qBACtB,CAAA;oBACD,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAA;oBAChC,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAA;iBACjD;gBAED,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAA;aAC9D;YAAC,OAAO,KAAK,EAAE;gBACd,IAAI,IAAA,oBAAW,EAAC,KAAK,CAAC,EAAE;oBACtB,OAAO,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,CAAA;iBACtD;gBAED,MAAM,KAAK,CAAA;aACZ;QACH,CAAC;KAAA;IAED;;;;;OAKG;IACG,cAAc,CAAC,cAA0C;;;YAC7D,IAAI;gBACF,IAAI,CAAC,cAAc,EAAE;oBACnB,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAA;oBAC/C,IAAI,KAAK,EAAE;wBACT,MAAM,KAAK,CAAA;qBACZ;oBAED,cAAc,GAAG,MAAA,IAAI,CAAC,OAAO,mCAAI,SAAS,CAAA;iBAC3C;gBAED,IAAI,CAAC,CAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,aAAa,CAAA,EAAE;oBAClC,MAAM,IAAI,gCAAuB,EAAE,CAAA;iBACpC;gBAED,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,aAAa,CAAC,CAAA;gBACrF,IAAI,KAAK,EAAE;oBACT,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAA;iBAC7D;gBAED,IAAI,CAAC,OAAO,EAAE;oBACZ,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAA;iBAC5D;gBAED,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAA;aAC9D;YAAC,OAAO,KAAK,EAAE;gBACd,IAAI,IAAA,oBAAW,EAAC,KAAK,CAAC,EAAE;oBACtB,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,CAAA;iBACtD;gBAED,MAAM,KAAK,CAAA;aACZ;;KACF;IAED;;OAEG;IACW,kBAAkB;;YAO9B,IAAI;gBACF,IAAI,CAAC,IAAA,mBAAS,GAAE;oBAAE,MAAM,IAAI,uCAA8B,CAAC,sBAAsB,CAAC,CAAA;gBAClF,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,EAAE;oBAChC,MAAM,IAAI,uCAA8B,CAAC,sCAAsC,CAAC,CAAA;iBACjF;gBAED,MAAM,iBAAiB,GAAG,IAAA,4BAAkB,EAAC,mBAAmB,CAAC,CAAA;gBACjE,IAAI,iBAAiB,EAAE;oBACrB,MAAM,UAAU,GAAG,IAAA,4BAAkB,EAAC,YAAY,CAAC,CAAA;oBACnD,IAAI,CAAC,UAAU;wBAAE,MAAM,IAAI,uCAA8B,CAAC,yBAAyB,CAAC,CAAA;oBACpF,MAAM,KAAK,GAAG,IAAA,4BAAkB,EAAC,OAAO,CAAC,CAAA;oBACzC,IAAI,CAAC,KAAK;wBAAE,MAAM,IAAI,uCAA8B,CAAC,oBAAoB,CAAC,CAAA;oBAE1E,MAAM,IAAI,uCAA8B,CAAC,iBAAiB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAA;iBACzF;gBAED,MAAM,cAAc,GAAG,IAAA,4BAAkB,EAAC,gBAAgB,CAAC,CAAA;gBAC3D,MAAM,sBAAsB,GAAG,IAAA,4BAAkB,EAAC,wBAAwB,CAAC,CAAA;gBAC3E,MAAM,YAAY,GAAG,IAAA,4BAAkB,EAAC,cAAc,CAAC,CAAA;gBACvD,IAAI,CAAC,YAAY;oBAAE,MAAM,IAAI,uCAA8B,CAAC,2BAA2B,CAAC,CAAA;gBACxF,MAAM,UAAU,GAAG,IAAA,4BAAkB,EAAC,YAAY,CAAC,CAAA;gBACnD,IAAI,CAAC,UAAU;oBAAE,MAAM,IAAI,uCAA8B,CAAC,yBAAyB,CAAC,CAAA;gBACpF,MAAM,aAAa,GAAG,IAAA,4BAAkB,EAAC,eAAe,CAAC,CAAA;gBACzD,IAAI,CAAC,aAAa;oBAAE,MAAM,IAAI,uCAA8B,CAAC,4BAA4B,CAAC,CAAA;gBAC1F,MAAM,UAAU,GAAG,IAAA,4BAAkB,EAAC,YAAY,CAAC,CAAA;gBACnD,IAAI,CAAC,UAAU;oBAAE,MAAM,IAAI,uCAA8B,CAAC,yBAAyB,CAAC,CAAA;gBAEpF,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAA;gBAC7C,MAAM,UAAU,GAAG,OAAO,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAA;gBAEjD,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAA;gBACxD,IAAI,KAAK;oBAAE,MAAM,KAAK,CAAA;gBACtB,MAAM,IAAI,GAAS,IAAI,CAAC,IAAI,CAAA;gBAC5B,MAAM,OAAO,GAAY;oBACvB,cAAc;oBACd,sBAAsB;oBACtB,YAAY;oBACZ,UAAU,EAAE,QAAQ,CAAC,UAAU,CAAC;oBAChC,UAAU;oBACV,aAAa;oBACb,UAAU;oBACV,IAAI;iBACL,CAAA;gBACD,MAAM,YAAY,GAAG,IAAA,4BAAkB,EAAC,MAAM,CAAC,CAAA;gBAE/C,iEAAiE;gBACjE,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;gBAE3D,OAAO,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAA;aACxD;YAAC,OAAO,KAAK,EAAE;gBACd,IAAI,IAAA,oBAAW,EAAC,KAAK,CAAC,EAAE;oBACtB,OAAO,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,CAAA;iBAC9D;gBAED,MAAM,KAAK,CAAA;aACZ;QACH,CAAC;KAAA;IAED;;OAEG;IACK,oBAAoB;QAC1B,OAAO,CACL,IAAA,mBAAS,GAAE;YACX,CAAC,OAAO,CAAC,IAAA,4BAAkB,EAAC,cAAc,CAAC,CAAC;gBAC1C,OAAO,CAAC,IAAA,4BAAkB,EAAC,mBAAmB,CAAC,CAAC,CAAC,CACpD,CAAA;IACH,CAAC;IAED;;;;;;OAMG;IACG,OAAO;;;YACX,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAA;YAC7D,IAAI,YAAY,EAAE;gBAChB,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,CAAA;aAC/B;YACD,MAAM,WAAW,GAAG,MAAA,IAAI,CAAC,OAAO,0CAAE,YAAY,CAAA;YAC9C,IAAI,WAAW,EAAE;gBACf,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;gBACvD,IAAI,KAAK,EAAE;oBACT,iDAAiD;oBACjD,kFAAkF;oBAClF,IAAI,CAAC,CAAC,IAAA,uBAAc,EAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG,CAAC,CAAC,EAAE;wBAC9E,OAAO,EAAE,KAAK,EAAE,CAAA;qBACjB;iBACF;aACF;YACD,MAAM,IAAI,CAAC,cAAc,EAAE,CAAA;YAC3B,IAAI,CAAC,qBAAqB,CAAC,YAAY,EAAE,IAAI,CAAC,CAAA;YAC9C,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAA;;KACvB;IAED;;;OAGG;IACH,iBAAiB,CAAC,QAAmE;QAGnF,MAAM,EAAE,GAAW,IAAA,cAAI,GAAE,CAAA;QACzB,MAAM,YAAY,GAAiB;YACjC,EAAE;YACF,QAAQ;YACR,WAAW,EAAE,GAAG,EAAE;gBAChB,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;YACrC,CAAC;SACF,CAAA;QAED,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,EAAE,EAAE,YAAY,CAAC,CAAA;QAE9C,OAAO,EAAE,IAAI,EAAE,EAAE,YAAY,EAAE,EAAE,CAAA;IACnC,CAAC;IAED;;;;;OAKG;IACG,qBAAqB,CACzB,KAAa,EACb,UAGI,EAAE;;YAQN,IAAI;gBACF,OAAO,MAAM,IAAA,gBAAQ,EAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,UAAU,EAAE;oBAC/D,IAAI,EAAE,EAAE,KAAK,EAAE,oBAAoB,EAAE,EAAE,aAAa,EAAE,OAAO,CAAC,YAAY,EAAE,EAAE;oBAC9E,OAAO,EAAE,IAAI,CAAC,OAAO;oBACrB,UAAU,EAAE,OAAO,CAAC,UAAU;iBAC/B,CAAC,CAAA;aACH;YAAC,OAAO,KAAK,EAAE;gBACd,IAAI,IAAA,oBAAW,EAAC,KAAK,CAAC,EAAE;oBACtB,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAA;iBAC7B;gBAED,MAAM,KAAK,CAAA;aACZ;QACH,CAAC;KAAA;IAED;;;OAGG;IACW,mBAAmB,CAAC,YAAoB;;YACpD,IAAI;gBACF,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;gBAE5B,6DAA6D;gBAC7D,OAAO,MAAM,IAAA,mBAAS,EACpB,CAAO,OAAO,EAAE,EAAE;oBAChB,MAAM,IAAA,eAAK,EAAC,OAAO,GAAG,GAAG,CAAC,CAAA,CAAC,wBAAwB;oBAEnD,OAAO,MAAM,IAAA,gBAAQ,EAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,iCAAiC,EAAE;wBACtF,IAAI,EAAE,EAAE,aAAa,EAAE,YAAY,EAAE;wBACrC,OAAO,EAAE,IAAI,CAAC,OAAO;wBACrB,KAAK,EAAE,wBAAgB;qBACxB,CAAC,CAAA;gBACJ,CAAC,CAAA,EACD,CAAC,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,CACrB,MAAM;oBACN,MAAM,CAAC,KAAK;oBACZ,MAAM,CAAC,KAAK,YAAY,gCAAuB;oBAC/C,2FAA2F;oBAC3F,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC,GAAG,GAAG,GAAG,SAAS,GAAG,0BAA0B,CAC5E,CAAA;aACF;YAAC,OAAO,KAAK,EAAE;gBACd,IAAI,IAAA,oBAAW,EAAC,KAAK,CAAC,EAAE;oBACtB,OAAO,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,CAAA;iBACtD;gBACD,MAAM,KAAK,CAAA;aACZ;QACH,CAAC;KAAA;IAEO,eAAe,CAAC,YAAqB;QAC3C,MAAM,cAAc,GAClB,OAAO,YAAY,KAAK,QAAQ;YAChC,YAAY,KAAK,IAAI;YACrB,cAAc,IAAI,YAAY;YAC9B,eAAe,IAAI,YAAY;YAC/B,YAAY,IAAI,YAAY,CAAA;QAE9B,OAAO,cAAc,CAAA;IACvB,CAAC;IAEO,qBAAqB,CAC3B,QAAkB,EAClB,UAKI,EAAE;QAEN,MAAM,GAAG,GAAW,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE;YACpD,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,WAAW,EAAE,OAAO,CAAC,WAAW;SACjC,CAAC,CAAA;QACF,6BAA6B;QAC7B,IAAI,IAAA,mBAAS,GAAE,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE;YAC/C,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;SAC5B;QACD,OAAO,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAA;IACjD,CAAC;IAED;;;OAGG;IACW,kBAAkB;;;YAC9B,IAAI;gBACF,MAAM,cAAc,GAAG,MAAM,IAAA,sBAAY,EAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC,CAAA;gBACxE,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,EAAE;oBACzC,IAAI,cAAc,KAAK,IAAI,EAAE;wBAC3B,MAAM,IAAI,CAAC,cAAc,EAAE,CAAA;qBAC5B;oBAED,OAAM;iBACP;gBAED,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAA;gBAE7C,IAAI,CAAC,MAAA,cAAc,CAAC,UAAU,mCAAI,QAAQ,CAAC,GAAG,OAAO,GAAG,yBAAa,EAAE;oBACrE,IAAI,IAAI,CAAC,gBAAgB,IAAI,cAAc,CAAC,aAAa,EAAE;wBACzD,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,aAAa,CAAC,CAAA;wBAE5E,IAAI,KAAK,EAAE;4BACT,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;4BAC1B,MAAM,IAAI,CAAC,cAAc,EAAE,CAAA;yBAC5B;qBACF;yBAAM;wBACL,MAAM,IAAI,CAAC,cAAc,EAAE,CAAA;qBAC5B;iBACF;qBAAM;oBACL,IAAI,IAAI,CAAC,cAAc,EAAE;wBACvB,MAAM,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,CAAA;qBACxC;oBACD,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,cAAc,CAAC,CAAA;iBACxD;aACF;YAAC,OAAO,GAAG,EAAE;gBACZ,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;gBAClB,OAAM;aACP;;KACF;IAEa,iBAAiB,CAAC,YAAoB;;;YAClD,oCAAoC;YACpC,IAAI,IAAI,CAAC,kBAAkB,EAAE;gBAC3B,OAAO,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAA;aACvC;YAED,IAAI;gBACF,IAAI,CAAC,kBAAkB,GAAG,IAAI,kBAAQ,EAA0B,CAAA;gBAEhE,IAAI,CAAC,YAAY,EAAE;oBACjB,MAAM,IAAI,gCAAuB,EAAE,CAAA;iBACpC;gBACD,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAA;gBACpE,IAAI,KAAK;oBAAE,MAAM,KAAK,CAAA;gBACtB,IAAI,CAAC,IAAI,CAAC,OAAO;oBAAE,MAAM,IAAI,gCAAuB,EAAE,CAAA;gBAEtD,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;gBACrC,IAAI,CAAC,qBAAqB,CAAC,iBAAiB,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;gBAE3D,MAAM,MAAM,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAA;gBAErD,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;gBAEvC,OAAO,MAAM,CAAA;aACd;YAAC,OAAO,KAAK,EAAE;gBACd,IAAI,IAAA,oBAAW,EAAC,KAAK,CAAC,EAAE;oBACtB,MAAM,MAAM,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAA;oBAEvC,MAAA,IAAI,CAAC,kBAAkB,0CAAE,OAAO,CAAC,MAAM,CAAC,CAAA;oBAExC,OAAO,MAAM,CAAA;iBACd;gBAED,MAAA,IAAI,CAAC,kBAAkB,0CAAE,MAAM,CAAC,KAAK,CAAC,CAAA;gBACtC,MAAM,KAAK,CAAA;aACZ;oBAAS;gBACR,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAA;aAC/B;;KACF;IAEO,qBAAqB,CAAC,KAAsB,EAAE,OAAuB;QAC3E,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAA;IACrE,CAAC;IAED;;;OAGG;IACW,YAAY,CAAC,OAAgB;;YACzC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE;gBACxB,IAAI,CAAC,eAAe,GAAG,OAAO,CAAA;aAC/B;YAED,IAAI,IAAI,CAAC,cAAc,IAAI,OAAO,CAAC,UAAU,EAAE;gBAC7C,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAA;aACpC;QACH,CAAC;KAAA;IAEO,eAAe,CAAC,cAAuB;QAC7C,OAAO,IAAA,sBAAY,EAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,CAAA;IACpE,CAAC;IAEa,cAAc;;YAC1B,IAAI,IAAI,CAAC,cAAc,EAAE;gBACvB,MAAM,IAAA,yBAAe,EAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC,CAAA;aACrD;iBAAM;gBACL,IAAI,CAAC,eAAe,GAAG,IAAI,CAAA;aAC5B;QACH,CAAC;KAAA;IAED;;;;;;;;;;;;;;;;;;;OAmBG;IACG,gBAAgB;;YACpB,MAAM,IAAI,CAAC,eAAe,EAAE,CAAA;YAC5B,IAAI,CAAC,iBAAiB,GAAG,WAAW,CAClC,GAAG,EAAE,CAAC,IAAI,CAAC,qBAAqB,EAAE,EAClC,0BAA0B,CAC3B,CAAA;YAED,2BAA2B;YAC3B,MAAM,IAAI,CAAC,qBAAqB,EAAE,CAAA;QACpC,CAAC;KAAA;IAED;;;OAGG;IACG,eAAe;;YACnB,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAA;YACrC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAA;YAE7B,IAAI,MAAM,EAAE;gBACV,aAAa,CAAC,MAAM,CAAC,CAAA;aACtB;QACH,CAAC;KAAA;IAED;;OAEG;IACW,qBAAqB;;YACjC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;YAEtB,IAAI;gBACF,MAAM,EACJ,IAAI,EAAE,EAAE,OAAO,EAAE,EACjB,KAAK,GACN,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAA;gBAE3B,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE;oBAC7D,OAAM;iBACP;gBAED,0EAA0E;gBAC1E,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAC/B,CAAC,OAAO,CAAC,UAAU,GAAG,IAAI,GAAG,GAAG,CAAC,GAAG,0BAA0B,CAC/D,CAAA;gBAED,IAAI,cAAc,GAAG,2BAA2B,EAAE;oBAChD,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,aAAa,CAAC,CAAA;iBACpD;aACF;YAAC,OAAO,CAAM,EAAE;gBACf,OAAO,CAAC,KAAK,CAAC,wEAAwE,EAAE,CAAC,CAAC,CAAA;aAC3F;QACH,CAAC;KAAA;IAED;;;;OAIG;IACW,uBAAuB;;YACnC,IAAI,CAAC,IAAA,mBAAS,GAAE,IAAI,CAAC,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,gBAAgB,CAAA,EAAE;gBAC7C,IAAI,IAAI,CAAC,gBAAgB,EAAE;oBACzB,mEAAmE;oBACnE,IAAI,CAAC,gBAAgB,EAAE,CAAA;iBACxB;gBAED,OAAO,KAAK,CAAA;aACb;YAED,IAAI;gBACF,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,gBAAgB,CACtB,kBAAkB,EAClB,GAAS,EAAE,gDAAC,OAAA,MAAM,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAA,GAAA,CACnD,CAAA;gBAED,wEAAwE;gBACxE,0BAA0B;gBAC1B,MAAM,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAA,CAAC,eAAe;aACtD;YAAC,OAAO,KAAK,EAAE;gBACd,OAAO,CAAC,KAAK,CAAC,yBAAyB,EAAE,KAAK,CAAC,CAAA;aAChD;QACH,CAAC;KAAA;IAED;;OAEG;IACW,oBAAoB,CAAC,SAAkB;;YACnD,IAAI,QAAQ,CAAC,eAAe,KAAK,SAAS,EAAE;gBAC1C,IAAI,CAAC,SAAS,EAAE;oBACd,iFAAiF;oBACjF,MAAM,IAAI,CAAC,iBAAiB,CAAA;oBAC5B,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAA;iBAChC;gBAED,IAAI,IAAI,CAAC,gBAAgB,EAAE;oBACzB,6EAA6E;oBAC7E,iCAAiC;oBACjC,IAAI,CAAC,gBAAgB,EAAE,CAAA;iBACxB;aACF;iBAAM,IAAI,QAAQ,CAAC,eAAe,KAAK,QAAQ,EAAE;gBAChD,IAAI,IAAI,CAAC,gBAAgB,EAAE;oBACzB,IAAI,CAAC,eAAe,EAAE,CAAA;iBACvB;aACF;QACH,CAAC;KAAA;IAED;;;;;OAKG;IACK,kBAAkB,CACxB,QAAkB,EAClB,OAIC;QAED,MAAM,SAAS,GAAa,CAAC,YAAY,kBAAkB,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;QACxE,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,UAAU,EAAE;YACvB,SAAS,CAAC,IAAI,CAAC,eAAe,kBAAkB,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;SACxE;QACD,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,MAAM,EAAE;YACnB,SAAS,CAAC,IAAI,CAAC,UAAU,kBAAkB,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;SAC/D;QACD,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,WAAW,EAAE;YACxB,MAAM,KAAK,GAAG,IAAI,eAAe,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;YACtD,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAA;SACjC;QACD,OAAO,GAAG,IAAI,CAAC,GAAG,cAAc,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAA;IACvD,CAAC;IAEa,SAAS,CAAC,MAAyB;;;YAC/C,IAAI;gBACF,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAA;gBAC1E,IAAI,YAAY,EAAE;oBAChB,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,CAAA;iBAC3C;gBAED,OAAO,MAAM,IAAA,gBAAQ,EAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,GAAG,YAAY,MAAM,CAAC,QAAQ,EAAE,EAAE;oBACpF,OAAO,EAAE,IAAI,CAAC,OAAO;oBACrB,GAAG,EAAE,MAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,OAAO,0CAAE,YAAY;iBACxC,CAAC,CAAA;aACH;YAAC,OAAO,KAAK,EAAE;gBACd,IAAI,IAAA,oBAAW,EAAC,KAAK,CAAC,EAAE;oBACtB,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAA;iBAC7B;gBACD,MAAM,KAAK,CAAA;aACZ;;KACF;IAED;;OAEG;IACW,OAAO,CAAC,MAAuB;;;YAC3C,IAAI;gBACF,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAA;gBAC1E,IAAI,YAAY,EAAE;oBAChB,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,CAAA;iBAC3C;gBAED,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,IAAA,gBAAQ,EAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,UAAU,EAAE;oBAChF,IAAI,EAAE;wBACJ,aAAa,EAAE,MAAM,CAAC,YAAY;wBAClC,WAAW,EAAE,MAAM,CAAC,UAAU;wBAC9B,MAAM,EAAE,MAAM,CAAC,MAAM;qBACtB;oBACD,OAAO,EAAE,IAAI,CAAC,OAAO;oBACrB,GAAG,EAAE,MAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,OAAO,0CAAE,YAAY;iBACxC,CAAC,CAAA;gBAEF,IAAI,KAAK,EAAE;oBACT,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAA;iBAC7B;gBAED,IAAI,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,0CAAE,OAAO,EAAE;oBACvB,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,4BAA4B,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAA;iBACpE;gBAED,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAA;aAC7B;YAAC,OAAO,KAAK,EAAE;gBACd,IAAI,IAAA,oBAAW,EAAC,KAAK,CAAC,EAAE;oBACtB,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAA;iBAC7B;gBACD,MAAM,KAAK,CAAA;aACZ;;KACF;IAED;;OAEG;IACW,OAAO,CAAC,MAAuB;;;YAC3C,IAAI;gBACF,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAA;gBAC1E,IAAI,YAAY,EAAE;oBAChB,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,CAAA;iBAC3C;gBAED,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,IAAA,gBAAQ,EACpC,IAAI,CAAC,KAAK,EACV,MAAM,EACN,GAAG,IAAI,CAAC,GAAG,YAAY,MAAM,CAAC,QAAQ,SAAS,EAC/C;oBACE,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,YAAY,EAAE,MAAM,CAAC,WAAW,EAAE;oBAC7D,OAAO,EAAE,IAAI,CAAC,OAAO;oBACrB,GAAG,EAAE,MAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,OAAO,0CAAE,YAAY;iBACxC,CACF,CAAA;gBACD,IAAI,KAAK,EAAE;oBACT,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAA;iBAC7B;gBAED,MAAM,IAAI,CAAC,YAAY,iBACrB,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,UAAU,IACxD,IAAI,EACP,CAAA;gBACF,IAAI,CAAC,qBAAqB,CAAC,wBAAwB,EAAE,IAAI,CAAC,CAAA;gBAE1D,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAA;aACvB;YAAC,OAAO,KAAK,EAAE;gBACd,IAAI,IAAA,oBAAW,EAAC,KAAK,CAAC,EAAE;oBACtB,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAA;iBAC7B;gBACD,MAAM,KAAK,CAAA;aACZ;;KACF;IAED;;OAEG;IACW,UAAU,CAAC,MAA0B;;;YACjD,IAAI;gBACF,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAA;gBAC1E,IAAI,YAAY,EAAE;oBAChB,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,CAAA;iBAC3C;gBAED,OAAO,MAAM,IAAA,gBAAQ,EACnB,IAAI,CAAC,KAAK,EACV,MAAM,EACN,GAAG,IAAI,CAAC,GAAG,YAAY,MAAM,CAAC,QAAQ,YAAY,EAClD;oBACE,OAAO,EAAE,IAAI,CAAC,OAAO;oBACrB,GAAG,EAAE,MAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,OAAO,0CAAE,YAAY;iBACxC,CACF,CAAA;aACF;YAAC,OAAO,KAAK,EAAE;gBACd,IAAI,IAAA,oBAAW,EAAC,KAAK,CAAC,EAAE;oBACtB,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAA;iBAC7B;gBACD,MAAM,KAAK,CAAA;aACZ;;KACF;IAED;;OAEG;IACW,mBAAmB,CAC/B,MAAmC;;YAEnC,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,cAAc,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC;gBAC3E,QAAQ,EAAE,MAAM,CAAC,QAAQ;aAC1B,CAAC,CAAA;YACF,IAAI,cAAc,EAAE;gBAClB,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,cAAc,EAAE,CAAA;aAC7C;YACD,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC;gBACxB,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,WAAW,EAAE,aAAa,CAAC,EAAE;gBAC7B,IAAI,EAAE,MAAM,CAAC,IAAI;aAClB,CAAC,CAAA;QACJ,CAAC;KAAA;IAED;;OAEG;IACW,YAAY;;YACxB,MAAM,EACJ,IAAI,EAAE,EAAE,IAAI,EAAE,EACd,KAAK,EAAE,SAAS,GACjB,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE,CAAA;YACxB,IAAI,SAAS,EAAE;gBACb,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAA;aACxC;YAED,MAAM,OAAO,GAAG,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,OAAO,KAAI,EAAE,CAAA;YACnC,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CACzB,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,WAAW,KAAK,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,UAAU,CAC1E,CAAA;YAED,OAAO;gBACL,IAAI,EAAE;oBACJ,GAAG,EAAE,OAAO;oBACZ,IAAI;iBACL;gBACD,KAAK,EAAE,IAAI;aACZ,CAAA;QACH,CAAC;KAAA;IAED;;OAEG;IACW,+BAA+B;;;YAC3C,MAAM,EACJ,IAAI,EAAE,EAAE,OAAO,EAAE,EACjB,KAAK,EAAE,YAAY,GACpB,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAA;YAC3B,IAAI,YAAY,EAAE;gBAChB,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,CAAA;aAC3C;YACD,IAAI,CAAC,OAAO,EAAE;gBACZ,OAAO;oBACL,IAAI,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,4BAA4B,EAAE,EAAE,EAAE;oBAC/E,KAAK,EAAE,IAAI;iBACZ,CAAA;aACF;YAED,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,YAAY,CAAC,CAAA;YAErD,IAAI,YAAY,GAAwC,IAAI,CAAA;YAE5D,IAAI,OAAO,CAAC,GAAG,EAAE;gBACf,YAAY,GAAG,OAAO,CAAC,GAAG,CAAA;aAC3B;YAED,IAAI,SAAS,GAAwC,YAAY,CAAA;YAEjE,MAAM,eAAe,GACnB,MAAA,MAAA,OAAO,CAAC,IAAI,CAAC,OAAO,0CAAE,MAAM,CAAC,CAAC,MAAc,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,KAAK,UAAU,CAAC,mCAAI,EAAE,CAAA;YAEtF,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC9B,SAAS,GAAG,MAAM,CAAA;aACnB;YAED,MAAM,4BAA4B,GAAG,OAAO,CAAC,GAAG,IAAI,EAAE,CAAA;YAEtD,OAAO,EAAE,IAAI,EAAE,EAAE,YAAY,EAAE,SAAS,EAAE,4BAA4B,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAA;;KACxF;CACF;AA10CD,+BA00CC"}
@@ -23,5 +23,15 @@ export declare class Deferred<T = any> {
23
23
  constructor();
24
24
  }
25
25
  export declare function decodeJWTPayload(token: string): any;
26
+ /**
27
+ * Creates a promise that resolves to null after some time.
28
+ */
29
+ export declare function sleep(time: number): Promise<null>;
30
+ /**
31
+ * Converts the provided async function into a retryable function. Each result
32
+ * or thrown error is sent to the isRetryable function which should return true
33
+ * if the function should run again.
34
+ */
35
+ export declare function retryable<T>(fn: (attempt: number) => Promise<T>, isRetryable: (attempt: number, error: any | null, result?: T) => boolean): Promise<T>;
26
36
  export {};
27
37
  //# sourceMappingURL=helpers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/lib/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAE1C,wBAAgB,SAAS,CAAC,SAAS,EAAE,MAAM,UAG1C;AAED,wBAAgB,IAAI,WAMnB;AAED,eAAO,MAAM,SAAS,eAAwC,CAAA;AAE9D,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,iBAS5D;AAED,aAAK,KAAK,GAAG,OAAO,KAAK,CAAA;AAEzB,eAAO,MAAM,YAAY,iBAAkB,KAAK,KAAG,KAUlD,CAAA;AAED,eAAO,MAAM,sBAAsB,kBAAmB,OAAO,8BAS5D,CAAA;AAGD,eAAO,MAAM,YAAY,YACd,gBAAgB,OACpB,MAAM,QACL,GAAG,KACR,QAAQ,IAAI,CAEd,CAAA;AAED,eAAO,MAAM,YAAY,YAAmB,gBAAgB,OAAO,MAAM,KAAG,QAAQ,OAAO,CAY1F,CAAA;AAED,eAAO,MAAM,eAAe,YAAmB,gBAAgB,OAAO,MAAM,KAAG,QAAQ,IAAI,CAE1F,CAAA;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CA0BrD;AAED;;;;GAIG;AACH,qBAAa,QAAQ,CAAC,CAAC,GAAG,GAAG;IAC3B,OAAc,kBAAkB,EAAE,kBAAkB,CAAU;IAE9D,SAAgB,OAAO,EAAG,WAAW,CAAC,CAAC,CAAC,CAAA;IAExC,SAAgB,OAAO,EAAG,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,KAAK,IAAI,CAAA;IAE9D,SAAgB,MAAM,EAAG,CAAC,MAAM,CAAC,EAAE,GAAG,KAAK,GAAG,CAAA;;CAW/C;AAGD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,OAgB7C"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/lib/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAE1C,wBAAgB,SAAS,CAAC,SAAS,EAAE,MAAM,UAG1C;AAED,wBAAgB,IAAI,WAMnB;AAED,eAAO,MAAM,SAAS,eAAwC,CAAA;AAE9D,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,iBAS5D;AAED,aAAK,KAAK,GAAG,OAAO,KAAK,CAAA;AAEzB,eAAO,MAAM,YAAY,iBAAkB,KAAK,KAAG,KAUlD,CAAA;AAED,eAAO,MAAM,sBAAsB,kBAAmB,OAAO,8BAS5D,CAAA;AAGD,eAAO,MAAM,YAAY,YACd,gBAAgB,OACpB,MAAM,QACL,GAAG,KACR,QAAQ,IAAI,CAEd,CAAA;AAED,eAAO,MAAM,YAAY,YAAmB,gBAAgB,OAAO,MAAM,KAAG,QAAQ,OAAO,CAY1F,CAAA;AAED,eAAO,MAAM,eAAe,YAAmB,gBAAgB,OAAO,MAAM,KAAG,QAAQ,IAAI,CAE1F,CAAA;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CA0BrD;AAED;;;;GAIG;AACH,qBAAa,QAAQ,CAAC,CAAC,GAAG,GAAG;IAC3B,OAAc,kBAAkB,EAAE,kBAAkB,CAAU;IAE9D,SAAgB,OAAO,EAAG,WAAW,CAAC,CAAC,CAAC,CAAA;IAExC,SAAgB,OAAO,EAAG,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,KAAK,IAAI,CAAA;IAE9D,SAAgB,MAAM,EAAG,CAAC,MAAM,CAAC,EAAE,GAAG,KAAK,GAAG,CAAA;;CAW/C;AAGD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,OAgB7C;AAED;;GAEG;AACH,wBAAgB,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAIjD;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,CAAC,EACzB,EAAE,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,EACnC,WAAW,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC,KAAK,OAAO,GACvE,OAAO,CAAC,CAAC,CAAC,CAuBZ"}