oidc-spa 6.0.8-rc.2 → 6.0.9

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,5 +1,5 @@
1
1
  export type StateData = {
2
- configHash: string;
2
+ hasBeenProcessedByCallback: boolean;
3
3
  } & ({
4
4
  isSilentSso: false;
5
5
  redirectUrl: string;
@@ -7,6 +7,8 @@ export type StateData = {
7
7
  } | {
8
8
  isSilentSso: true;
9
9
  });
10
+ export declare const STATE_STORE_KEY_PREFIX = "oidc.";
10
11
  export declare function getStateData(params: {
11
- state: string;
12
+ configHash: string;
13
+ isCallbackContext: boolean;
12
14
  }): StateData | undefined;
package/oidc/StateData.js CHANGED
@@ -11,13 +11,15 @@ var __values = (this && this.__values) || function(o) {
11
11
  throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
12
12
  };
13
13
  Object.defineProperty(exports, "__esModule", { value: true });
14
+ exports.STATE_STORE_KEY_PREFIX = void 0;
14
15
  exports.getStateData = getStateData;
16
+ exports.STATE_STORE_KEY_PREFIX = "oidc.";
15
17
  function getIsStateData(value) {
16
18
  var e_1, _a;
17
19
  if (typeof value !== "object" || value === null) {
18
20
  return false;
19
21
  }
20
- if (typeof value.configHash !== "string") {
22
+ if (typeof value.hasBeenProcessedByCallback !== "boolean") {
21
23
  return false;
22
24
  }
23
25
  if (value.isSilentSso === true) {
@@ -50,15 +52,24 @@ function getIsStateData(value) {
50
52
  return false;
51
53
  }
52
54
  function getStateData(params) {
53
- var state = params.state;
54
- var lsItem = localStorage.getItem("oidc.".concat(state));
55
+ var configHash = params.configHash, isCallbackContext = params.isCallbackContext;
56
+ var KEY = "".concat(exports.STATE_STORE_KEY_PREFIX).concat(configHash);
57
+ var lsItem = sessionStorage.getItem(KEY);
55
58
  if (lsItem === null) {
56
59
  return undefined;
57
60
  }
58
- var data = JSON.parse(lsItem).data;
61
+ var obj = JSON.parse(lsItem);
62
+ var data = obj.data;
59
63
  if (!getIsStateData(data)) {
60
64
  return undefined;
61
65
  }
66
+ if (isCallbackContext) {
67
+ if (data.hasBeenProcessedByCallback) {
68
+ return undefined;
69
+ }
70
+ data.hasBeenProcessedByCallback = true;
71
+ sessionStorage.setItem(KEY, JSON.stringify(obj));
72
+ }
62
73
  return data;
63
74
  }
64
75
  //# sourceMappingURL=StateData.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"StateData.js","sourceRoot":"","sources":["../src/oidc/StateData.ts"],"names":[],"mappings":";;;;;;;;;;;;;AA0CA,oCAgBC;AA7CD,SAAS,cAAc,CAAC,KAAU;;IAC9B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QAC9C,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,IAAI,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;QACvC,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,IAAI,KAAK,CAAC,WAAW,KAAK,IAAI,EAAE,CAAC;QAC7B,OAAO,IAAI,CAAC;IAChB,CAAC;SAAM,IAAI,KAAK,CAAC,WAAW,KAAK,KAAK,EAAE,CAAC;QACrC,IAAI,OAAO,KAAK,CAAC,WAAW,KAAK,QAAQ,EAAE,CAAC;YACxC,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,IAAI,OAAO,KAAK,CAAC,gBAAgB,KAAK,QAAQ,IAAI,KAAK,CAAC,gBAAgB,KAAK,IAAI,EAAE,CAAC;YAChF,OAAO,KAAK,CAAC;QACjB,CAAC;;YACD,KAAkB,IAAA,KAAA,SAAA,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAA,gBAAA,4BAAE,CAAC;gBAArD,IAAM,GAAG,WAAA;gBACV,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;oBAC1B,OAAO,KAAK,CAAC;gBACjB,CAAC;YACL,CAAC;;;;;;;;;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,SAAgB,YAAY,CAAC,MAAyB;IAC1C,IAAA,KAAK,GAAK,MAAM,MAAX,CAAY;IAEzB,IAAM,MAAM,GAAG,YAAY,CAAC,OAAO,CAAC,eAAQ,KAAK,CAAE,CAAC,CAAC;IAErD,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QAClB,OAAO,SAAS,CAAC;IACrB,CAAC;IAEO,IAAA,IAAI,GAAK,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAvB,CAAwB;IAEpC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;QACxB,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,OAAO,IAAI,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"StateData.js","sourceRoot":"","sources":["../src/oidc/StateData.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AA4CA,oCAiCC;AAhEY,QAAA,sBAAsB,GAAG,OAAO,CAAC;AAE9C,SAAS,cAAc,CAAC,KAAU;;IAC9B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QAC9C,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,IAAI,OAAO,KAAK,CAAC,0BAA0B,KAAK,SAAS,EAAE,CAAC;QACxD,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,IAAI,KAAK,CAAC,WAAW,KAAK,IAAI,EAAE,CAAC;QAC7B,OAAO,IAAI,CAAC;IAChB,CAAC;SAAM,IAAI,KAAK,CAAC,WAAW,KAAK,KAAK,EAAE,CAAC;QACrC,IAAI,OAAO,KAAK,CAAC,WAAW,KAAK,QAAQ,EAAE,CAAC;YACxC,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,IAAI,OAAO,KAAK,CAAC,gBAAgB,KAAK,QAAQ,IAAI,KAAK,CAAC,gBAAgB,KAAK,IAAI,EAAE,CAAC;YAChF,OAAO,KAAK,CAAC;QACjB,CAAC;;YACD,KAAkB,IAAA,KAAA,SAAA,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAA,gBAAA,4BAAE,CAAC;gBAArD,IAAM,GAAG,WAAA;gBACV,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;oBAC1B,OAAO,KAAK,CAAC;gBACjB,CAAC;YACL,CAAC;;;;;;;;;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,SAAgB,YAAY,CAAC,MAG5B;IACW,IAAA,UAAU,GAAwB,MAAM,WAA9B,EAAE,iBAAiB,GAAK,MAAM,kBAAX,CAAY;IAEjD,IAAM,GAAG,GAAG,UAAG,8BAAsB,SAAG,UAAU,CAAE,CAAC;IAErD,IAAM,MAAM,GAAG,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAE3C,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QAClB,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,IAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAEvB,IAAA,IAAI,GAAK,GAAG,KAAR,CAAS;IAErB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;QACxB,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,IAAI,iBAAiB,EAAE,CAAC;QACpB,IAAI,IAAI,CAAC,0BAA0B,EAAE,CAAC;YAClC,OAAO,SAAS,CAAC;QACrB,CAAC;QAED,IAAI,CAAC,0BAA0B,GAAG,IAAI,CAAC;QAEvC,cAAc,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;IACrD,CAAC;IAED,OAAO,IAAI,CAAC;AAChB,CAAC"}
@@ -2,3 +2,6 @@ export declare function getConfigHash(params: {
2
2
  issuerUri: string;
3
3
  clientId: string;
4
4
  }): string;
5
+ export declare function getIsConfigHash(params: {
6
+ maybeConfigHash: string;
7
+ }): boolean;
@@ -1,8 +1,14 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getConfigHash = getConfigHash;
4
+ exports.getIsConfigHash = getIsConfigHash;
4
5
  var fnv1aHashToHex_1 = require("../tools/fnv1aHashToHex");
6
+ var SIGNATURE = "9c8689";
5
7
  function getConfigHash(params) {
6
- return (0, fnv1aHashToHex_1.fnv1aHashToHex)("".concat(params.issuerUri, " ").concat(params.clientId));
8
+ return "".concat(SIGNATURE).concat((0, fnv1aHashToHex_1.fnv1aHashToHex)("".concat(params.issuerUri, " ").concat(params.clientId)));
9
+ }
10
+ function getIsConfigHash(params) {
11
+ var maybeConfigHash = params.maybeConfigHash;
12
+ return maybeConfigHash.startsWith(SIGNATURE);
7
13
  }
8
14
  //# sourceMappingURL=configHash.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"configHash.js","sourceRoot":"","sources":["../src/oidc/configHash.ts"],"names":[],"mappings":";;AAEA,sCAEC;AAJD,0DAAyD;AAEzD,SAAgB,aAAa,CAAC,MAA+C;IACzE,OAAO,IAAA,+BAAc,EAAC,UAAG,MAAM,CAAC,SAAS,cAAI,MAAM,CAAC,QAAQ,CAAE,CAAC,CAAC;AACpE,CAAC"}
1
+ {"version":3,"file":"configHash.js","sourceRoot":"","sources":["../src/oidc/configHash.ts"],"names":[],"mappings":";;AAIA,sCAEC;AAED,0CAIC;AAZD,0DAAyD;AAEzD,IAAM,SAAS,GAAG,QAAQ,CAAC;AAE3B,SAAgB,aAAa,CAAC,MAA+C;IACzE,OAAO,UAAG,SAAS,SAAG,IAAA,+BAAc,EAAC,UAAG,MAAM,CAAC,SAAS,cAAI,MAAM,CAAC,QAAQ,CAAE,CAAC,CAAE,CAAC;AACrF,CAAC;AAED,SAAgB,eAAe,CAAC,MAAmC;IACvD,IAAA,eAAe,GAAK,MAAM,gBAAX,CAAY;IAEnC,OAAO,eAAe,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;AACjD,CAAC"}
@@ -114,11 +114,8 @@ var oidcClientTsUserToTokens_1 = require("./oidcClientTsUserToTokens");
114
114
  var loginOrLogoutSilent_1 = require("./loginOrLogoutSilent");
115
115
  var expectedCallbackFileVersion_1 = require("./expectedCallbackFileVersion");
116
116
  var oidcCallbackPolyfill_1 = require("./oidcCallbackPolyfill");
117
- // Enable debug logging
118
- oidc_client_ts_and_jwt_decode_1.Log.setLogger(console);
119
- oidc_client_ts_and_jwt_decode_1.Log.setLevel(oidc_client_ts_and_jwt_decode_1.Log.DEBUG);
120
117
  // NOTE: Replaced at build time
121
- var VERSION = "6.0.8-rc.2";
118
+ var VERSION = "6.0.9";
122
119
  var prOidcByConfigHash = new Map();
123
120
  /** @see: https://docs.oidc-spa.dev/v/v6/usage */
124
121
  function createOidc(params) {
@@ -265,6 +262,7 @@ function createOidc_nonMemoized(params, preProcessedParams) {
265
262
  silent_redirect_uri: urls.callbackUrl,
266
263
  post_logout_redirect_uri: urls.callbackUrl,
267
264
  userStore: new oidc_client_ts_and_jwt_decode_1.WebStorageStateStore({ store: new oidc_client_ts_and_jwt_decode_1.InMemoryWebStorage() }),
265
+ stateStore: new oidc_client_ts_and_jwt_decode_1.WebStorageStateStore({ store: sessionStorage, prefix: StateData_1.STATE_STORE_KEY_PREFIX }),
268
266
  client_secret: __clientSecret_DO_NOT_USE_OR_YOU_WILL_BE_FIRED
269
267
  });
270
268
  lastPublicRoute = undefined;
@@ -423,7 +421,7 @@ function createOidc_nonMemoized(params, preProcessedParams) {
423
421
  }
424
422
  return [4 /*yield*/, oidcClientTsUserManager.signinRedirect({
425
423
  state: (0, tsafe_1.id)({
426
- configHash: configHash,
424
+ hasBeenProcessedByCallback: false,
427
425
  isSilentSso: false,
428
426
  redirectUrl: redirectUrl,
429
427
  extraQueryParams: extraQueryParams
@@ -437,28 +435,40 @@ function createOidc_nonMemoized(params, preProcessedParams) {
437
435
  });
438
436
  }); };
439
437
  return [4 /*yield*/, (function () { return __awaiter(_this, void 0, void 0, function () {
440
- var _a, authResponse_1, locationHref_cleanedUp, state, stateData, error, authResponseUrl, oidcClientTsUser, error_1, result_loginSilent, authResponse, error, oidcClientTsUser, error_2;
441
- return __generator(this, function (_b) {
442
- switch (_b.label) {
438
+ var authResponse_1, stateData, error, authResponseUrl, oidcClientTsUser, error_1, result_loginSilent, authResponse, error, oidcClientTsUser, error_2;
439
+ return __generator(this, function (_a) {
440
+ switch (_a.label) {
443
441
  case 0:
444
- _a = (0, urlQueryParams_1.retrieveAllQueryParamStartingWithPrefixFromUrl)({
445
- url: window.location.href,
446
- prefix: "oidc-spa.",
447
- doLeavePrefixInResults: false
448
- }), authResponse_1 = _a.values, locationHref_cleanedUp = _a.newUrl;
449
- state = authResponse_1["state"];
450
- if (state === undefined) {
442
+ authResponse_1 = (function () {
443
+ var KEY = "oidc-spa.authResponse";
444
+ var value = sessionStorage.getItem(KEY);
445
+ if (value === null) {
446
+ return undefined;
447
+ }
448
+ sessionStorage.removeItem(KEY);
449
+ var authResponse;
450
+ try {
451
+ authResponse = JSON.parse(value);
452
+ (0, tsafe_1.assert)((0, tsafe_1.typeGuard)(authResponse, authResponse instanceof Object &&
453
+ Object.values(authResponse).every(function (value) { return typeof value === "string"; })), "Valid json but not expected shape");
454
+ }
455
+ catch (error) {
456
+ console.error("Failed to parse auth response from callback URL ".concat(String(error)));
457
+ return undefined;
458
+ }
459
+ return authResponse;
460
+ })();
461
+ if (authResponse_1 === undefined) {
451
462
  return [3 /*break*/, 5];
452
463
  }
453
- stateData = (0, StateData_1.getStateData)({ state: state });
454
- if (stateData === undefined) {
464
+ if (authResponse_1["state"] !== configHash) {
455
465
  return [3 /*break*/, 5];
456
466
  }
457
- (0, tsafe_1.assert)(!stateData.isSilentSso);
458
- if (stateData.configHash !== configHash) {
467
+ stateData = (0, StateData_1.getStateData)({ configHash: configHash, isCallbackContext: false });
468
+ if (stateData === undefined) {
459
469
  return [3 /*break*/, 5];
460
470
  }
461
- window.history.replaceState(null, "", locationHref_cleanedUp);
471
+ (0, tsafe_1.assert)(!stateData.isSilentSso);
462
472
  log === null || log === void 0 ? void 0 : log("Back from the auth server, with the following auth response", authResponse_1);
463
473
  {
464
474
  error = authResponse_1["error"];
@@ -492,15 +502,15 @@ function createOidc_nonMemoized(params, preProcessedParams) {
492
502
  return { authResponseUrl: authResponseUrl };
493
503
  })().authResponseUrl;
494
504
  oidcClientTsUser = undefined;
495
- _b.label = 1;
505
+ _a.label = 1;
496
506
  case 1:
497
- _b.trys.push([1, 3, , 4]);
507
+ _a.trys.push([1, 3, , 4]);
498
508
  return [4 /*yield*/, oidcClientTsUserManager.signinRedirectCallback(authResponseUrl)];
499
509
  case 2:
500
- oidcClientTsUser = _b.sent();
510
+ oidcClientTsUser = _a.sent();
501
511
  return [3 /*break*/, 4];
502
512
  case 3:
503
- error_1 = _b.sent();
513
+ error_1 = _a.sent();
504
514
  (0, tsafe_1.assert)(error_1 instanceof Error);
505
515
  if (error_1.message === "Failed to fetch") {
506
516
  return [2 /*return*/, (0, OidcInitializationError_1.createFailedToFetchTokenEndpointInitializationError)({
@@ -536,7 +546,7 @@ function createOidc_nonMemoized(params, preProcessedParams) {
536
546
  hasDedicatedHtmFile: urls.hasDedicatedHtmFile
537
547
  })];
538
548
  case 6:
539
- result_loginSilent = _b.sent();
549
+ result_loginSilent = _a.sent();
540
550
  if (!result_loginSilent.isSuccess) {
541
551
  switch (result_loginSilent.cause) {
542
552
  case "can't reach well-known oidc endpoint":
@@ -563,15 +573,15 @@ function createOidc_nonMemoized(params, preProcessedParams) {
563
573
  }
564
574
  }
565
575
  oidcClientTsUser = undefined;
566
- _b.label = 7;
576
+ _a.label = 7;
567
577
  case 7:
568
- _b.trys.push([7, 9, , 10]);
578
+ _a.trys.push([7, 9, , 10]);
569
579
  return [4 /*yield*/, oidcClientTsUserManager.signinRedirectCallback((0, loginOrLogoutSilent_1.authResponseToUrl)(authResponse))];
570
580
  case 8:
571
- oidcClientTsUser = _b.sent();
581
+ oidcClientTsUser = _a.sent();
572
582
  return [3 /*break*/, 10];
573
583
  case 9:
574
- error_2 = _b.sent();
584
+ error_2 = _a.sent();
575
585
  (0, tsafe_1.assert)(error_2 instanceof Error);
576
586
  if (error_2.message === "Failed to fetch") {
577
587
  return [2 /*return*/, (0, OidcInitializationError_1.createFailedToFetchTokenEndpointInitializationError)({
@@ -1 +1 @@
1
- {"version":3,"file":"createOidc.js","sourceRoot":"","sources":["../src/oidc/createOidc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"createOidc.js","sourceRoot":"","sources":["../src/oidc/createOidc.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4HA,gCA6EC;AASD,wDA04BC;AA5lCD,kGAK0D;AAC1D,kDAA2F;AAC3F,kEAA4E;AAC5E,0DAA2F;AAC3F,8CAA6C;AAC7C,gDAA+C;AAC/C,kEAAiE;AACjE,0DAA+D;AAE/D,4EAA2E;AAC3E,oEAAmE;AACnE,qEAKmC;AACnC,yCAAmF;AACnF,+EAA6F;AAC7F,2CAA6C;AAC7C,uEAAsE;AACtE,6DAA+E;AAC/E,6EAA+E;AAC/E,+DAA8D;AAG9D,+BAA+B;AAC/B,IAAM,OAAO,GAAG,sBAAsB,CAAC;AAyFvC,IAAM,kBAAkB,GAAG,IAAI,GAAG,EAA8B,CAAC;AAEjE,iDAAiD;AACjD,SAAsB,UAAU,CAI5B,MAAqD;;;;;;;;wBAErD,KAAmB,KAAA,SAAA,CAAC,WAAW,EAAE,UAAU,CAAU,CAAA,4CAAE,CAAC;4BAAnD;4BACK,KAAK,GAAG,MAAM,CAAC,MAAI,CAAC,CAAC;4BAC3B,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gCAC5B,MAAM,IAAI,KAAK,CACX,0BAAkB,MAAI,2CAAgC,KAAK,gCAA6B,CAC3F,CAAC;4BACN,CAAC;wBACL,CAAC;;;;;;;;;oBAEkB,gBAAgB,GAAyD,MAAM,UAA/D,EAAE,QAAQ,GAA+C,MAAM,SAArD,EAAE,KAA6C,MAAM,OAA/B,EAApB,MAAM,mBAAG,CAAC,SAAS,CAAC,KAAA,EAAE,SAAS,GAAc,MAAM,UAApB,EAAK,IAAI,UAAK,MAAM,EAA5F,gDAAmF,CAAF,CAAY;oBAE7F,SAAS,GAAG,IAAA,yCAAmB,EAAC;wBAClC,MAAM,EAAE,gBAAgB;wBACxB,qBAAqB,EAAE,IAAI;qBAC9B,CAAC,CAAC;oBAEG,GAAG,GAAG,CAAC;wBACT,IAAI,CAAC,SAAS,EAAE,CAAC;4BACb,OAAO,SAAS,CAAC;wBACrB,CAAC;wBAED,OAAO,IAAA,UAAE,EAAqB;4BAAC,YAAmB;iCAAnB,UAAmB,EAAnB,qBAAmB,EAAnB,IAAmB;gCAAnB,uBAAmB;;4BAAnB,IAAA,KAAA,UAAmB,EAAf,KAAK,QAAA,EAAK,IAAI,cAAA,CAAC;4BAC9C,IAAM,KAAK,GAAG,UAAU,CAAC;4BAEzB,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gCAC5B,OAAO,CAAC,GAAG,OAAX,OAAO,0CAAS,UAAG,KAAK,eAAK,KAAK,CAAE,UAAK,IAAI,oBAAG;4BACpD,CAAC;iCAAM,CAAC;gCACJ,OAAO,CAAC,GAAG,OAAX,OAAO,0CAAS,UAAG,KAAK,MAAG,EAAE,KAAK,UAAK,IAAI,oBAAG;4BAClD,CAAC;wBACL,CAAC,CAAC,CAAC;oBACP,CAAC,CAAC,EAAE,CAAC;oBAEC,UAAU,GAAG,IAAA,0BAAa,EAAC,EAAE,SAAS,WAAA,EAAE,QAAQ,UAAA,EAAE,CAAC,CAAC;oBAE1D,qBAAqB,EAAE,CAAC;wBACd,MAAM,GAAG,kBAAkB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;wBAElD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;4BACvB,MAAM,qBAAqB,CAAC;wBAChC,CAAC;wBAED,GAAG,aAAH,GAAG,uBAAH,GAAG,CACC;4BACI,4DAAqD,IAAI,CAAC,SAAS,CAAC;gCAChE,SAAS,WAAA;gCACT,QAAQ,UAAA;gCACR,MAAM,QAAA;6BACT,CAAC,MAAG;4BACL,4EAA4E;yBAC/E,CAAC,IAAI,CAAC,GAAG,CAAC,CACd,CAAC;wBAEF,6CAA6C;wBAC7C,sBAAO,MAAM,EAAC;oBAClB,CAAC;oBAEK,KAAK,GAAG,IAAI,mBAAQ,EAAa,CAAC;oBAExC,kBAAkB,CAAC,GAAG,CAAC,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;oBAEhC,qBAAM,sBAAsB,CAAC,IAAI,EAAE;4BAC5C,SAAS,WAAA;4BACT,QAAQ,UAAA;4BACR,MAAM,QAAA;4BACN,UAAU,YAAA;4BACV,GAAG,KAAA;yBACN,CAAC,EAAA;;oBANI,IAAI,GAAG,SAMX;oBAEF,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;oBAEpB,sBAAO,IAAI,EAAC;;;;CACf;AAED,IAAI,aAAa,GAA4C,SAAS,CAAC;AAEvE,IAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC;AAE5B,IAAI,kBAAkB,GAAG,KAAK,CAAC;AAC/B,IAAI,mBAAmB,GAAG,KAAK,CAAC;AAEhC,SAAsB,sBAAsB,CAIxC,MAGC,EACD,kBAMC;;;;;;;oBAGG,0BAA0B,GAW1B,MAAM,2BAXoB,EACR,wBAAwB,GAU1C,MAAM,iBAVoC,EACxB,wBAAwB,GAS1C,MAAM,iBAToC,EAChC,eAAe,GAQzB,MAAM,SARmB,EACzB,OAAO,GAOP,MAAM,QAPC,EACP,oBAAoB,GAMpB,MAAM,qBANc,EACpB,8BAA8B,GAK9B,MAAM,+BALwB,EAC9B,KAIA,MAAM,iBAJ2C,EAAjD,gBAAgB,mBAAG,EAAE,UAAU,EAAE,cAAc,EAAE,KAAA,EACjD,KAGA,MAAM,UAHW,EAAjB,SAAS,mBAAG,KAAK,KAAA,EACjB,oBAAoB,GAEpB,MAAM,qBAFc,EACpB,8CAA8C,GAC9C,MAAM,+CADwC,CACvC;oBAEH,SAAS,GAAwC,kBAAkB,UAA1D,EAAE,QAAQ,GAA8B,kBAAkB,SAAhD,EAAE,MAAM,GAAsB,kBAAkB,OAAxC,EAAE,UAAU,GAAU,kBAAkB,WAA5B,EAAE,GAAG,GAAK,kBAAkB,IAAvB,CAAwB;oBAEtE,KAAA,OACF,CAAC,wBAAwB,EAAE,wBAAwB,CACtD,CAAC,GAAG,CAAC,UAAA,aAAa;wBACf,IAAI,OAAO,aAAa,KAAK,UAAU,EAAE,CAAC;4BACtC,OAAO,aAAa,CAAC;wBACzB,CAAC;wBAED,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;4BAC9B,OAAO,cAAM,OAAA,aAAa,EAAb,CAAa,CAAC;wBAC/B,CAAC;wBAED,OAAO,SAAS,CAAC;oBACrB,CAAC,CAAC,IAAA,EAZK,mBAAmB,QAAA,EAAE,mBAAmB,QAAA,CAY5C;oBAEG,IAAI,GAAG,CAAC;wBACV,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;4BACxB,IAAA,cAAM,EACF,eAAe,KAAK,SAAS,EAC7B,sEAAsE,CACzE,CAAC;4BAEF,IAAM,GAAG,GAAG,IAAA,yCAAmB,EAAC;gCAC5B,MAAM,EAAE,OAAO;gCACf,qBAAqB,EAAE,IAAI;6BAC9B,CAAC,CAAC;4BAEH,OAAO;gCACH,mBAAmB,EAAE,KAAK;gCAC1B,WAAW,EAAE,GAAG;gCAChB,OAAO,EAAE,GAAG;6BACf,CAAC;wBACN,CAAC;6BAAM,CAAC;4BACJ,IAAA,cAAM,EACF,eAAe,KAAK,SAAS,EAC7B,uDAAuD,CAC1D,CAAC;4BAEF,IAAM,GAAG,GAAG,IAAA,yCAAmB,EAAC;gCAC5B,MAAM,EAAE,eAAe;gCACvB,qBAAqB,EAAE,IAAI;6BAC9B,CAAC,CAAC;4BAEH,OAAO;gCACH,mBAAmB,EAAE,IAAI;gCACzB,WAAW,EAAE,UAAG,GAAG,uBAAoB;gCACvC,OAAO,EAAE,GAAG;6BACf,CAAC;wBACN,CAAC;oBACL,CAAC,CAAC,EAAE,CAAC;oBAEL,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAG,8BAAuB,OAAO,CAAE,EAAE,EAAE,SAAS,WAAA,EAAE,QAAQ,UAAA,EAAE,MAAM,QAAA,EAAE,UAAU,YAAA,EAAE,IAAI,MAAA,EAAE,CAAC,CAAC;oBAE3F,qBAAM,IAAA,2CAAoB,EAAC,EAAE,mBAAmB,EAAE,IAAI,CAAC,mBAAmB,EAAE,CAAC,EAAA;;oBAA7E,SAA6E,CAAC;oBAExE,uBAAuB,GAAG,IAAI,2CAAuB,CAAC;wBACxD,UAAU,YAAA;wBACV,SAAS,EAAE,SAAS;wBACpB,SAAS,EAAE,QAAQ;wBACnB,YAAY,EAAE,IAAI,CAAC,WAAW;wBAC9B,aAAa,EAAE,MAAM;wBACrB,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,gBAAE,QAAQ,UAAK,MAAM,UAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;wBAC3D,oBAAoB,EAAE,KAAK;wBAC3B,mBAAmB,EAAE,IAAI,CAAC,WAAW;wBACrC,wBAAwB,EAAE,IAAI,CAAC,WAAW;wBAC1C,SAAS,EAAE,IAAI,oDAAoB,CAAC,EAAE,KAAK,EAAE,IAAI,kDAAkB,EAAE,EAAE,CAAC;wBACxE,UAAU,EAAE,IAAI,oDAAoB,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,kCAAsB,EAAE,CAAC;wBAC/F,aAAa,EAAE,8CAA8C;qBAChE,CAAC,CAAC;oBAEC,eAAe,GAAuB,SAAS,CAAC;oBAG9C,4BAA4B,GAAG;wBACjC,IAAM,aAAa,GAAG,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;wBACtD,OAAO,CAAC,SAAS,GAAG,SAAS,SAAS;4BAAC,cAAO;iCAAP,UAAO,EAAP,qBAAO,EAAP,IAAO;gCAAP,yBAAO;;4BAC1C,eAAe,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;4BACvC,OAAO,aAAa,wCAAI,IAAI,WAAE;wBAClC,CAAC,CAAC;oBACN,CAAC,CAAC;oBAQI,qBAAqB,GAAG,UAAO,MAAqC;;;;;oCAEhD,4BAA4B,GAI9C,MAAM,iBAJwC,EACjC,kBAAkB,GAG/B,MAAM,YAHyB,EACH,sCAAsC,GAElE,MAAM,2BAF4D,EAC/D,IAAI,UACP,MAAM,EALJ,iEAKL,CADU,CACA;oCAEX,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAG,+BAA+B,EAAE,EAAE,MAAM,QAAA,EAAE,CAAC,CAAC;oCAEnD,uFAAuF;oCACvF,qGAAqG;oCACrG,iCAAiC;oCACjC,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;wCAC1B,IAAI,kBAAkB,EAAE,CAAC;4CACrB,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAG,oDAAoD,CAAC,CAAC;4CAC5D,sBAAO,IAAI,OAAO,CAAQ,cAAO,CAAC,CAAC,EAAC;wCACxC,CAAC;wCAED,kBAAkB,GAAG,IAAI,CAAC;wCAEpB,aAAW;4CACb,IAAI,QAAQ,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;gDACzC,QAAQ,CAAC,mBAAmB,CAAC,kBAAkB,EAAE,UAAQ,CAAC,CAAC;gDAE3D,GAAG,aAAH,GAAG,uBAAH,GAAG,CACC,8EAA8E,CACjF,CAAC;gDAEF,IAAI,IAAI,CAAC,2BAA2B,EAAE,CAAC;oDACnC,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;wDAChC,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAG,qCAA8B,eAAe,CAAE,CAAC,CAAC;wDACvD,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,eAAe,CAAC;oDAC3C,CAAC;yDAAM,CAAC;wDACJ,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAG,iEAAiE,CAAC,CAAC;wDACzE,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;oDAC1B,CAAC;gDACL,CAAC;qDAAM,CAAC;oDACJ,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAG,gEAAgE,CAAC,CAAC;oDACxE,kBAAkB,GAAG,KAAK,CAAC;gDAC/B,CAAC;4CACL,CAAC;wCACL,CAAC,CAAC;wCAEF,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAG,4CAA4C,CAAC,CAAC;wCAEpD,QAAQ,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,UAAQ,CAAC,CAAC;oCAC5D,CAAC;oCAEK,WAAW,GACb,kBAAkB,KAAK,SAAS;wCAC5B,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI;wCACtB,CAAC,CAAC,IAAA,yCAAmB,EAAC;4CAChB,MAAM,EAAE,kBAAkB;4CAC1B,qBAAqB,EAAE,KAAK;yCAC/B,CAAC,CAAC;oCAEb,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAG,uBAAgB,WAAW,CAAE,CAAC,CAAC;oCAErC,0EAA0E;oCAC1E,0EAA0E;oCAC1E,0EAA0E;oCAC1E,oDAAoD;oCACpD,CAAC;wCACS,QAAM;4CAAC,cAA+C;iDAA/C,UAA+C,EAA/C,qBAA+C,EAA/C,IAA+C;gDAA/C,yBAA+C;;4CACxD,IAAM,WAAW,QAAO,QAAQ,YAAR,QAAQ,iCAAI,IAAI,aAAC,CAAC;4CAE1C,OAAO,IAAI,KAAK,CAAC,WAAW,EAAE;gDAC1B,GAAG,EAAE,UAAC,MAAM,EAAE,IAAI;oDACd,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;wDAClB,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;wDAE1D,IAAI,KAAG,GAAG,WAAW,CAAC,IAAI,CAAC;wDAGvB;4DACI,CAAC,mBAAmB,aAAnB,mBAAmB,uBAAnB,mBAAmB,EAAI,EAAE,0BAA0B,CAAC;4DACrD;gEACI,4BAA4B;gEAC5B,sCAAsC;6DACzC;yDAER,CAAC,OAAO,CAAC,UAAC,EAA8C;gEAA9C,KAAA,aAA8C,EAA7C,gBAAgB,QAAA,EAAE,0BAA0B,QAAA;4DACpD,sBAAsB,EAAE,CAAC;gEACrB,IAAI,gBAAgB,KAAK,SAAS,EAAE,CAAC;oEACjC,MAAM,sBAAsB,CAAC;gEACjC,CAAC;gEAED,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,OAAO,CACpC,UAAC,EAAa;wEAAb,KAAA,aAAa,EAAZ,IAAI,QAAA,EAAE,KAAK,QAAA;oEACT,OAAA,CAAC,KAAG,GAAG,IAAA,mCAAkB,EAAC;wEACtB,GAAG,OAAA;wEACH,IAAI,MAAA;wEACJ,KAAK,OAAA;qEACR,CAAC,CAAC,MAAM,CAAC;gEAJV,CAIU,CACjB,CAAC;4DACN,CAAC;4DAED,+BAA+B,EAAE,CAAC;gEAC9B,IAAI,0BAA0B,KAAK,SAAS,EAAE,CAAC;oEAC3C,MAAM,+BAA+B,CAAC;gEAC1C,CAAC;gEACD,KAAG,GAAG,0BAA0B,CAAC,KAAG,CAAC,CAAC;4DAC1C,CAAC;wDACL,CAAC,CAAC,CAAC;wDAEH,OAAO,KAAG,CAAC;oDACf,CAAC;oDAED,kBAAkB;oDAClB,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC;gDACxB,CAAC;6CACJ,CAAC,CAAC;wCACP,CAAC,CAAC;wCAEF,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,KAAG,EAAE,CAAC,CAAC;oCACzD,CAAC;oCAKK,cAAc,GAAG,CAAC;wCACpB,QAAQ,IAAI,CAAC,MAAM,EAAE,CAAC;4CAClB,KAAK,OAAO;gDACR,OAAO,IAAI,CAAC,2BAA2B,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC;4CACnE,KAAK,mBAAmB;gDACpB,OAAO,QAAQ,CAAC;wCACxB,CAAC;oCACL,CAAC,CAAC,EAAE,CAAC;oCAEL,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAG,0BAAmB,cAAc,CAAE,CAAC,CAAC;oCAEnC,gBAAgB,GAAK,CAAC;;wCAC1B,IAAM,gBAAgB,GAA2B,4BAA4B,aAA5B,4BAA4B,cAA5B,4BAA4B,GAAI,EAAE,CAAC;wCAEpF,oDAAoD,EAAE,CAAC;4CACnD,IAAI,sCAAsC,KAAK,SAAS,EAAE,CAAC;gDACvD,MAAM,oDAAoD,CAAC;4CAC/D,CAAC;4CAED,IAAI,kBAAkB,SAAA,CAAC;4CAEvB,IAAI,CAAC;gDACD,kBAAkB,GAAG,sCAAsC,CAAC,mBAAmB,CAAC,CAAC;4CACrF,CAAC;4CAAC,WAAM,CAAC;gDACL,MAAM,oDAAoD,CAAC;4CAC/D,CAAC;4CAEO,IAAQ,yCAAyC,GACrD,IAAA,6CAA4B,EAAC,EAAE,GAAG,EAAE,kBAAkB,EAAE,CAAC,OADJ,CACK;;gDAE9D,KAA4B,IAAA,KAAA,SAAA,MAAM,CAAC,OAAO,CAAC,yCAAyC,CAAC,CAAA,gBAAA,4BAAE,CAAC;oDAA7E,IAAA,KAAA,mBAAa,EAAZ,MAAI,QAAA,EAAE,KAAK,QAAA;oDACnB,gBAAgB,CAAC,MAAI,CAAC,GAAG,KAAK,CAAC;gDACnC,CAAC;;;;;;;;;wCACL,CAAC;wCAED,OAAO,EAAE,gBAAgB,kBAAA,EAAE,CAAC;oCAChC,CAAC,CAAC,EAAE,iBAzBoB,CAyBnB;oCAEL,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;wCAC3B,IAAA,4DAA8B,GAAE,CAAC;oCACrC,CAAC;oCAED,qBAAM,uBAAuB,CAAC,cAAc,CAAC;4CACzC,KAAK,EAAE,IAAA,UAAE,EAAY;gDACjB,0BAA0B,EAAE,KAAK;gDACjC,WAAW,EAAE,KAAK;gDAClB,WAAW,aAAA;gDACX,gBAAgB,kBAAA;6CACnB,CAAC;4CACF,cAAc,gBAAA;yCACjB,CAAC,EAAA;;oCARF,SAQE,CAAC;oCACH,sBAAO,IAAI,OAAO,CAAQ,cAAO,CAAC,CAAC,EAAC;;;yBACvC,CAAC;oBAE2B,qBAAM,CAAC;;;;;wCAStB,iBAAe,CAAC;4CAClB,IAAM,GAAG,GAAG,uBAAuB,CAAC;4CAEpC,IAAM,KAAK,GAAG,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;4CAE1C,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gDACjB,OAAO,SAAS,CAAC;4CACrB,CAAC;4CAED,cAAc,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;4CAE/B,IAAI,YAAqB,CAAC;4CAE1B,IAAI,CAAC;gDACD,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gDAEjC,IAAA,cAAM,EACF,IAAA,iBAAS,EACL,YAAY,EACZ,YAAY,YAAY,MAAM;oDAC1B,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,UAAA,KAAK,IAAI,OAAA,OAAO,KAAK,KAAK,QAAQ,EAAzB,CAAyB,CAAC,CAC5E,EACD,mCAAmC,CACtC,CAAC;4CACN,CAAC;4CAAC,OAAO,KAAK,EAAE,CAAC;gDACb,OAAO,CAAC,KAAK,CAAC,0DAAmD,MAAM,CAAC,KAAK,CAAC,CAAE,CAAC,CAAC;gDAClF,OAAO,SAAS,CAAC;4CACrB,CAAC;4CAED,OAAO,YAAY,CAAC;wCACxB,CAAC,CAAC,EAAE,CAAC;wCAEL,IAAI,cAAY,KAAK,SAAS,EAAE,CAAC;4CAC7B,wBAAyB;wCAC7B,CAAC;wCAED,IAAI,cAAY,CAAC,OAAO,CAAC,KAAK,UAAU,EAAE,CAAC;4CACvC,wBAAyB;wCAC7B,CAAC;wCAEK,SAAS,GAAG,IAAA,wBAAY,EAAC,EAAE,UAAU,YAAA,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAAC,CAAC;wCAEzE,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;4CAC1B,wBAAyB;wCAC7B,CAAC;wCAED,IAAA,cAAM,EAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;wCAE/B,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAG,6DAA6D,EAAE,cAAY,CAAC,CAAC;wCAEnF,CAAC;4CACS,KAAK,GAAuB,cAAY,CAAC,OAAO,CAAC,CAAC;4CAExD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gDACtB,sBAAO,IAAI,KAAK,CACZ;wDACI,iEAAiE;wDACjE,yBAAkB,KAAK,CAAE;qDAC5B,CAAC,IAAI,CAAC,GAAG,CAAC,CACd,EAAC;4CACN,CAAC;wCACL,CAAC;wCAEO,eAAe,GAAK,CAAC;;4CACzB,IAAI,eAAe,GAAG,mBAAmB,CAAC;;gDAE1C,KAA4B,IAAA,KAAA,SAAA,MAAM,CAAC,OAAO,CAAC,cAAY,CAAC,CAAA,gBAAA,4BAAE,CAAC;oDAAhD,IAAA,KAAA,mBAAa,EAAZ,MAAI,QAAA,EAAE,KAAK,QAAA;oDACnB,eAAe,GAAG,IAAA,mCAAkB,EAAC;wDACjC,GAAG,EAAE,eAAe;wDACpB,IAAI,QAAA;wDACJ,KAAK,OAAA;qDACR,CAAC,CAAC,MAAM,CAAC;gDACd,CAAC;;;;;;;;;4CAED,OAAO,EAAE,eAAe,iBAAA,EAAE,CAAC;wCAC/B,CAAC,CAAC,EAAE,gBAZmB,CAYlB;wCAED,gBAAgB,GAAiC,SAAS,CAAC;;;;wCAGxC,qBAAM,uBAAuB,CAAC,sBAAsB,CAAC,eAAe,CAAC,EAAA;;wCAAxF,gBAAgB,GAAG,SAAqE,CAAC;;;;wCAEzF,IAAA,cAAM,EAAC,OAAK,YAAY,KAAK,CAAC,CAAC;wCAE/B,IAAI,OAAK,CAAC,OAAO,KAAK,iBAAiB,EAAE,CAAC;4CACtC,sBAAO,IAAA,6EAAmD,EAAC;oDACvD,QAAQ,UAAA;oDACR,SAAS,WAAA;iDACZ,CAAC,EAAC;wCACP,CAAC;wCAED,0EAA0E;wCAC1E,8FAA8F;wCAC9F,sBAAO,SAAS,EAAC;4CAGrB,sBAAO;4CACH,gBAAgB,kBAAA;4CAChB,kBAAkB,EAAE;gDAChB,gBAAgB,EAAE,SAAS,CAAC,gBAAgB;gDAC5C,MAAM,EAAE,MAAM,CAAC,WAAW,CACtB,MAAM,CAAC,OAAO,CAAC,cAAY,CAAC,CAAC,MAAM,CAC/B,UAAC,EAAM;wDAAN,KAAA,aAAM,EAAL,IAAI,QAAA;oDACF,OAAA,IAAI,KAAK,OAAO;wDAChB,IAAI,KAAK,eAAe;wDACxB,IAAI,KAAK,KAAK;wDACd,IAAI,KAAK,MAAM;gDAHf,CAGe,CACtB,CACJ;6CACJ;yCACJ,EAAC;;wCAIF,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAG,iFAAiF,CAAC,CAAC;wCAE9D,qBAAM,IAAA,yCAAmB,EAAC;gDACjD,uBAAuB,yBAAA;gDACvB,UAAU,YAAA;gDACV,MAAM,EAAE;oDACJ,IAAI,EAAE,OAAO;oDACb,mBAAmB,qBAAA;iDACtB;gDACD,mBAAmB,EAAE,IAAI,CAAC,mBAAmB;6CAChD,CAAC,EAAA;;wCARI,kBAAkB,GAAG,SAQzB;wCAEF,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,CAAC;4CAChC,QAAQ,kBAAkB,CAAC,KAAK,EAAE,CAAC;gDAC/B,KAAK,sCAAsC;oDACvC,sBAAO,IAAA,gGAAsE,EAAC;4DAC1E,SAAS,WAAA;yDACZ,CAAC,EAAC;gDACP,KAAK,SAAS;oDACV,sBAAO,IAAA,gEAAsC,EAAC;4DAC1C,mBAAmB,EAAE,IAAI,CAAC,mBAAmB;4DAC7C,WAAW,EAAE,IAAI,CAAC,WAAW;4DAC7B,QAAQ,UAAA;4DACR,SAAS,WAAA;yDACZ,CAAC,EAAC;4CACX,CAAC;4CAED,IAAA,cAAM,EAAiD,KAAK,CAAC,CAAC;wCAClE,CAAC;wCAEO,YAAY,GAAK,kBAAkB,aAAvB,CAAwB;wCAE5C,CAAC;4CACS,KAAK,GAAuB,YAAY,CAAC,OAAO,CAAC,CAAC;4CAExD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gDACtB,sFAAsF;gDACtF,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAG,0CAAmC,KAAK,CAAE,CAAC,CAAC;gDAClD,yBAAoC;4CACxC,CAAC;wCACL,CAAC;wCAEG,gBAAgB,GAAiC,SAAS,CAAC;;;;wCAGxC,qBAAM,uBAAuB,CAAC,sBAAsB,CACnE,IAAA,uCAAiB,EAAC,YAAY,CAAC,CAClC,EAAA;;wCAFD,gBAAgB,GAAG,SAElB,CAAC;;;;wCAEF,IAAA,cAAM,EAAC,OAAK,YAAY,KAAK,CAAC,CAAC;wCAE/B,IAAI,OAAK,CAAC,OAAO,KAAK,iBAAiB,EAAE,CAAC;4CACtC,sBAAO,IAAA,6EAAmD,EAAC;oDACvD,QAAQ,UAAA;oDACR,SAAS,WAAA;iDACZ,CAAC,EAAC;wCACP,CAAC;wCAED,MAAM,OAAK,CAAC;;wCAGhB,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAG,6BAA6B,CAAC,CAAC;wCAErC,sBAAO;gDACH,gBAAgB,kBAAA;gDAChB,kBAAkB,EAAE,SAAS;6CAChC,EAAC;;oCAGN,6EAA6E;oCAC7E,sBAAO,SAAS,EAAC;;;6BACpB,CAAC,EAAE,CAAC,IAAI,CAAC,UAAA,MAAM;4BACZ,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gCACvB,OAAO,SAAS,CAAC;4BACrB,CAAC;4BAED,IAAI,MAAM,YAAY,KAAK,EAAE,CAAC;gCAC1B,OAAO,MAAM,CAAC;4BAClB,CAAC;4BAEO,IAAA,gBAAgB,GAAyB,MAAM,iBAA/B,EAAE,kBAAkB,GAAK,MAAM,mBAAX,CAAY;4BAExD,yBAAyB,EAAE,CAAC;gCACxB,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;oCACpB,MAAM,yBAAyB,CAAC;gCACpC,CAAC;gCACD,IAAM,OAAO,GAAG,gBAAgB,CAAC,QAAQ,CAAC;gCAE1C,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;oCACxB,MAAM,yBAAyB,CAAC;gCACpC,CAAC;gCAED,IAAM,cAAc,GAAG,IAAA,qBAAS,EAAC,OAAO,CAAC,CAAC;gCAE1C,GAAG,CACC;oCACI,kBAAkB;oCAClB,oBAAoB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,0CAA0C;oCACpF,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC;iCAC1C,CAAC,IAAI,CAAC,EAAE,CAAC,CACb,CAAC;gCAEF,IAAI,oBAAoB,KAAK,SAAS,EAAE,CAAC;oCACrC,MAAM,yBAAyB,CAAC;gCACpC,CAAC;gCAED,GAAG,CACC;oCACI,yDAAyD;oCACzD,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;iCACtE,CAAC,IAAI,CAAC,EAAE,CAAC,CACb,CAAC;4BACN,CAAC;4BAED,IAAM,MAAM,GAAG,IAAA,mDAAwB,EAAC;gCACpC,gBAAgB,kBAAA;gCAChB,oBAAoB,sBAAA;gCACpB,GAAG,KAAA;6BACN,CAAC,CAAC;4BAEH,IAAI,MAAM,CAAC,0BAA0B,GAAG,MAAM,CAAC,yBAAyB,EAAE,CAAC;gCACvE,OAAO,CAAC,IAAI,CACR;oCACI,kEAAkE;oCAClE,uDAAuD;oCACvD,mDAA4C,QAAQ,cAAI,SAAS,CAAE;iCACtE,CAAC,IAAI,CAAC,GAAG,CAAC,CACd,CAAC;4BACN,CAAC;4BAED,OAAO,EAAE,MAAM,QAAA,EAAE,kBAAkB,oBAAA,EAAE,CAAC;wBAC1C,CAAC,CAAC,EAAA;;oBA9PI,oBAAoB,GAAG,SA8P3B;oBAEI,MAAM,GAAgB;wBACxB,MAAM,EAAE;4BACJ,SAAS,WAAA;4BACT,QAAQ,UAAA;yBACX;qBACJ,CAAC;oBAEF,IAAI,oBAAoB,YAAY,KAAK,EAAE,CAAC;wBACxC,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAG,0DAA0D,CAAC,CAAC;wBAE5D,KAAK,GAAG,oBAAoB,CAAC;wBAE7B,mBAAmB,GACrB,KAAK,YAAY,iDAAuB;4BACpC,CAAC,CAAC,KAAK;4BACP,CAAC,CAAC,IAAI,iDAAuB,CAAC;gCACxB,sBAAsB,EAAE,KAAK;gCAC7B,cAAc,EAAE,KAAK;6BACxB,CAAC,CAAC;wBAEb,IAAI,SAAS,EAAE,CAAC;4BACZ,MAAM,mBAAmB,CAAC;wBAC9B,CAAC;wBAED,OAAO,CAAC,KAAK,CACT;4BACI,iCAAiC;4BACjC,kCAA2B,mBAAmB,CAAC,sBAAsB,CAAE;4BACvE,EAAE;4BACF,mBAAmB,CAAC,OAAO;yBAC9B,CAAC,IAAI,CAAC,IAAI,CAAC,CACf,CAAC;wBAEF,4BAA4B,EAAE,CAAC;wBAEzB,SAAO,IAAA,UAAE,wBACR,MAAM,KACT,cAAc,EAAE,KAAK,EACrB,KAAK,EAAE;;oCACH,KAAK,CAAC,kEAAkE,CAAC,CAAC;oCAC1E,sBAAO,IAAI,OAAO,CAAQ,cAAO,CAAC,CAAC,EAAC;;iCACvC,EACD,mBAAmB,qBAAA,IACrB,CAAC;wBAEH,+CAA+C;wBAC/C,sBAAO,MAAI,EAAC;oBAChB,CAAC;yBAEG,CAAA,oBAAoB,KAAK,SAAS,CAAA,EAAlC,wBAAkC;oBAClC,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAG,oBAAoB,CAAC,CAAC;yBAExB,SAAS,EAAT,wBAAS;oBACT,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAG,kFAAkF,CAAC,CAAC;oBAC1F,qBAAM,qBAAqB,CAAC;4BACxB,MAAM,EAAE,OAAO;4BACf,2BAA2B,EAAE,IAAI;4BACjC,WAAW,EAAE,oBAAoB;yBACpC,CAAC,EAAA;;oBAJF,SAIE,CAAC;;;oBAIP,4BAA4B,EAAE,CAAC;oBAEzB,SAAO,IAAA,UAAE,wBACR,MAAM,KACT,cAAc,EAAE,KAAK,EACrB,KAAK,EAAE,UAAA,MAAM,IAAI,OAAA,qBAAqB,YAAG,MAAM,EAAE,OAAO,IAAK,MAAM,EAAG,EAArD,CAAqD,EACtE,mBAAmB,EAAE,SAAS,IAChC,CAAC;oBAEH,+CAA+C;oBAC/C,sBAAO,MAAI,EAAC;;oBAGhB,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAG,mBAAmB,CAAC,CAAC;oBAE3B,CAAC;wBACW,gBAAgB,GAAK,IAAA,kDAAmB,EAAC,EAAE,UAAU,YAAA,EAAE,CAAC,iBAAxC,CAAyC;wBAEjE,gBAAgB,CAAC,IAAI,CAAC,UAAC,EAAyB;gCAAvB,qBAAqB,2BAAA;4BAC1C,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAG,mDAA4C,qBAAqB,CAAE,CAAC,CAAC;4BAC3E,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,qBAAqB,CAAC;wBACjD,CAAC,CAAC,CAAC;oBACP,CAAC;oBAEG,aAAa,GAAG,oBAAoB,CAAC,MAAM,CAAC;oBAE1C,gCAAgC,GAAG,IAAI,GAAG,EAE7C,CAAC;oBAEE,cAAc,GAAG,IAAI,GAAG,EAAc,CAAC;oBAEvC,IAAI,GAAG,IAAA,UAAE,wBACR,MAAM,KACT,cAAc,EAAE,IAAI,EACpB,SAAS,EAAE,cAAM,OAAA,aAAa,EAAb,CAAa,EAC9B,MAAM,EAAE,UAAM,MAAM;;;;;wCAChB,IAAI,mBAAmB,EAAE,CAAC;4CACtB,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAG,qDAAqD,CAAC,CAAC;4CAC7D,sBAAO,IAAI,OAAO,CAAQ,cAAO,CAAC,CAAC,EAAC;wCACxC,CAAC;wCAED,mBAAmB,GAAG,IAAI,CAAC;;;;wCAGK,qBAAM,IAAA,yCAAmB,EAAC;gDAClD,UAAU,YAAA;gDACV,uBAAuB,yBAAA;gDACvB,mBAAmB,EAAE,IAAI,CAAC,mBAAmB;gDAC7C,MAAM,EAAE;oDACJ,IAAI,EAAE,QAAQ;iDACjB;6CACJ,CAAC,EAAA;;wCAPI,mBAAmB,GAAG,SAO1B;wCAEF,IAAA,cAAM,EAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;wCAEtC,qBAAM,uBAAuB,CAAC,qBAAqB,CAC/C,IAAA,uCAAiB,EAAC,mBAAmB,CAAC,YAAY,CAAC,CACtD,EAAA;;wCAFD,SAEC,CAAC;;;;wCAEF,iDAAiD;wCACjD,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAG,sCAA+B,MAAM,CAAC,OAAK,CAAC,CAAE,CAAC,CAAC;;;wCAGpD,qBAAqB,GAAW,CAAC;4CACnC,QAAQ,MAAM,CAAC,UAAU,EAAE,CAAC;gDACxB,KAAK,cAAc;oDACf,OAAO,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;gDAChC,KAAK,MAAM;oDACP,OAAO,IAAI,CAAC,OAAO,CAAC;gDACxB,KAAK,cAAc;oDACf,OAAO,IAAA,yCAAmB,EAAC;wDACvB,MAAM,EAAE,MAAM,CAAC,GAAG;wDAClB,qBAAqB,EAAE,KAAK;qDAC/B,CAAC,CAAC;4CACX,CAAC;wCACL,CAAC,CAAC,EAAE,CAAC;wCAEL,IAAA,qDAAsB,EAAC;4CACnB,UAAU,YAAA;4CACV,qBAAqB,uBAAA;yCACxB,CAAC,CAAC;wCAEG,QAAQ,GAAG;4CACb,IAAI,QAAQ,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;gDACzC,QAAQ,CAAC,mBAAmB,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAC;gDAC3D,QAAQ,CAAC,MAAM,EAAE,CAAC;4CACtB,CAAC;wCACL,CAAC,CAAC;wCACF,QAAQ,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAC;wCAExD,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,qBAAqB,CAAC;wCAE7C,sBAAO,IAAI,OAAO,CAAQ,cAAO,CAAC,CAAC,EAAC;;;6BACvC,EACD,WAAW,EAAE,UAAM,MAAM;;;;;wCACK,sBAAsB,GAAK,CAAA,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,EAAE,CAAA,iBAAjB,CAAkB;wCAEzC,qBAAM,uBAAuB,CAAC,YAAY,CAAC;gDAChE,gBAAgB,wBACT,mBAAmB,aAAnB,mBAAmB,uBAAnB,mBAAmB,EAAI,GACvB,sBAAsB,CAC5B;6CACJ,CAAC,EAAA;;wCALI,gBAAgB,GAAG,SAKvB;wCAEF,IAAA,cAAM,EAAC,gBAAgB,KAAK,IAAI,CAAC,CAAC;wCAE5B,gCAAgC,GAAG,MAAM,CAAC,wBAAwB,CACpE,aAAa,EACb,gBAAgB,CACnB,CAAC;wCAEF,IAAA,cAAM,EAAC,gCAAgC,KAAK,SAAS,CAAC,CAAC;wCAEvD,aAAa,GAAG,IAAA,mDAAwB,EAAC;4CACrC,gBAAgB,kBAAA;4CAChB,oBAAoB,sBAAA;4CACpB,GAAG,KAAA;yCACN,CAAC,CAAC;wCAEH,mEAAmE;wCACnE,MAAM,CAAC,cAAc,CAAC,aAAa,EAAE,gBAAgB,EAAE,gCAAgC,CAAC,CAAC;wCAEzF,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC,UAAA,aAAa,IAAI,OAAA,aAAa,EAAE,EAAf,CAAe,CAAC,CAAC;;;;6BACxE,EACD,uBAAuB,EAAE,UAAA,aAAa;4BAClC,cAAc,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;4BAElC,OAAO;gCACH,WAAW,EAAE;oCACT,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;gCACzC,CAAC;6BACJ,CAAC;wBACN,CAAC,EACD,8BAA8B,EAAE,UAAA,YAAY;4BACxC,gCAAgC,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;4BAEnD,IAAM,kCAAkC,GAAG;gCACvC,gCAAgC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;4BAC1D,CAAC,CAAC;4BAEF,OAAO,EAAE,kCAAkC,oCAAA,EAAE,CAAC;wBAClD,CAAC,EACD,cAAc,EAAE,UAAA,MAAM,IAAI,OAAA,qBAAqB,YAAG,MAAM,EAAE,mBAAmB,IAAK,MAAM,EAAG,EAAjE,CAAiE,EAC3F,kBAAkB,EAAE,oBAAoB,CAAC,kBAAkB,EAC3D,mBAAmB,EAAE,CAAC;4BAClB,IAAM,GAAG,GAAG,mCAA4B,UAAU,CAAE,CAAC;4BAErD,IAAI,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC;gCACvC,cAAc,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;gCAEpC,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAG,+BAA+B,CAAC,CAAC;gCAEvC,OAAO,IAAI,CAAC;4BAChB,CAAC;4BAED,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAG,mCAAmC,CAAC,CAAC;4BAE3C,OAAO,KAAK,CAAC;wBACjB,CAAC,CAAC,EAAE,IACN,CAAC;oBAEH,CAAC;wBACS,0BAAwB;4BAC1B,kEAAkE;4BAClE,gEAAgE;4BAChE,mBAAmB;4BACnB,IAAM,mBAAmB,GAAG,IAAI,CAAC,GAAG,CAChC,aAAa,CAAC,yBAAyB,EACvC,aAAa,CAAC,0BAA0B,CAC3C,CAAC;4BAEF,IAAM,kBAAkB,GAAG,IAAI,CAAC,GAAG,CAC/B,mBAAmB,GAAG,IAAI,CAAC,GAAG,EAAE;4BAChC,+DAA+D;4BAC/D,0CAA0C;4BAC1C,mFAAmF;4BACnF,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CACtB,CAAC;4BAEF,IAAI,kBAAkB,GAAG,CAAC,EAAE,CAAC;gCACzB,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAG,2BAA2B,CAAC,CAAC;gCACnC,OAAO,CAAC,CAAC;4BACb,CAAC;4BAED,OAAO,kBAAkB,CAAC;wBAC9B,CAAC,CAAC;wBAEF,CAAC,SAAS,aAAa;4BAAtB,iBA8CA;4BA7CG,IAAM,kBAAkB,GAAG,uBAAqB,EAAE,CAAC;4BAEnD,2DAA2D;4BAC3D,iFAAiF;4BACjF,uCAAuC;4BACvC,IAAM,oBAAoB,GAAG,IAAI,CAAC,GAAG,CAAC,KAAM,EAAE,kBAAkB,GAAG,GAAG,CAAC,CAAC;4BAExE,GAAG,aAAH,GAAG,uBAAH,GAAG,CACC;gCACI,IAAA,iDAAuB,EAAC,kBAAkB,CAAC;gCAC3C,wCAAwC;gCACxC,6BAAsB,IAAA,iDAAuB,EACzC,oBAAoB,CACvB,uBAAoB;6BACxB,CAAC,IAAI,CAAC,GAAG,CAAC,CACd,CAAC;4BAEF,IAAM,KAAK,GAAG,IAAA,0BAAU,EAAC;;;;;4CACrB,GAAG,aAAH,GAAG,uBAAH,GAAG,CACC,8DAAuD,IAAA,iDAAuB,EAC1E,oBAAoB,CACvB,CAAE,CACN,CAAC;;;;4CAGE,qBAAM,IAAI,CAAC,WAAW,EAAE,EAAA;;4CAAxB,SAAwB,CAAC;;;;4CAEzB,2EAA2E;4CAC3E,yDAAyD;4CACzD,oEAAoE;4CACpE,kEAAkE;4CAClE,qEAAqE;4CACrE,mCAAmC;4CACnC,qBAAM,qBAAqB,CAAC;oDACxB,MAAM,EAAE,OAAO;oDACf,2BAA2B,EAAE,KAAK;iDACrC,CAAC,EAAA;;4CATF,2EAA2E;4CAC3E,yDAAyD;4CACzD,oEAAoE;4CACpE,kEAAkE;4CAClE,qEAAqE;4CACrE,mCAAmC;4CACnC,SAGE,CAAC;;;;;iCAEV,EAAE,kBAAkB,GAAG,oBAAoB,CAAC,CAAC;4BAEtC,IAAa,sBAAsB,GAAK,IAAI,CAAC,uBAAuB,CAAC;gCACzE,IAAA,4BAAY,EAAC,KAAK,CAAC,CAAC;gCACpB,sBAAsB,EAAE,CAAC;gCACzB,aAAa,EAAE,CAAC;4BACpB,CAAC,CAAC,YAJyC,CAIxC;wBACP,CAAC,CAAC,EAAE,CAAC;oBACT,CAAC;oBAED,CAAC;wBACW,mBAAmB,IAAA,qCAAoB,EAAC;4BAC5C,mBAAmB,EAAE,CAAC;gCAClB,IAAM,mBAAmB,GAAG;oCACxB,OAAA,8BAA8B,KAAK,SAAS;wCACxC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,8BAA8B,GAAG,IAAI;wCACpD,CAAC,CAAC,aAAa,CAAC,0BAA0B;gCAF9C,CAE8C,CAAC;gCAEnD,IAAM,wBAAwB,GAAG,IAAA,iDAAuB,EACpD,mBAAmB,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CACrC,CAAC;gCAEF,GAAG,aAAH,GAAG,uBAAH,GAAG,CACC;oCACI,0DAAmD,wBAAwB,oBAAiB;oCAC5F,8BAA8B,KAAK,SAAS;wCACxC,CAAC,CAAC,SAAS;wCACX,CAAC,CAAC,gFAAgF;iCACzF;qCACI,MAAM,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,KAAK,SAAS,EAAf,CAAe,CAAC;qCAC5B,IAAI,CAAC,IAAI,CAAC,CAClB,CAAC;gCAEF,OAAO,mBAAmB,CAAC;4BAC/B,CAAC,CAAC,EAAE;4BACJ,YAAY,EAAE,UAAC,EAAe;oCAAb,WAAW,iBAAA;gCACxB,KAAK,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC,OAAO,CAAC,UAAA,YAAY;oCAC7D,OAAA,YAAY,CAAC,EAAE,WAAW,aAAA,EAAE,CAAC;gCAA7B,CAA6B,CAChC,CAAC;gCAEF,IAAI,WAAW,KAAK,CAAC,EAAE,CAAC;oCACpB,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;gCAClC,CAAC;4BACL,CAAC;yBACJ,CAAC,eAjCoB,CAiCnB;wBAEC,kBAA0C,SAAS,CAAC;wBAExD,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;4BAC9B,aAAa,GAAG,IAAA,uCAAkB,EAAC;gCAC/B,8CAA8C,EAAE,IAAK;6BACxD,CAAC,CAAC,aAAa,CAAC;wBACrB,CAAC;wBAED,aAAa,CAAC,SAAS,CAAC,UAAA,YAAY;4BAChC,IAAI,YAAY,EAAE,CAAC;gCACf,IAAI,eAAa,KAAK,SAAS,EAAE,CAAC;oCAC9B,eAAa,EAAE,CAAC;oCAChB,eAAa,GAAG,SAAS,CAAC;gCAC9B,CAAC;4BACL,CAAC;iCAAM,CAAC;gCACJ,IAAA,cAAM,EAAC,eAAa,KAAK,SAAS,CAAC,CAAC;gCACpC,eAAa,GAAG,gBAAc,EAAE,CAAC,aAAa,CAAC;4BACnD,CAAC;wBACL,CAAC,CAAC,CAAC;oBACP,CAAC;oBAED,sBAAO,IAAI,EAAC;;;;CACf"}
@@ -3,6 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.setExpectedCallbackFileVersion = setExpectedCallbackFileVersion;
4
4
  var EXPECTED_CALLBACK_FILE_VERSION_KEY = "oidc-spa.callback-file-version";
5
5
  function setExpectedCallbackFileVersion() {
6
- localStorage.setItem(EXPECTED_CALLBACK_FILE_VERSION_KEY, "2");
6
+ localStorage.setItem(EXPECTED_CALLBACK_FILE_VERSION_KEY, "3");
7
7
  }
8
8
  //# sourceMappingURL=expectedCallbackFileVersion.js.map
@@ -141,11 +141,11 @@ function loginOrLogoutSilent(params) {
141
141
  return;
142
142
  }
143
143
  var authResponse = event.data;
144
- var stateData = (0, StateData_1.getStateData)({ state: authResponse.state });
145
- if (stateData === undefined) {
144
+ if (authResponse.state !== configHash) {
146
145
  return;
147
146
  }
148
- if (stateData.configHash !== configHash) {
147
+ var stateData = (0, StateData_1.getStateData)({ configHash: authResponse.state, isCallbackContext: false });
148
+ if (stateData === undefined) {
149
149
  return;
150
150
  }
151
151
  clearTimeout(timeout);
@@ -160,7 +160,7 @@ function loginOrLogoutSilent(params) {
160
160
  var _a;
161
161
  var params_common = {
162
162
  state: (0, tsafe_1.id)({
163
- configHash: configHash,
163
+ hasBeenProcessedByCallback: false,
164
164
  isSilentSso: true
165
165
  }),
166
166
  silentRequestTimeoutInSeconds: timeoutDelayMs / 1000
@@ -190,7 +190,6 @@ function loginOrLogoutSilent(params) {
190
190
  }
191
191
  // NOTE: Here, except error on our understanding there can't be any other
192
192
  // error than timeout so we fail silently and let the timeout expire.
193
- console.error("================>", error);
194
193
  });
195
194
  return [2 /*return*/, dResult.pr];
196
195
  });
@@ -1 +1 @@
1
- {"version":3,"file":"loginOrLogoutSilent.js","sourceRoot":"","sources":["../src/oidc/loginOrLogoutSilent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loginOrLogoutSilent.js","sourceRoot":"","sources":["../src/oidc/loginOrLogoutSilent.ts"],"names":[],"mappings":"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"}
@@ -30,9 +30,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
30
30
  exports.oidcCallbackPolyfill = oidcCallbackPolyfill;
31
31
  var urlQueryParams_1 = require("../tools/urlQueryParams");
32
32
  var StateData_1 = require("./StateData");
33
+ var configHash_1 = require("./configHash");
34
+ var BACK_NAVIGATION_TRACKER_KEY = "oidc-spa.has-navigated-back";
33
35
  var previousCall = undefined;
34
36
  function oidcCallbackPolyfill(params) {
35
- var e_1, _a, e_2, _b;
37
+ var e_1, _a;
36
38
  var hasDedicatedHtmFile = params.hasDedicatedHtmFile;
37
39
  {
38
40
  if (previousCall !== undefined) {
@@ -51,42 +53,25 @@ function oidcCallbackPolyfill(params) {
51
53
  if (!result.wasPresent) {
52
54
  return undefined;
53
55
  }
56
+ if (!(0, configHash_1.getIsConfigHash)({ maybeConfigHash: result.value })) {
57
+ return undefined;
58
+ }
54
59
  return result.value;
55
60
  })();
56
61
  if (state === undefined) {
57
62
  return;
58
63
  }
59
- var reloadOnRestore = function () {
60
- var listener = function () {
61
- if (document.visibilityState === "visible") {
62
- document.removeEventListener("visibilitychange", listener);
63
- location.reload();
64
- }
65
- };
66
- document.addEventListener("visibilitychange", listener);
67
- };
68
- var stateData = (0, StateData_1.getStateData)({ state: state });
64
+ var stateData = (0, StateData_1.getStateData)({ configHash: state, isCallbackContext: true });
69
65
  if (stateData === undefined) {
70
- {
71
- var result = (0, urlQueryParams_1.retrieveQueryParamFromUrl)({
72
- url: window.location.href,
73
- name: "code"
74
- });
75
- if (!result.wasPresent || result.value.length < 6) {
76
- // It just happens that there is a state query param in the url
77
- return;
78
- }
79
- }
80
66
  // Here we are almost certain that we navigated back or forward to the callback page.
81
67
  // since we have a state and a code query param in the url.
82
68
  reloadOnRestore();
83
- var KEY = "oidc-spa.has-navigated-back";
84
- if (sessionStorage.getItem(KEY) === "true") {
85
- sessionStorage.removeItem(KEY);
69
+ if (sessionStorage.getItem(BACK_NAVIGATION_TRACKER_KEY) === "true") {
70
+ sessionStorage.removeItem(BACK_NAVIGATION_TRACKER_KEY);
86
71
  history.forward();
87
72
  }
88
73
  else {
89
- sessionStorage.setItem(KEY, "true");
74
+ sessionStorage.setItem(BACK_NAVIGATION_TRACKER_KEY, "true");
90
75
  history.back();
91
76
  }
92
77
  return new Promise(function () { });
@@ -99,15 +84,15 @@ function oidcCallbackPolyfill(params) {
99
84
  }
100
85
  var authResponse = {};
101
86
  try {
102
- for (var _c = __values(new URL(location.href).searchParams), _d = _c.next(); !_d.done; _d = _c.next()) {
103
- var _e = __read(_d.value, 2), key = _e[0], value = _e[1];
87
+ for (var _b = __values(new URL(location.href).searchParams), _c = _b.next(); !_c.done; _c = _b.next()) {
88
+ var _d = __read(_c.value, 2), key = _d[0], value = _d[1];
104
89
  authResponse[key] = value;
105
90
  }
106
91
  }
107
92
  catch (e_1_1) { e_1 = { error: e_1_1 }; }
108
93
  finally {
109
94
  try {
110
- if (_d && !_d.done && (_a = _c.return)) _a.call(_c);
95
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
111
96
  }
112
97
  finally { if (e_1) throw e_1.error; }
113
98
  }
@@ -116,22 +101,19 @@ function oidcCallbackPolyfill(params) {
116
101
  }
117
102
  else {
118
103
  reloadOnRestore();
119
- var redirectUrl = new URL(stateData.redirectUrl);
120
- try {
121
- for (var _f = __values(Object.entries(authResponse)), _g = _f.next(); !_g.done; _g = _f.next()) {
122
- var _h = __read(_g.value, 2), key = _h[0], value = _h[1];
123
- redirectUrl.searchParams.set("oidc-spa.".concat(key), value);
124
- }
125
- }
126
- catch (e_2_1) { e_2 = { error: e_2_1 }; }
127
- finally {
128
- try {
129
- if (_g && !_g.done && (_b = _f.return)) _b.call(_f);
130
- }
131
- finally { if (e_2) throw e_2.error; }
132
- }
133
- location.href = redirectUrl.href;
104
+ sessionStorage.removeItem(BACK_NAVIGATION_TRACKER_KEY);
105
+ sessionStorage.setItem("oidc-spa.authResponse", JSON.stringify(authResponse));
106
+ location.href = stateData.redirectUrl;
134
107
  }
135
108
  return new Promise(function () { });
136
109
  }
110
+ function reloadOnRestore() {
111
+ var listener = function () {
112
+ if (document.visibilityState === "visible") {
113
+ document.removeEventListener("visibilitychange", listener);
114
+ location.reload();
115
+ }
116
+ };
117
+ document.addEventListener("visibilitychange", listener);
118
+ }
137
119
  //# sourceMappingURL=oidcCallbackPolyfill.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"oidcCallbackPolyfill.js","sourceRoot":"","sources":["../src/oidc/oidcCallbackPolyfill.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oidcCallbackPolyfill.js","sourceRoot":"","sources":["../src/oidc/oidcCallbackPolyfill.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "oidc-spa",
3
- "version": "6.0.8-rc.2",
3
+ "version": "6.0.9",
4
4
  "description": "Openidconnect client for Single Page Applications",
5
5
  "repository": {
6
6
  "type": "git",
@@ -1,5 +1,5 @@
1
1
  export type StateData = {
2
- configHash: string;
2
+ hasBeenProcessedByCallback: boolean;
3
3
  } & (
4
4
  | {
5
5
  isSilentSso: false;
@@ -11,12 +11,14 @@ export type StateData = {
11
11
  }
12
12
  );
13
13
 
14
+ export const STATE_STORE_KEY_PREFIX = "oidc.";
15
+
14
16
  function getIsStateData(value: any): value is StateData {
15
17
  if (typeof value !== "object" || value === null) {
16
18
  return false;
17
19
  }
18
20
 
19
- if (typeof value.configHash !== "string") {
21
+ if (typeof value.hasBeenProcessedByCallback !== "boolean") {
20
22
  return false;
21
23
  }
22
24
 
@@ -40,20 +42,37 @@ function getIsStateData(value: any): value is StateData {
40
42
  return false;
41
43
  }
42
44
 
43
- export function getStateData(params: { state: string }): StateData | undefined {
44
- const { state } = params;
45
+ export function getStateData(params: {
46
+ configHash: string;
47
+ isCallbackContext: boolean;
48
+ }): StateData | undefined {
49
+ const { configHash, isCallbackContext } = params;
45
50
 
46
- const lsItem = localStorage.getItem(`oidc.${state}`);
51
+ const KEY = `${STATE_STORE_KEY_PREFIX}${configHash}`;
52
+
53
+ const lsItem = sessionStorage.getItem(KEY);
47
54
 
48
55
  if (lsItem === null) {
49
56
  return undefined;
50
57
  }
51
58
 
52
- const { data } = JSON.parse(lsItem);
59
+ const obj = JSON.parse(lsItem);
60
+
61
+ const { data } = obj;
53
62
 
54
63
  if (!getIsStateData(data)) {
55
64
  return undefined;
56
65
  }
57
66
 
67
+ if (isCallbackContext) {
68
+ if (data.hasBeenProcessedByCallback) {
69
+ return undefined;
70
+ }
71
+
72
+ data.hasBeenProcessedByCallback = true;
73
+
74
+ sessionStorage.setItem(KEY, JSON.stringify(obj));
75
+ }
76
+
58
77
  return data;
59
78
  }
@@ -1,5 +1,13 @@
1
1
  import { fnv1aHashToHex } from "../tools/fnv1aHashToHex";
2
2
 
3
+ const SIGNATURE = "9c8689";
4
+
3
5
  export function getConfigHash(params: { issuerUri: string; clientId: string }) {
4
- return fnv1aHashToHex(`${params.issuerUri} ${params.clientId}`);
6
+ return `${SIGNATURE}${fnv1aHashToHex(`${params.issuerUri} ${params.clientId}`)}`;
7
+ }
8
+
9
+ export function getIsConfigHash(params: { maybeConfigHash: string }): boolean {
10
+ const { maybeConfigHash } = params;
11
+
12
+ return maybeConfigHash.startsWith(SIGNATURE);
5
13
  }
@@ -2,16 +2,11 @@ import {
2
2
  UserManager as OidcClientTsUserManager,
3
3
  WebStorageStateStore,
4
4
  type User as OidcClientTsUser,
5
- InMemoryWebStorage,
6
- Log
5
+ InMemoryWebStorage
7
6
  } from "../vendor/frontend/oidc-client-ts-and-jwt-decode";
8
- import { id, type Param0, assert, type Equals } from "../vendor/frontend/tsafe";
7
+ import { id, type Param0, assert, type Equals, typeGuard } from "../vendor/frontend/tsafe";
9
8
  import { setTimeout, clearTimeout } from "../vendor/frontend/worker-timers";
10
- import {
11
- addQueryParamToUrl,
12
- retrieveAllQueryParamFromUrl,
13
- retrieveAllQueryParamStartingWithPrefixFromUrl
14
- } from "../tools/urlQueryParams";
9
+ import { addQueryParamToUrl, retrieveAllQueryParamFromUrl } from "../tools/urlQueryParams";
15
10
  import { Deferred } from "../tools/Deferred";
16
11
  import { decodeJwt } from "../tools/decodeJwt";
17
12
  import { createIsUserActive } from "../tools/createIsUserActive";
@@ -25,7 +20,7 @@ import {
25
20
  createIframeTimeoutInitializationError,
26
21
  createWellKnownOidcConfigurationEndpointUnreachableInitializationError
27
22
  } from "./OidcInitializationError";
28
- import { getStateData, type StateData } from "./StateData";
23
+ import { getStateData, type StateData, STATE_STORE_KEY_PREFIX } from "./StateData";
29
24
  import { notifyOtherTabOfLogout, getPrOtherTabLogout } from "./logoutPropagationToOtherTabs";
30
25
  import { getConfigHash } from "./configHash";
31
26
  import { oidcClientTsUserToTokens } from "./oidcClientTsUserToTokens";
@@ -34,10 +29,6 @@ import { setExpectedCallbackFileVersion } from "./expectedCallbackFileVersion";
34
29
  import { oidcCallbackPolyfill } from "./oidcCallbackPolyfill";
35
30
  import type { Oidc } from "./Oidc";
36
31
 
37
- // Enable debug logging
38
- Log.setLogger(console);
39
- Log.setLevel(Log.DEBUG);
40
-
41
32
  // NOTE: Replaced at build time
42
33
  const VERSION = "{{OIDC_SPA_VERSION}}";
43
34
 
@@ -314,6 +305,7 @@ export async function createOidc_nonMemoized<
314
305
  silent_redirect_uri: urls.callbackUrl,
315
306
  post_logout_redirect_uri: urls.callbackUrl,
316
307
  userStore: new WebStorageStateStore({ store: new InMemoryWebStorage() }),
308
+ stateStore: new WebStorageStateStore({ store: sessionStorage, prefix: STATE_STORE_KEY_PREFIX }),
317
309
  client_secret: __clientSecret_DO_NOT_USE_OR_YOU_WILL_BE_FIRED
318
310
  });
319
311
 
@@ -499,7 +491,7 @@ export async function createOidc_nonMemoized<
499
491
 
500
492
  await oidcClientTsUserManager.signinRedirect({
501
493
  state: id<StateData>({
502
- configHash,
494
+ hasBeenProcessedByCallback: false,
503
495
  isSilentSso: false,
504
496
  redirectUrl,
505
497
  extraQueryParams
@@ -517,33 +509,54 @@ export async function createOidc_nonMemoized<
517
509
  backFromAuthServer: Oidc.LoggedIn["backFromAuthServer"]; // Undefined is silent signin
518
510
  }
519
511
  > => {
520
- read_auth_response_from_url: {
521
- const { values: authResponse, newUrl: locationHref_cleanedUp } =
522
- retrieveAllQueryParamStartingWithPrefixFromUrl({
523
- url: window.location.href,
524
- prefix: "oidc-spa.",
525
- doLeavePrefixInResults: false
526
- });
512
+ read_auth_response: {
513
+ const authResponse = (() => {
514
+ const KEY = "oidc-spa.authResponse";
527
515
 
528
- const state: string | undefined = authResponse["state"];
516
+ const value = sessionStorage.getItem(KEY);
529
517
 
530
- if (state === undefined) {
531
- break read_auth_response_from_url;
532
- }
518
+ if (value === null) {
519
+ return undefined;
520
+ }
533
521
 
534
- const stateData = getStateData({ state });
522
+ sessionStorage.removeItem(KEY);
535
523
 
536
- if (stateData === undefined) {
537
- break read_auth_response_from_url;
524
+ let authResponse: unknown;
525
+
526
+ try {
527
+ authResponse = JSON.parse(value);
528
+
529
+ assert(
530
+ typeGuard<Record<string, string>>(
531
+ authResponse,
532
+ authResponse instanceof Object &&
533
+ Object.values(authResponse).every(value => typeof value === "string")
534
+ ),
535
+ "Valid json but not expected shape"
536
+ );
537
+ } catch (error) {
538
+ console.error(`Failed to parse auth response from callback URL ${String(error)}`);
539
+ return undefined;
540
+ }
541
+
542
+ return authResponse;
543
+ })();
544
+
545
+ if (authResponse === undefined) {
546
+ break read_auth_response;
538
547
  }
539
548
 
540
- assert(!stateData.isSilentSso);
549
+ if (authResponse["state"] !== configHash) {
550
+ break read_auth_response;
551
+ }
552
+
553
+ const stateData = getStateData({ configHash, isCallbackContext: false });
541
554
 
542
- if (stateData.configHash !== configHash) {
543
- break read_auth_response_from_url;
555
+ if (stateData === undefined) {
556
+ break read_auth_response;
544
557
  }
545
558
 
546
- window.history.replaceState(null, "", locationHref_cleanedUp);
559
+ assert(!stateData.isSilentSso);
547
560
 
548
561
  log?.("Back from the auth server, with the following auth response", authResponse);
549
562
 
@@ -1,5 +1,5 @@
1
1
  const EXPECTED_CALLBACK_FILE_VERSION_KEY = "oidc-spa.callback-file-version";
2
2
 
3
3
  export function setExpectedCallbackFileVersion() {
4
- localStorage.setItem(EXPECTED_CALLBACK_FILE_VERSION_KEY, "2");
4
+ localStorage.setItem(EXPECTED_CALLBACK_FILE_VERSION_KEY, "3");
5
5
  }
@@ -89,13 +89,13 @@ export async function loginOrLogoutSilent(params: {
89
89
 
90
90
  const authResponse = event.data;
91
91
 
92
- const stateData = getStateData({ state: authResponse.state });
93
-
94
- if (stateData === undefined) {
92
+ if (authResponse.state !== configHash) {
95
93
  return;
96
94
  }
97
95
 
98
- if (stateData.configHash !== configHash) {
96
+ const stateData = getStateData({ configHash: authResponse.state, isCallbackContext: false });
97
+
98
+ if (stateData === undefined) {
99
99
  return;
100
100
  }
101
101
 
@@ -114,7 +114,7 @@ export async function loginOrLogoutSilent(params: {
114
114
  (() => {
115
115
  const params_common = {
116
116
  state: id<StateData>({
117
- configHash,
117
+ hasBeenProcessedByCallback: false,
118
118
  isSilentSso: true
119
119
  }),
120
120
  silentRequestTimeoutInSeconds: timeoutDelayMs / 1000
@@ -155,7 +155,6 @@ export async function loginOrLogoutSilent(params: {
155
155
 
156
156
  // NOTE: Here, except error on our understanding there can't be any other
157
157
  // error than timeout so we fail silently and let the timeout expire.
158
- console.error("================>", error);
159
158
  });
160
159
 
161
160
  return dResult.pr;
@@ -1,5 +1,8 @@
1
1
  import { retrieveQueryParamFromUrl } from "../tools/urlQueryParams";
2
2
  import { getStateData } from "./StateData";
3
+ import { getIsConfigHash } from "./configHash";
4
+
5
+ const BACK_NAVIGATION_TRACKER_KEY = "oidc-spa.has-navigated-back";
3
6
 
4
7
  let previousCall:
5
8
  | {
@@ -33,6 +36,10 @@ export function oidcCallbackPolyfill(params: { hasDedicatedHtmFile: boolean }):
33
36
  return undefined;
34
37
  }
35
38
 
39
+ if (!getIsConfigHash({ maybeConfigHash: result.value })) {
40
+ return undefined;
41
+ }
42
+
36
43
  return result.value;
37
44
  })();
38
45
 
@@ -40,41 +47,18 @@ export function oidcCallbackPolyfill(params: { hasDedicatedHtmFile: boolean }):
40
47
  return;
41
48
  }
42
49
 
43
- const reloadOnRestore = () => {
44
- const listener = () => {
45
- if (document.visibilityState === "visible") {
46
- document.removeEventListener("visibilitychange", listener);
47
- location.reload();
48
- }
49
- };
50
- document.addEventListener("visibilitychange", listener);
51
- };
52
-
53
- const stateData = getStateData({ state });
50
+ const stateData = getStateData({ configHash: state, isCallbackContext: true });
54
51
 
55
52
  if (stateData === undefined) {
56
- {
57
- const result = retrieveQueryParamFromUrl({
58
- url: window.location.href,
59
- name: "code"
60
- });
61
-
62
- if (!result.wasPresent || result.value.length < 6) {
63
- // It just happens that there is a state query param in the url
64
- return;
65
- }
66
- }
67
-
68
53
  // Here we are almost certain that we navigated back or forward to the callback page.
69
54
  // since we have a state and a code query param in the url.
70
55
  reloadOnRestore();
71
56
 
72
- const KEY = "oidc-spa.has-navigated-back";
73
- if (sessionStorage.getItem(KEY) === "true") {
74
- sessionStorage.removeItem(KEY);
57
+ if (sessionStorage.getItem(BACK_NAVIGATION_TRACKER_KEY) === "true") {
58
+ sessionStorage.removeItem(BACK_NAVIGATION_TRACKER_KEY);
75
59
  history.forward();
76
60
  } else {
77
- sessionStorage.setItem(KEY, "true");
61
+ sessionStorage.setItem(BACK_NAVIGATION_TRACKER_KEY, "true");
78
62
  history.back();
79
63
  }
80
64
 
@@ -98,15 +82,20 @@ export function oidcCallbackPolyfill(params: { hasDedicatedHtmFile: boolean }):
98
82
  parent.postMessage(authResponse, location.origin);
99
83
  } else {
100
84
  reloadOnRestore();
101
-
102
- const redirectUrl = new URL(stateData.redirectUrl);
103
-
104
- for (const [key, value] of Object.entries(authResponse)) {
105
- redirectUrl.searchParams.set(`oidc-spa.${key}`, value);
106
- }
107
-
108
- location.href = redirectUrl.href;
85
+ sessionStorage.removeItem(BACK_NAVIGATION_TRACKER_KEY);
86
+ sessionStorage.setItem("oidc-spa.authResponse", JSON.stringify(authResponse));
87
+ location.href = stateData.redirectUrl;
109
88
  }
110
89
 
111
90
  return new Promise<never>(() => {});
112
91
  }
92
+
93
+ function reloadOnRestore() {
94
+ const listener = () => {
95
+ if (document.visibilityState === "visible") {
96
+ document.removeEventListener("visibilitychange", listener);
97
+ location.reload();
98
+ }
99
+ };
100
+ document.addEventListener("visibilitychange", listener);
101
+ }
@@ -1,4 +1,5 @@
1
1
  export { id } from "tsafe/id";
2
2
  export { assert, is, type Equals } from "tsafe/assert";
3
+ export { typeGuard } from "tsafe/typeGuard";
3
4
  export { overwriteReadonlyProp } from "tsafe/lab/overwriteReadonlyProp";
4
5
  export type { Param0 } from "tsafe";
@@ -1,4 +1,5 @@
1
1
  export { id } from "tsafe/id";
2
2
  export { assert, is, type Equals } from "tsafe/assert";
3
+ export { typeGuard } from "tsafe/typeGuard";
3
4
  export { overwriteReadonlyProp } from "tsafe/lab/overwriteReadonlyProp";
4
5
  export type { Param0 } from "tsafe";
@@ -1,2 +1,2 @@
1
- (()=>{"use strict";var r={720:function(r,e,t){var o,n=this&&this.__extends||(o=function(r,e){return o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,e){r.__proto__=e}||function(r,e){for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&(r[t]=e[t])},o(r,e)},function(r,e){if("function"!=typeof e&&null!==e)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");function t(){this.constructor=r}o(r,e),r.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}),i=this&&this.__read||function(r,e){var t="function"==typeof Symbol&&r[Symbol.iterator];if(!t)return r;var o,n,i=t.call(r),a=[];try{for(;(void 0===e||e-- >0)&&!(o=i.next()).done;)a.push(o.value)}catch(r){n={error:r}}finally{try{o&&!o.done&&(t=i.return)&&t.call(i)}finally{if(n)throw n.error}}return a};Object.defineProperty(e,"__esModule",{value:!0}),e.AssertionError=void 0,e.assert=function(r,e){if(0===arguments.length&&(r=!0),void 0===c){if(!r)throw new s("function"==typeof e?e():e)}else c=void 0},e.is=function(r){var e={};if(void 0!==c)throw c=void 0,new Error(u);return c=e,Promise.resolve().then((function(){if(c===e)throw new Error(u)})),null};var a=t(522),s=function(r){function e(e){var t=this.constructor,o=r.call(this,"Wrong assertion encountered"+(e?': "'.concat(e,'"'):""))||this;if(o.originalMessage=e,Object.setPrototypeOf(o,t.prototype),!o.stack)return o;try{(0,a.overwriteReadonlyProp)(o,"stack",o.stack.split("\n").filter((function(){for(var r=[],e=0;e<arguments.length;e++)r[e]=arguments[e];var t=i(r,2)[1];return 1!==t&&2!==t})).join("\n"))}catch(r){}return o}return n(e,r),e}(Error);e.AssertionError=s;var c=void 0,u="Wrong usage of the `is` function refer to https://docs.tsafe.dev/is"},135:(r,e)=>{Object.defineProperty(e,"__esModule",{value:!0}),e.id=void 0,e.id=function(r){return r}},522:function(r,e){var t=this&&this.__assign||function(){return t=Object.assign||function(r){for(var e,t=1,o=arguments.length;t<o;t++)for(var n in e=arguments[t])Object.prototype.hasOwnProperty.call(e,n)&&(r[n]=e[n]);return r},t.apply(this,arguments)};Object.defineProperty(e,"__esModule",{value:!0}),e.overwriteReadonlyProp=void 0,e.overwriteReadonlyProp=function(r,e,o){try{r[e]=o}catch(r){}if(r[e]===o)return o;var n=void 0,i=Object.getOwnPropertyDescriptor(r,e)||{enumerable:!0,configurable:!0};if(i.get)throw new Error("Probably a wrong ides to overwrite ".concat(String(e)," getter"));try{Object.defineProperty(r,e,t(t({},i),{value:o}))}catch(r){n=r}if(r[e]!==o)throw n||new Error("Can't assign");return o}}},e={};function t(o){var n=e[o];if(void 0!==n)return n.exports;var i=e[o]={exports:{}};return r[o].call(i.exports,i,i.exports,t),i.exports}var o={};(()=>{var r=o;Object.defineProperty(r,"__esModule",{value:!0}),r.overwriteReadonlyProp=r.is=r.assert=r.id=void 0;var e=t(135);Object.defineProperty(r,"id",{enumerable:!0,get:function(){return e.id}});var n=t(720);Object.defineProperty(r,"assert",{enumerable:!0,get:function(){return n.assert}}),Object.defineProperty(r,"is",{enumerable:!0,get:function(){return n.is}});var i=t(522);Object.defineProperty(r,"overwriteReadonlyProp",{enumerable:!0,get:function(){return i.overwriteReadonlyProp}})})(),module.exports=o})();
1
+ (()=>{"use strict";var r={720:function(r,e,t){var o,n=this&&this.__extends||(o=function(r,e){return o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,e){r.__proto__=e}||function(r,e){for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&(r[t]=e[t])},o(r,e)},function(r,e){if("function"!=typeof e&&null!==e)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");function t(){this.constructor=r}o(r,e),r.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}),i=this&&this.__read||function(r,e){var t="function"==typeof Symbol&&r[Symbol.iterator];if(!t)return r;var o,n,i=t.call(r),a=[];try{for(;(void 0===e||e-- >0)&&!(o=i.next()).done;)a.push(o.value)}catch(r){n={error:r}}finally{try{o&&!o.done&&(t=i.return)&&t.call(i)}finally{if(n)throw n.error}}return a};Object.defineProperty(e,"__esModule",{value:!0}),e.AssertionError=void 0,e.assert=function(r,e){if(0===arguments.length&&(r=!0),void 0===c){if(!r)throw new u("function"==typeof e?e():e)}else c=void 0},e.is=function(r){var e={};if(void 0!==c)throw c=void 0,new Error(s);return c=e,Promise.resolve().then((function(){if(c===e)throw new Error(s)})),null};var a=t(522),u=function(r){function e(e){var t=this.constructor,o=r.call(this,"Wrong assertion encountered"+(e?': "'.concat(e,'"'):""))||this;if(o.originalMessage=e,Object.setPrototypeOf(o,t.prototype),!o.stack)return o;try{(0,a.overwriteReadonlyProp)(o,"stack",o.stack.split("\n").filter((function(){for(var r=[],e=0;e<arguments.length;e++)r[e]=arguments[e];var t=i(r,2)[1];return 1!==t&&2!==t})).join("\n"))}catch(r){}return o}return n(e,r),e}(Error);e.AssertionError=u;var c=void 0,s="Wrong usage of the `is` function refer to https://docs.tsafe.dev/is"},135:(r,e)=>{Object.defineProperty(e,"__esModule",{value:!0}),e.id=void 0,e.id=function(r){return r}},522:function(r,e){var t=this&&this.__assign||function(){return t=Object.assign||function(r){for(var e,t=1,o=arguments.length;t<o;t++)for(var n in e=arguments[t])Object.prototype.hasOwnProperty.call(e,n)&&(r[n]=e[n]);return r},t.apply(this,arguments)};Object.defineProperty(e,"__esModule",{value:!0}),e.overwriteReadonlyProp=void 0,e.overwriteReadonlyProp=function(r,e,o){try{r[e]=o}catch(r){}if(r[e]===o)return o;var n=void 0,i=Object.getOwnPropertyDescriptor(r,e)||{enumerable:!0,configurable:!0};if(i.get)throw new Error("Probably a wrong ides to overwrite ".concat(String(e)," getter"));try{Object.defineProperty(r,e,t(t({},i),{value:o}))}catch(r){n=r}if(r[e]!==o)throw n||new Error("Can't assign");return o}},497:(r,e)=>{Object.defineProperty(e,"__esModule",{value:!0}),e.typeGuard=function(r,e){return e}}},e={};function t(o){var n=e[o];if(void 0!==n)return n.exports;var i=e[o]={exports:{}};return r[o].call(i.exports,i,i.exports,t),i.exports}var o={};(()=>{var r=o;Object.defineProperty(r,"__esModule",{value:!0}),r.overwriteReadonlyProp=r.typeGuard=r.is=r.assert=r.id=void 0;var e=t(135);Object.defineProperty(r,"id",{enumerable:!0,get:function(){return e.id}});var n=t(720);Object.defineProperty(r,"assert",{enumerable:!0,get:function(){return n.assert}}),Object.defineProperty(r,"is",{enumerable:!0,get:function(){return n.is}});var i=t(497);Object.defineProperty(r,"typeGuard",{enumerable:!0,get:function(){return i.typeGuard}});var a=t(522);Object.defineProperty(r,"overwriteReadonlyProp",{enumerable:!0,get:function(){return a.overwriteReadonlyProp}})})(),module.exports=o})();
2
2
  exports.__oidcSpaBundle = true;