@supabase/gotrue-js 2.9.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
  }
@@ -747,11 +752,20 @@ class GoTrueClient {
747
752
  _refreshAccessToken(refreshToken) {
748
753
  return __awaiter(this, void 0, void 0, function* () {
749
754
  try {
750
- return yield (0, fetch_1._request)(this.fetch, 'POST', `${this.url}/token?grant_type=refresh_token`, {
751
- body: { refresh_token: refreshToken },
752
- headers: this.headers,
753
- xform: fetch_1._sessionResponse,
754
- });
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);
755
769
  }
756
770
  catch (error) {
757
771
  if ((0, errors_1.isAuthError)(error)) {
@@ -799,21 +813,11 @@ class GoTrueClient {
799
813
  const timeNow = Math.round(Date.now() / 1000);
800
814
  if (((_a = currentSession.expires_at) !== null && _a !== void 0 ? _a : Infinity) < timeNow + constants_1.EXPIRY_MARGIN) {
801
815
  if (this.autoRefreshToken && currentSession.refresh_token) {
802
- this.networkRetries++;
803
816
  const { error } = yield this._callRefreshToken(currentSession.refresh_token);
804
817
  if (error) {
805
818
  console.log(error.message);
806
- if (error instanceof errors_1.AuthRetryableFetchError &&
807
- this.networkRetries < constants_1.NETWORK_FAILURE.MAX_RETRIES) {
808
- if (this.refreshTokenTimer)
809
- clearTimeout(this.refreshTokenTimer);
810
- this.refreshTokenTimer = setTimeout(() => this._recoverAndRefresh(), Math.pow(constants_1.NETWORK_FAILURE.RETRY_INTERVAL, this.networkRetries) * 100 // exponential backoff
811
- );
812
- return;
813
- }
814
819
  yield this._removeSession();
815
820
  }
816
- this.networkRetries = 0;
817
821
  }
818
822
  else {
819
823
  yield this._removeSession();
@@ -881,13 +885,6 @@ class GoTrueClient {
881
885
  if (!this.persistSession) {
882
886
  this.inMemorySession = session;
883
887
  }
884
- const expiresAt = session.expires_at;
885
- if (expiresAt) {
886
- const timeNow = Math.round(Date.now() / 1000);
887
- const expiresIn = expiresAt - timeNow;
888
- const refreshDurationBeforeExpires = expiresIn > constants_1.EXPIRY_MARGIN ? constants_1.EXPIRY_MARGIN : 0.5;
889
- this._startAutoRefreshToken((expiresIn - refreshDurationBeforeExpires) * 1000);
890
- }
891
888
  if (this.persistSession && session.expires_at) {
892
889
  yield this._persistSession(session);
893
890
  }
@@ -904,51 +901,119 @@ class GoTrueClient {
904
901
  else {
905
902
  this.inMemorySession = null;
906
903
  }
907
- if (this.refreshTokenTimer) {
908
- 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);
909
944
  }
910
945
  });
911
946
  }
912
947
  /**
913
- * Clear and re-create refresh token timer
914
- * @param value time intervals in milliseconds.
915
- * @param session The current session.
948
+ * Runs the auto refresh token tick.
916
949
  */
917
- _startAutoRefreshToken(value) {
918
- if (this.refreshTokenTimer)
919
- clearTimeout(this.refreshTokenTimer);
920
- if (value <= 0 || !this.autoRefreshToken)
921
- return;
922
- this.refreshTokenTimer = setTimeout(() => __awaiter(this, void 0, void 0, function* () {
923
- this.networkRetries++;
924
- const { data: { session }, error: sessionError, } = yield this.getSession();
925
- if (!sessionError && session) {
926
- const { error } = yield this._callRefreshToken(session.refresh_token);
927
- if (!error)
928
- this.networkRetries = 0;
929
- if (error instanceof errors_1.AuthRetryableFetchError &&
930
- this.networkRetries < constants_1.NETWORK_FAILURE.MAX_RETRIES)
931
- this._startAutoRefreshToken(Math.pow(constants_1.NETWORK_FAILURE.RETRY_INTERVAL, this.networkRetries) * 100); // exponential backoff
932
- }
933
- }), value);
934
- if (typeof this.refreshTokenTimer.unref === 'function')
935
- 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
+ });
936
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
+ */
937
974
  _handleVisibilityChange() {
938
- if (!(0, helpers_1.isBrowser)() || !(window === null || window === void 0 ? void 0 : window.addEventListener)) {
939
- return false;
940
- }
941
- try {
942
- window === null || window === void 0 ? void 0 : window.addEventListener('visibilitychange', () => __awaiter(this, void 0, void 0, function* () {
943
- 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()
944
1002
  yield this.initializePromise;
945
1003
  yield this._recoverAndRefresh();
946
1004
  }
947
- }));
948
- }
949
- catch (error) {
950
- console.error('_handleVisibilityChange', error);
951
- }
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
+ });
952
1017
  }
953
1018
  /**
954
1019
  * Generates the relevant login URL for a third-party provider.
@@ -992,10 +1057,7 @@ class GoTrueClient {
992
1057
  });
993
1058
  }
994
1059
  /**
995
- * Enrolls a factor
996
- * @param friendlyName Human readable name assigned to a device
997
- * @param factorType device which we're validating against. Can only be TOTP for now.
998
- * @param issuer domain which the user is enrolling with
1060
+ * {@see GoTrueMFAApi#enroll}
999
1061
  */
1000
1062
  _enroll(params) {
1001
1063
  var _a, _b;
@@ -1031,9 +1093,7 @@ class GoTrueClient {
1031
1093
  });
1032
1094
  }
1033
1095
  /**
1034
- * Validates a device as part of the enrollment step.
1035
- * @param factorId System assigned identifier for authenticator device as returned by enroll
1036
- * @param code Code Generated by an authenticator device
1096
+ * {@see GoTrueMFAApi#verify}
1037
1097
  */
1038
1098
  _verify(params) {
1039
1099
  var _a;
@@ -1064,8 +1124,7 @@ class GoTrueClient {
1064
1124
  });
1065
1125
  }
1066
1126
  /**
1067
- * Creates a challenge which a user can verify against
1068
- * @param factorId System assigned identifier for authenticator device as returned by enroll
1127
+ * {@see GoTrueMFAApi#challenge}
1069
1128
  */
1070
1129
  _challenge(params) {
1071
1130
  var _a;
@@ -1089,9 +1148,7 @@ class GoTrueClient {
1089
1148
  });
1090
1149
  }
1091
1150
  /**
1092
- * Creates a challenge and immediately verifies it
1093
- * @param factorId System assigned identifier for authenticator device as returned by enroll
1094
- * @param code Code Generated by an authenticator device
1151
+ * {@see GoTrueMFAApi#challengeAndVerify}
1095
1152
  */
1096
1153
  _challengeAndVerify(params) {
1097
1154
  return __awaiter(this, void 0, void 0, function* () {
@@ -1109,7 +1166,7 @@ class GoTrueClient {
1109
1166
  });
1110
1167
  }
1111
1168
  /**
1112
- * Displays all devices for a given user
1169
+ * {@see GoTrueMFAApi#listFactors}
1113
1170
  */
1114
1171
  _listFactors() {
1115
1172
  return __awaiter(this, void 0, void 0, function* () {
@@ -1129,8 +1186,7 @@ class GoTrueClient {
1129
1186
  });
1130
1187
  }
1131
1188
  /**
1132
- * Gets the current and next authenticator assurance level (AAL)
1133
- * and the current authentication methods for the session (AMR)
1189
+ * {@see GoTrueMFAApi#getAuthenticatorAssuranceLevel}
1134
1190
  */
1135
1191
  _getAuthenticatorAssuranceLevel() {
1136
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":"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"}
@@ -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"}