oidc-spa 8.2.0 → 8.2.1

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.
Files changed (48) hide show
  1. package/core/OidcMetadata.d.ts +5 -0
  2. package/core/OidcMetadata.js +56 -0
  3. package/core/OidcMetadata.js.map +1 -1
  4. package/core/createOidc.d.ts +1 -1
  5. package/core/createOidc.js +170 -102
  6. package/core/createOidc.js.map +1 -1
  7. package/core/diagnostic.d.ts +0 -1
  8. package/core/diagnostic.js +18 -5
  9. package/core/diagnostic.js.map +1 -1
  10. package/core/loginOrGoToAuthServer.d.ts +0 -1
  11. package/core/loginOrGoToAuthServer.js +1 -16
  12. package/core/loginOrGoToAuthServer.js.map +1 -1
  13. package/core/loginSilent.d.ts +1 -2
  14. package/core/loginSilent.js +3 -21
  15. package/core/loginSilent.js.map +1 -1
  16. package/esm/core/OidcMetadata.d.ts +5 -0
  17. package/esm/core/OidcMetadata.js +54 -0
  18. package/esm/core/OidcMetadata.js.map +1 -1
  19. package/esm/core/createOidc.d.ts +1 -1
  20. package/esm/core/createOidc.js +170 -102
  21. package/esm/core/createOidc.js.map +1 -1
  22. package/esm/core/diagnostic.d.ts +0 -1
  23. package/esm/core/diagnostic.js +15 -1
  24. package/esm/core/diagnostic.js.map +1 -1
  25. package/esm/core/loginOrGoToAuthServer.d.ts +0 -1
  26. package/esm/core/loginOrGoToAuthServer.js +1 -16
  27. package/esm/core/loginOrGoToAuthServer.js.map +1 -1
  28. package/esm/core/loginSilent.d.ts +1 -2
  29. package/esm/core/loginSilent.js +3 -21
  30. package/esm/core/loginSilent.js.map +1 -1
  31. package/esm/keycloak/keycloakIssuerUriParsed.js +8 -1
  32. package/esm/keycloak/keycloakIssuerUriParsed.js.map +1 -1
  33. package/esm/tools/isLikelyDevServer.d.ts +1 -0
  34. package/esm/tools/isLikelyDevServer.js +14 -0
  35. package/esm/tools/isLikelyDevServer.js.map +1 -0
  36. package/keycloak/keycloakIssuerUriParsed.js +8 -1
  37. package/keycloak/keycloakIssuerUriParsed.js.map +1 -1
  38. package/package.json +1 -1
  39. package/src/core/OidcMetadata.ts +75 -0
  40. package/src/core/createOidc.ts +209 -137
  41. package/src/core/diagnostic.ts +21 -2
  42. package/src/core/loginOrGoToAuthServer.ts +0 -22
  43. package/src/core/loginSilent.ts +4 -27
  44. package/src/keycloak/keycloakIssuerUriParsed.ts +10 -1
  45. package/src/tools/isLikelyDevServer.ts +17 -0
  46. package/tools/isLikelyDevServer.d.ts +1 -0
  47. package/tools/isLikelyDevServer.js +17 -0
  48. package/tools/isLikelyDevServer.js.map +1 -0
@@ -1,4 +1,5 @@
1
1
  import { UserManager as OidcClientTsUserManager, WebStorageStateStore, InMemoryWebStorage } from "../vendor/frontend/oidc-client-ts";
2
+ import { fetchOidcMetadata } from "./OidcMetadata";
2
3
  import { assert, is } from "../tools/tsafe/assert";
3
4
  import { id } from "../tools/tsafe/id";
4
5
  import { setTimeout, clearTimeout } from "../tools/workerTimers";
@@ -26,11 +27,12 @@ import { createGetIsNewBrowserSession } from "./isNewBrowserSession";
26
27
  import { getIsOnline } from "../tools/getIsOnline";
27
28
  import { isKeycloak } from "../keycloak/isKeycloak";
28
29
  import { INFINITY_TIME } from "../tools/INFINITY_TIME";
29
- import { getIsValidRemoteJson } from "../tools/getIsValidRemoteJson";
30
30
  import { prShouldLoadApp } from "./prShouldLoadApp";
31
31
  import { getBASE_URL } from "./BASE_URL";
32
+ import { getIsLikelyDevServer } from "../tools/isLikelyDevServer";
33
+ import { createObjectThatThrowsIfAccessed } from "../tools/createObjectThatThrowsIfAccessed";
32
34
  // NOTE: Replaced at build time
33
- const VERSION = "8.2.0";
35
+ const VERSION = "8.2.1";
34
36
  const globalContext = {
35
37
  prOidcByConfigId: new Map(),
36
38
  hasLogoutBeenCalled: id(false),
@@ -170,71 +172,168 @@ export async function createOidc_nonMemoized(params, preProcessedParams) {
170
172
  homeUrlAndRedirectUri
171
173
  }, null, 2)}`);
172
174
  const stateUrlParamValue_instance = generateStateUrlParamValue();
175
+ const oidcMetadata = __metadata ?? (await fetchOidcMetadata({ issuerUri }));
173
176
  const canUseIframe = (() => {
174
177
  if (noIframe) {
175
178
  return false;
176
179
  }
177
180
  third_party_cookies: {
178
- const isOidcServerThirdPartyRelativeToApp = getHaveSharedParentDomain({
181
+ if (oidcMetadata === undefined) {
182
+ return false;
183
+ }
184
+ const { authorization_endpoint } = oidcMetadata;
185
+ assert(authorization_endpoint !== undefined, "Missing authorization_endpoint on the provided __metadata");
186
+ const isOidcServerThirdPartyRelativeToApp = !getHaveSharedParentDomain({
179
187
  url1: window.location.origin,
180
- url2: issuerUri
181
- }) === false;
188
+ // TODO: No, here we should test against the authorization endpoint!
189
+ url2: authorization_endpoint
190
+ });
182
191
  if (!isOidcServerThirdPartyRelativeToApp) {
183
192
  break third_party_cookies;
184
193
  }
185
- const isGoogleChrome = (() => {
186
- const ua = navigator.userAgent;
187
- const vendor = navigator.vendor;
188
- return (/Chrome/.test(ua) && /Google Inc/.test(vendor) && !/Edg/.test(ua) && !/OPR/.test(ua));
194
+ const isLikelyDevServer = getIsLikelyDevServer();
195
+ const domain_auth = new URL(authorization_endpoint).origin.split("//")[1];
196
+ assert(domain_auth !== undefined, "33921384");
197
+ const domain_here = window.location.origin.split("//")[1];
198
+ let isWellKnownProviderDomain = false;
199
+ let isIp = false;
200
+ const suggestedDeployments = (() => {
201
+ if (/^(?:\d{1,3}\.){3}\d{1,3}$|^\[?[A-Fa-f0-9:]+\]?$/.test(domain_auth)) {
202
+ isIp = true;
203
+ return [];
204
+ }
205
+ const baseDomain = (() => {
206
+ const segments = domain_auth.split(".");
207
+ if (segments.length >= 3) {
208
+ segments.shift();
209
+ }
210
+ return segments.join(".");
211
+ })();
212
+ {
213
+ const baseDomain_low = baseDomain.toLowerCase();
214
+ if (baseDomain_low.includes("auth0") ||
215
+ baseDomain_low.includes("clerk") ||
216
+ baseDomain_low.includes("microsoft") ||
217
+ baseDomain_low.includes("okta") ||
218
+ baseDomain_low.includes("aws")) {
219
+ isWellKnownProviderDomain = true;
220
+ return [];
221
+ }
222
+ }
223
+ const baseUrl = new URL(homeUrlAndRedirectUri).pathname;
224
+ return [
225
+ `myapp.${baseDomain}`,
226
+ baseDomain === domain_auth ? undefined : baseDomain,
227
+ `${baseDomain}/${baseUrl === "/" ? "dashboard" : baseUrl}`
228
+ ].filter(x => x !== undefined);
189
229
  })();
190
- if (window.location.origin.startsWith("http://localhost") && isGoogleChrome) {
191
- break third_party_cookies;
230
+ if (isLikelyDevServer) {
231
+ log?.([
232
+ "Detected localhost environment.",
233
+ "\nWhen reloading while logged in, you may briefly see",
234
+ "some URL params appear in the address bar.",
235
+ "\nThis happens because session restore via iframe is disabled,",
236
+ "the browser treats your auth server as a third party.",
237
+ `\nAuth server: ${domain_auth}`,
238
+ `\nApp domain: ${domain_here}`,
239
+ ...(() => {
240
+ if (isIp) {
241
+ return [];
242
+ }
243
+ if (isWellKnownProviderDomain) {
244
+ return [
245
+ "\nYou seem to be using a well-known auth provider.",
246
+ "Check your provider's docs, some allow configuring",
247
+ `a your custom domain at least for the authorization endpoint.`,
248
+ "\nIf configured, oidc-spa will restore sessions silently",
249
+ "and improve the user experience."
250
+ ];
251
+ }
252
+ return [
253
+ "\nOnce deployed under the same root domain as your auth server,",
254
+ "oidc-spa will use iframes to restore sessions silently.",
255
+ "\nSuggested deployments:",
256
+ ...suggestedDeployments.map(d => `\n • ${d}`)
257
+ ];
258
+ })(),
259
+ "\n\nMore info:",
260
+ "https://docs.oidc-spa.dev/v/v8/resources/end-of-third-party-cookies#when-are-cookies-considered-third-party"
261
+ ].join(" "));
262
+ }
263
+ else {
264
+ log?.([
265
+ "Silent session restore via iframe is disabled.",
266
+ `\nAuth server: ${domain_auth}`,
267
+ `App domain: ${domain_here}`,
268
+ "\nThey do not share a common root domain.",
269
+ ...(() => {
270
+ if (isIp) {
271
+ return [];
272
+ }
273
+ if (isWellKnownProviderDomain) {
274
+ return [
275
+ "\nYou seem to be using a well-known auth provider.",
276
+ "Check if you can configure a custom auth domain.",
277
+ "\nIf so, oidc-spa can restore sessions silently",
278
+ "and improve the user experience."
279
+ ];
280
+ }
281
+ return [
282
+ "\nTo improve the experience, here are some examples of deployment for your app:",
283
+ ...suggestedDeployments.map(d => `\n • ${d}`)
284
+ ];
285
+ })(),
286
+ "\nMore info:",
287
+ "https://docs.oidc-spa.dev/v/v8/resources/end-of-third-party-cookies#when-are-cookies-considered-third-party"
288
+ ].join(" "));
192
289
  }
193
- log?.([
194
- "Can't use iframe because your auth server is on a third party domain relative",
195
- "to the domain of your app and third party cookies are blocked by navigators."
196
- ].join(" "));
197
290
  return false;
198
291
  }
199
- // NOTE: Maybe not, it depend if the app can iframe itself.
200
292
  return true;
201
293
  })();
202
- let isUserStoreInMemoryOnly;
203
- const oidcClientTsUserManager = new OidcClientTsUserManager({
204
- stateUrlParamValue: stateUrlParamValue_instance,
205
- authority: issuerUri,
206
- client_id: clientId,
207
- redirect_uri: homeUrlAndRedirectUri,
208
- silent_redirect_uri: homeUrlAndRedirectUri,
209
- post_logout_redirect_uri: homeUrlAndRedirectUri,
210
- response_mode: isKeycloak({ issuerUri }) ? "fragment" : "query",
211
- response_type: "code",
212
- scope: Array.from(new Set(["openid", ...scopes])).join(" "),
213
- automaticSilentRenew: false,
214
- userStore: new WebStorageStateStore({
215
- store: (() => {
216
- if (canUseIframe) {
217
- isUserStoreInMemoryOnly = true;
218
- return new InMemoryWebStorage();
219
- }
220
- isUserStoreInMemoryOnly = false;
221
- const storage = createEphemeralSessionStorage({
222
- sessionStorageTtlMs: 3 * 60000
223
- });
224
- const { evtRequestToPersistTokens } = globalContext;
225
- evtRequestToPersistTokens.subscribe(({ configIdOfInstancePostingTheRequest }) => {
226
- if (configIdOfInstancePostingTheRequest === configId) {
227
- return;
294
+ let isUserStoreInMemoryOnly = undefined;
295
+ const oidcClientTsUserManager = oidcMetadata === undefined
296
+ ? createObjectThatThrowsIfAccessed({
297
+ debugMessage: "oidc-spa: Wrong assertion 43943"
298
+ })
299
+ : new OidcClientTsUserManager({
300
+ stateUrlParamValue: stateUrlParamValue_instance,
301
+ authority: issuerUri,
302
+ client_id: clientId,
303
+ redirect_uri: homeUrlAndRedirectUri,
304
+ silent_redirect_uri: homeUrlAndRedirectUri,
305
+ post_logout_redirect_uri: homeUrlAndRedirectUri,
306
+ response_mode: isKeycloak({ issuerUri }) ? "fragment" : "query",
307
+ response_type: "code",
308
+ scope: Array.from(new Set(["openid", ...scopes])).join(" "),
309
+ automaticSilentRenew: false,
310
+ userStore: new WebStorageStateStore({
311
+ store: (() => {
312
+ if (canUseIframe) {
313
+ isUserStoreInMemoryOnly = true;
314
+ return new InMemoryWebStorage();
228
315
  }
229
- storage.persistCurrentStateAndSubsequentChanges();
230
- });
231
- return storage;
232
- })()
233
- }),
234
- stateStore: new WebStorageStateStore({ store: localStorage, prefix: STATE_STORE_KEY_PREFIX }),
235
- client_secret: __unsafe_clientSecret,
236
- metadata: __metadata
237
- });
316
+ isUserStoreInMemoryOnly = false;
317
+ const storage = createEphemeralSessionStorage({
318
+ sessionStorageTtlMs: 3 * 60000
319
+ });
320
+ const { evtRequestToPersistTokens } = globalContext;
321
+ evtRequestToPersistTokens.subscribe(({ configIdOfInstancePostingTheRequest }) => {
322
+ if (configIdOfInstancePostingTheRequest === configId) {
323
+ return;
324
+ }
325
+ storage.persistCurrentStateAndSubsequentChanges();
326
+ });
327
+ return storage;
328
+ })()
329
+ }),
330
+ stateStore: new WebStorageStateStore({
331
+ store: localStorage,
332
+ prefix: STATE_STORE_KEY_PREFIX
333
+ }),
334
+ client_secret: __unsafe_clientSecret,
335
+ metadata: oidcMetadata
336
+ });
238
337
  const evtInitializationOutcomeUserNotLoggedIn = createEvt();
239
338
  const { loginOrGoToAuthServer } = createLoginOrGoToAuthServer({
240
339
  configId,
@@ -252,6 +351,11 @@ export async function createOidc_nonMemoized(params, preProcessedParams) {
252
351
  });
253
352
  const { completeLoginOrRefreshProcess } = await startLoginOrRefreshProcess();
254
353
  const resultOfLoginProcess = await (async () => {
354
+ if (oidcMetadata === undefined) {
355
+ return (await import("./diagnostic")).createWellKnownOidcConfigurationEndpointUnreachableInitializationError({
356
+ issuerUri
357
+ });
358
+ }
255
359
  handle_redirect_auth_response: {
256
360
  let stateDataAndAuthResponse = undefined;
257
361
  get_stateData_and_authResponse: {
@@ -381,6 +485,7 @@ export async function createOidc_nonMemoized(params, preProcessedParams) {
381
485
  // NOTE: We almost never persist tokens, we have to only to support edge case
382
486
  // of multiple oidc instance in a single App with no iframe support.
383
487
  restore_from_session_storage: {
488
+ assert(isUserStoreInMemoryOnly !== undefined, "3392204");
384
489
  if (isUserStoreInMemoryOnly) {
385
490
  break restore_from_session_storage;
386
491
  }
@@ -438,11 +543,6 @@ export async function createOidc_nonMemoized(params, preProcessedParams) {
438
543
  break actual_silent_signin;
439
544
  }
440
545
  if (!canUseIframe) {
441
- if (!(await getIsValidRemoteJson(`${issuerUri}${id("/.well-known/openid-configuration")}`))) {
442
- return (await import("./diagnostic")).createWellKnownOidcConfigurationEndpointUnreachableInitializationError({
443
- issuerUri
444
- });
445
- }
446
546
  break actual_silent_signin;
447
547
  }
448
548
  log?.("Trying to restore the auth from the http only cookie (silent signin with iframe)");
@@ -457,21 +557,13 @@ export async function createOidc_nonMemoized(params, preProcessedParams) {
457
557
  log
458
558
  });
459
559
  assert(result_loginSilent.outcome !== "token refreshed using refresh token", "876995");
460
- if (result_loginSilent.outcome === "failure") {
461
- switch (result_loginSilent.cause) {
462
- case "can't reach well-known oidc endpoint":
463
- return (await import("./diagnostic")).createWellKnownOidcConfigurationEndpointUnreachableInitializationError({
464
- issuerUri
465
- });
466
- case "timeout":
467
- return (await import("./diagnostic")).createIframeTimeoutInitializationError({
468
- redirectUri: homeUrlAndRedirectUri,
469
- clientId,
470
- issuerUri,
471
- noIframe
472
- });
473
- }
474
- assert(false);
560
+ if (result_loginSilent.outcome === "timeout") {
561
+ return (await import("./diagnostic")).createIframeTimeoutInitializationError({
562
+ redirectUri: homeUrlAndRedirectUri,
563
+ clientId,
564
+ issuerUri,
565
+ noIframe
566
+ });
475
567
  }
476
568
  assert();
477
569
  const { authResponse } = result_loginSilent;
@@ -515,8 +607,7 @@ export async function createOidc_nonMemoized(params, preProcessedParams) {
515
607
  configIdOfInstancePostingTheRequest: configId
516
608
  });
517
609
  }
518
- const dCantFetchWellKnownEndpointOrNever = new Deferred();
519
- loginOrGoToAuthServer({
610
+ await loginOrGoToAuthServer({
520
611
  action: "login",
521
612
  doForceReloadOnBfCache: true,
522
613
  redirectUrl: getRootRelativeOriginalLocationHref(),
@@ -533,15 +624,7 @@ export async function createOidc_nonMemoized(params, preProcessedParams) {
533
624
  return "directly redirect if active session show login otherwise";
534
625
  }
535
626
  return "ensure no interaction";
536
- })(),
537
- onCantFetchWellKnownEndpointError: () => {
538
- dCantFetchWellKnownEndpointOrNever.resolve();
539
- }
540
- });
541
- await dCantFetchWellKnownEndpointOrNever.pr;
542
- return (await import("./diagnostic")).createFailedToFetchTokenEndpointInitializationError({
543
- clientId,
544
- issuerUri
627
+ })()
545
628
  });
546
629
  }
547
630
  if (authResponse_error !== undefined) {
@@ -628,11 +711,7 @@ export async function createOidc_nonMemoized(params, preProcessedParams) {
628
711
  transformUrlBeforeRedirect_local: transformUrlBeforeRedirect,
629
712
  interaction: getPersistedAuthState({ configId }) === "explicitly logged out"
630
713
  ? "ensure interaction"
631
- : "directly redirect if active session show login otherwise",
632
- onCantFetchWellKnownEndpointError: () => {
633
- log?.("Login called but the auth server seems to be down..");
634
- alert("Authentication unavailable please try again later.");
635
- }
714
+ : "directly redirect if active session show login otherwise"
636
715
  });
637
716
  },
638
717
  initializationError: undefined
@@ -816,14 +895,7 @@ export async function createOidc_nonMemoized(params, preProcessedParams) {
816
895
  extraQueryParams_local: undefined,
817
896
  transformUrlBeforeRedirect_local: undefined,
818
897
  doNavigateBackToLastPublicUrlIfTheTheUserNavigateBack: false,
819
- interaction: "directly redirect if active session show login otherwise",
820
- onCantFetchWellKnownEndpointError: () => {
821
- log?.([
822
- "The auth server seems to be down while we needed to refresh the token",
823
- "with a full page redirect. Reloading the page"
824
- ].join(" "));
825
- window.location.reload();
826
- }
898
+ interaction: "directly redirect if active session show login otherwise"
827
899
  });
828
900
  assert(false, "136134");
829
901
  };
@@ -849,9 +921,9 @@ export async function createOidc_nonMemoized(params, preProcessedParams) {
849
921
  autoLogin,
850
922
  log
851
923
  });
852
- if (result_loginSilent.outcome === "failure") {
924
+ if (result_loginSilent.outcome === "timeout") {
853
925
  log?.([
854
- `Silent refresh of the token failed with ${result_loginSilent.cause}.`,
926
+ `Silent refresh of the token failed the iframe didn't post a response (timeout).`,
855
927
  `This isn't recoverable, reloading the page.`
856
928
  ].join(" "));
857
929
  window.location.reload();
@@ -989,11 +1061,7 @@ export async function createOidc_nonMemoized(params, preProcessedParams) {
989
1061
  action: "go to auth server",
990
1062
  redirectUrl: redirectUrl ?? window.location.href,
991
1063
  extraQueryParams_local: extraQueryParams,
992
- transformUrlBeforeRedirect_local: transformUrlBeforeRedirect,
993
- onCantFetchWellKnownEndpointError: () => {
994
- log?.("goToAuthServer called but the auth server seems to be down..");
995
- alert("Authentication unavailable please try again later.");
996
- }
1064
+ transformUrlBeforeRedirect_local: transformUrlBeforeRedirect
997
1065
  }),
998
1066
  backFromAuthServer: resultOfLoginProcess.backFromAuthServer,
999
1067
  isNewBrowserSession: (() => {
@@ -1 +1 @@
1
- {"version":3,"file":"createOidc.js","sourceRoot":"","sources":["../../src/core/createOidc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"createOidc.js","sourceRoot":"","sources":["../../src/core/createOidc.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,4 @@
1
1
  import { OidcInitializationError } from "./OidcInitializationError";
2
- export declare const WELL_KNOWN_PATH = "/.well-known/openid-configuration";
3
2
  export declare function createWellKnownOidcConfigurationEndpointUnreachableInitializationError(params: {
4
3
  issuerUri: string;
5
4
  }): Promise<OidcInitializationError>;
@@ -1,7 +1,7 @@
1
1
  import { OidcInitializationError } from "./OidcInitializationError";
2
2
  import { isKeycloak, createKeycloakUtils } from "../keycloak";
3
3
  import { getIsValidRemoteJson } from "../tools/getIsValidRemoteJson";
4
- export const WELL_KNOWN_PATH = "/.well-known/openid-configuration";
4
+ import { WELL_KNOWN_PATH } from "./OidcMetadata";
5
5
  export async function createWellKnownOidcConfigurationEndpointUnreachableInitializationError(params) {
6
6
  const { issuerUri } = params;
7
7
  const commonFallbackMessagePart = [
@@ -70,6 +70,13 @@ export async function createWellKnownOidcConfigurationEndpointUnreachableInitial
70
70
  }
71
71
  export async function createIframeTimeoutInitializationError(params) {
72
72
  const { redirectUri, issuerUri, clientId, noIframe } = params;
73
+ check_if_well_known_endpoint_is_reachable: {
74
+ const isValid = await getIsValidRemoteJson(`${issuerUri}${WELL_KNOWN_PATH}`);
75
+ if (isValid) {
76
+ break check_if_well_known_endpoint_is_reachable;
77
+ }
78
+ return createWellKnownOidcConfigurationEndpointUnreachableInitializationError({ issuerUri });
79
+ }
73
80
  iframe_blocked: {
74
81
  if (noIframe) {
75
82
  break iframe_blocked;
@@ -176,6 +183,13 @@ export async function createIframeTimeoutInitializationError(params) {
176
183
  }
177
184
  export async function createFailedToFetchTokenEndpointInitializationError(params) {
178
185
  const { issuerUri, clientId } = params;
186
+ check_if_well_known_endpoint_is_reachable: {
187
+ const isValid = await getIsValidRemoteJson(`${issuerUri}${WELL_KNOWN_PATH}`);
188
+ if (isValid) {
189
+ break check_if_well_known_endpoint_is_reachable;
190
+ }
191
+ return createWellKnownOidcConfigurationEndpointUnreachableInitializationError({ issuerUri });
192
+ }
179
193
  return new OidcInitializationError({
180
194
  isAuthServerLikelyDown: false,
181
195
  messageOrCause: [
@@ -1 +1 @@
1
- {"version":3,"file":"diagnostic.js","sourceRoot":"","sources":["../../src/core/diagnostic.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"diagnostic.js","sourceRoot":"","sources":["../../src/core/diagnostic.ts"],"names":[],"mappings":"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"}