oidc-spa 8.1.15 → 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 (151) hide show
  1. package/core/BASE_URL.d.ts +4 -0
  2. package/core/BASE_URL.js +12 -0
  3. package/core/BASE_URL.js.map +1 -0
  4. package/core/OidcMetadata.d.ts +5 -0
  5. package/core/OidcMetadata.js +56 -0
  6. package/core/OidcMetadata.js.map +1 -1
  7. package/core/createOidc.d.ts +15 -8
  8. package/core/createOidc.js +207 -104
  9. package/core/createOidc.js.map +1 -1
  10. package/core/diagnostic.d.ts +0 -1
  11. package/core/diagnostic.js +18 -5
  12. package/core/diagnostic.js.map +1 -1
  13. package/core/earlyInit.d.ts +1 -0
  14. package/core/earlyInit.js +8 -8
  15. package/core/earlyInit.js.map +1 -1
  16. package/core/loginOrGoToAuthServer.d.ts +0 -1
  17. package/core/loginOrGoToAuthServer.js +1 -16
  18. package/core/loginOrGoToAuthServer.js.map +1 -1
  19. package/core/loginSilent.d.ts +1 -2
  20. package/core/loginSilent.js +3 -21
  21. package/core/loginSilent.js.map +1 -1
  22. package/core/prShouldLoadApp.d.ts +4 -0
  23. package/core/prShouldLoadApp.js +13 -0
  24. package/core/prShouldLoadApp.js.map +1 -0
  25. package/esm/core/BASE_URL.d.ts +4 -0
  26. package/esm/core/BASE_URL.js +8 -0
  27. package/esm/core/BASE_URL.js.map +1 -0
  28. package/esm/core/OidcMetadata.d.ts +5 -0
  29. package/esm/core/OidcMetadata.js +54 -0
  30. package/esm/core/OidcMetadata.js.map +1 -1
  31. package/esm/core/createOidc.d.ts +15 -8
  32. package/esm/core/createOidc.js +207 -104
  33. package/esm/core/createOidc.js.map +1 -1
  34. package/esm/core/diagnostic.d.ts +0 -1
  35. package/esm/core/diagnostic.js +15 -1
  36. package/esm/core/diagnostic.js.map +1 -1
  37. package/esm/core/earlyInit.d.ts +1 -0
  38. package/esm/core/earlyInit.js +8 -8
  39. package/esm/core/earlyInit.js.map +1 -1
  40. package/esm/core/loginOrGoToAuthServer.d.ts +0 -1
  41. package/esm/core/loginOrGoToAuthServer.js +1 -16
  42. package/esm/core/loginOrGoToAuthServer.js.map +1 -1
  43. package/esm/core/loginSilent.d.ts +1 -2
  44. package/esm/core/loginSilent.js +3 -21
  45. package/esm/core/loginSilent.js.map +1 -1
  46. package/esm/core/prShouldLoadApp.d.ts +4 -0
  47. package/esm/core/prShouldLoadApp.js +9 -0
  48. package/esm/core/prShouldLoadApp.js.map +1 -0
  49. package/esm/keycloak/keycloak-js/Keycloak.d.ts +1 -1
  50. package/esm/keycloak/keycloak-js/Keycloak.js +1 -1
  51. package/esm/keycloak/keycloak-js/Keycloak.js.map +1 -1
  52. package/esm/keycloak/keycloakIssuerUriParsed.js +8 -1
  53. package/esm/keycloak/keycloakIssuerUriParsed.js.map +1 -1
  54. package/esm/mock/oidc.d.ts +3 -1
  55. package/esm/mock/oidc.js +4 -2
  56. package/esm/mock/oidc.js.map +1 -1
  57. package/esm/react-spa/apiBuilder.d.ts +12 -0
  58. package/esm/react-spa/apiBuilder.js +26 -0
  59. package/esm/react-spa/apiBuilder.js.map +1 -0
  60. package/esm/react-spa/createOidcSpaApi.d.ts +8 -0
  61. package/esm/react-spa/createOidcSpaApi.js +387 -0
  62. package/esm/react-spa/createOidcSpaApi.js.map +1 -0
  63. package/esm/react-spa/index.d.ts +2 -0
  64. package/esm/react-spa/index.js +3 -0
  65. package/esm/react-spa/index.js.map +1 -0
  66. package/esm/react-spa/types.d.ts +279 -0
  67. package/esm/react-spa/types.js +2 -0
  68. package/esm/react-spa/types.js.map +1 -0
  69. package/esm/tanstack-start/react/apiBuilder.js.map +1 -1
  70. package/esm/tanstack-start/react/createOidcSpaApi.js +13 -9
  71. package/esm/tanstack-start/react/createOidcSpaApi.js.map +1 -1
  72. package/esm/tanstack-start/react/types.d.ts +5 -4
  73. package/esm/tools/isLikelyDevServer.d.ts +1 -0
  74. package/esm/tools/isLikelyDevServer.js +14 -0
  75. package/esm/tools/isLikelyDevServer.js.map +1 -0
  76. package/keycloak/keycloak-js/Keycloak.d.ts +1 -1
  77. package/keycloak/keycloak-js/Keycloak.js +1 -1
  78. package/keycloak/keycloak-js/Keycloak.js.map +1 -1
  79. package/keycloak/keycloakIssuerUriParsed.js +8 -1
  80. package/keycloak/keycloakIssuerUriParsed.js.map +1 -1
  81. package/mock/oidc.d.ts +3 -1
  82. package/mock/oidc.js +4 -2
  83. package/mock/oidc.js.map +1 -1
  84. package/package.json +5 -1
  85. package/react-spa/apiBuilder.d.ts +12 -0
  86. package/react-spa/apiBuilder.js +29 -0
  87. package/react-spa/apiBuilder.js.map +1 -0
  88. package/react-spa/createOidcSpaApi.d.ts +8 -0
  89. package/react-spa/createOidcSpaApi.js +423 -0
  90. package/react-spa/createOidcSpaApi.js.map +1 -0
  91. package/react-spa/index.d.ts +2 -0
  92. package/react-spa/index.js +6 -0
  93. package/react-spa/index.js.map +1 -0
  94. package/react-spa/types.d.ts +279 -0
  95. package/react-spa/types.js +3 -0
  96. package/react-spa/types.js.map +1 -0
  97. package/src/angular.ts +1 -1
  98. package/src/core/BASE_URL.ts +9 -0
  99. package/src/core/OidcMetadata.ts +75 -0
  100. package/src/core/createOidc.ts +273 -147
  101. package/src/core/diagnostic.ts +21 -2
  102. package/src/core/earlyInit.ts +14 -11
  103. package/src/core/loginOrGoToAuthServer.ts +0 -22
  104. package/src/core/loginSilent.ts +4 -27
  105. package/src/core/prShouldLoadApp.ts +11 -0
  106. package/src/keycloak/keycloak-js/Keycloak.ts +2 -2
  107. package/src/keycloak/keycloakIssuerUriParsed.ts +10 -1
  108. package/src/mock/oidc.ts +9 -3
  109. package/src/react-spa/apiBuilder.ts +70 -0
  110. package/src/react-spa/createOidcSpaApi.tsx +527 -0
  111. package/src/react-spa/index.ts +4 -0
  112. package/src/react-spa/types.tsx +308 -0
  113. package/src/tanstack-start/react/apiBuilder.ts +0 -1
  114. package/src/tanstack-start/react/createOidcSpaApi.tsx +24 -20
  115. package/src/tanstack-start/react/types.tsx +3 -4
  116. package/src/tools/isLikelyDevServer.ts +17 -0
  117. package/src/vite-plugin/handleClientEntrypoint.ts +5 -5
  118. package/src/vite-plugin/manageOptimizedDeps.ts +64 -0
  119. package/src/vite-plugin/projectType.ts +18 -0
  120. package/src/vite-plugin/vite-plugin.ts +40 -10
  121. package/tools/isLikelyDevServer.d.ts +1 -0
  122. package/tools/isLikelyDevServer.js +17 -0
  123. package/tools/isLikelyDevServer.js.map +1 -0
  124. package/vite-plugin/handleClientEntrypoint.d.ts +2 -0
  125. package/vite-plugin/handleClientEntrypoint.js +3 -4
  126. package/vite-plugin/handleClientEntrypoint.js.map +1 -1
  127. package/vite-plugin/manageOptimizedDeps.d.ts +6 -0
  128. package/vite-plugin/{excludeModuleExportFromOptimizedDeps.js → manageOptimizedDeps.js} +42 -7
  129. package/vite-plugin/manageOptimizedDeps.js.map +1 -0
  130. package/vite-plugin/projectType.d.ts +4 -0
  131. package/vite-plugin/projectType.js +15 -0
  132. package/vite-plugin/projectType.js.map +1 -0
  133. package/vite-plugin/{transformCreateFileRoute.js → transformTanstackRouterCreateFileRoute.js} +1 -1
  134. package/vite-plugin/transformTanstackRouterCreateFileRoute.js.map +1 -0
  135. package/vite-plugin/vite-plugin.d.ts +1 -1
  136. package/vite-plugin/vite-plugin.js +28 -8
  137. package/vite-plugin/vite-plugin.js.map +1 -1
  138. package/esm/tools/infer_import_meta_env_BASE_URL.d.ts +0 -1
  139. package/esm/tools/infer_import_meta_env_BASE_URL.js +0 -15
  140. package/esm/tools/infer_import_meta_env_BASE_URL.js.map +0 -1
  141. package/src/tools/infer_import_meta_env_BASE_URL.ts +0 -19
  142. package/src/vite-plugin/detectProjectType.ts +0 -20
  143. package/src/vite-plugin/excludeModuleExportFromOptimizedDeps.ts +0 -20
  144. package/vite-plugin/detectProjectType.d.ts +0 -10
  145. package/vite-plugin/detectProjectType.js +0 -15
  146. package/vite-plugin/detectProjectType.js.map +0 -1
  147. package/vite-plugin/excludeModuleExportFromOptimizedDeps.d.ts +0 -4
  148. package/vite-plugin/excludeModuleExportFromOptimizedDeps.js.map +0 -1
  149. package/vite-plugin/transformCreateFileRoute.js.map +0 -1
  150. /package/src/vite-plugin/{transformCreateFileRoute.ts → transformTanstackRouterCreateFileRoute.ts} +0 -0
  151. /package/vite-plugin/{transformCreateFileRoute.d.ts → transformTanstackRouterCreateFileRoute.d.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"keycloakIssuerUriParsed.js","sourceRoot":"","sources":["../src/keycloak/keycloakIssuerUriParsed.ts"],"names":[],"mappings":";;AAUA,wDAkBC;AA5BD,kDAA+C;AAC/C,6CAA0C;AAS1C,SAAgB,sBAAsB,CAAC,MAA6B;IAChE,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC;IAE7B,IAAA,eAAM,EAAC,IAAA,uBAAU,EAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;IAElC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;IAElD,MAAM,KAAK,GAAG,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAE7C,IAAA,eAAM,EAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;IAE3B,MAAM,CAAC,kBAAkB,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC;IAE1C,OAAO;QACH,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,KAAK;QACL,kBAAkB,EAAE,kBAAkB,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,kBAAkB;KACjF,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"keycloakIssuerUriParsed.js","sourceRoot":"","sources":["../src/keycloak/keycloakIssuerUriParsed.ts"],"names":[],"mappings":";;AAUA,wDA2BC;AArCD,kDAA+C;AAC/C,6CAA0C;AAS1C,SAAgB,sBAAsB,CAAC,MAA6B;IAChE,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC;IAE7B,IAAI,CAAC,IAAA,uBAAU,EAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CACX;YACI,qCAAqC,SAAS,EAAE;YAChD,6DAA6D;YAC7D,qEAAqE;YACrE,sDAAsD;SACzD,CAAC,IAAI,CAAC,GAAG,CAAC,CACd,CAAC;IACN,CAAC;IAED,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;IAElD,MAAM,KAAK,GAAG,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAE7C,IAAA,eAAM,EAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;IAE3B,MAAM,CAAC,kBAAkB,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC;IAE1C,OAAO;QACH,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,KAAK;QACL,kBAAkB,EAAE,kBAAkB,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,kBAAkB;KACjF,CAAC;AACN,CAAC"}
package/mock/oidc.d.ts CHANGED
@@ -8,7 +8,9 @@ export type ParamsOfCreateMockOidc<DecodedIdToken extends Record<string, unknown
8
8
  * In the majority of cases it should be `homeUrl: "/"` but it could aso be something like `homeUrl: "/dashboard"`
9
9
  * if your web app isn't hosted at the root of the domain.
10
10
  */
11
- homeUrl: string;
11
+ BASE_URL?: string;
12
+ /** @deprecated: Use BASE_URL (same thing, just renamed). */
13
+ homeUrl?: string;
12
14
  autoLogin?: AutoLogin;
13
15
  postLoginRedirectUrl?: string;
14
16
  } & (AutoLogin extends true ? {
package/mock/oidc.js CHANGED
@@ -7,10 +7,12 @@ const toFullyQualifiedUrl_1 = require("../tools/toFullyQualifiedUrl");
7
7
  const urlSearchParams_1 = require("../tools/urlSearchParams");
8
8
  const earlyInit_1 = require("../core/earlyInit");
9
9
  const INFINITY_TIME_1 = require("../tools/INFINITY_TIME");
10
+ const BASE_URL_1 = require("../core/BASE_URL");
10
11
  const URL_SEARCH_PARAM_NAME = "isUserLoggedIn";
11
12
  const locationHref_moduleEvalTime = location.href;
12
13
  async function createMockOidc(params) {
13
- const { isUserInitiallyLoggedIn = true, mockedParams = {}, mockedTokens = {}, homeUrl: homeUrl_params, autoLogin = false, postLoginRedirectUrl } = params;
14
+ const { isUserInitiallyLoggedIn = true, mockedParams = {}, mockedTokens = {}, autoLogin = false, postLoginRedirectUrl } = params;
15
+ const BASE_URL_params = params.BASE_URL ?? params.homeUrl;
14
16
  const isUserLoggedIn = (() => {
15
17
  const { wasPresent, value } = (0, urlSearchParams_1.getSearchParam)({
16
18
  url: (0, toFullyQualifiedUrl_1.toFullyQualifiedUrl)({
@@ -42,7 +44,7 @@ async function createMockOidc(params) {
42
44
  return value === "true";
43
45
  })();
44
46
  const homeUrl = (0, toFullyQualifiedUrl_1.toFullyQualifiedUrl)({
45
- urlish: homeUrl_params,
47
+ urlish: BASE_URL_params ?? (0, BASE_URL_1.getBASE_URL)() ?? "/",
46
48
  doAssertNoQueryParams: true,
47
49
  doOutputWithTrailingSlash: true
48
50
  });
package/mock/oidc.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"oidc.js","sourceRoot":"","sources":["../src/mock/oidc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oidc.js","sourceRoot":"","sources":["../src/mock/oidc.ts"],"names":[],"mappings":";;AAsCA,wCA+LC;AApOD,gGAA6F;AAC7F,0CAAuC;AACvC,sEAAmE;AACnE,8DAAkF;AAClF,iDAAwE;AACxE,0DAAuD;AACvD,+CAA+C;AA2B/C,MAAM,qBAAqB,GAAG,gBAAgB,CAAC;AAE/C,MAAM,2BAA2B,GAAG,QAAQ,CAAC,IAAI,CAAC;AAE3C,KAAK,UAAU,cAAc,CAIhC,MAAyD;IAEzD,MAAM,EACF,uBAAuB,GAAG,IAAI,EAC9B,YAAY,GAAG,EAAE,EACjB,YAAY,GAAG,EAAE,EACjB,SAAS,GAAG,KAAK,EACjB,oBAAoB,EACvB,GAAG,MAAM,CAAC;IAEX,MAAM,eAAe,GAAG,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,OAAO,CAAC;IAE1D,MAAM,cAAc,GAAG,CAAC,GAAG,EAAE;QACzB,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG,IAAA,gCAAc,EAAC;YACzC,GAAG,EAAE,IAAA,yCAAmB,EAAC;gBACrB,MAAM,EAAE,CAAC,GAAG,EAAE;oBACV,IAAI,CAAC;wBACD,OAAO,IAAA,+CAAmC,GAAE,CAAC;oBACjD,CAAC;oBAAC,MAAM,CAAC;wBACL,OAAO,2BAA2B,CAAC;oBACvC,CAAC;gBACL,CAAC,CAAC,EAAE;gBACJ,qBAAqB,EAAE,KAAK;aAC/B,CAAC;YACF,IAAI,EAAE,qBAAqB;SAC9B,CAAC,CAAC;QAEH,IAAI,CAAC,UAAU,EAAE,CAAC;YACd,OAAO,uBAAuB,CAAC;QACnC,CAAC;QAED,eAAe,EAAE,CAAC;YACd,MAAM,EAAE,UAAU,EAAE,mBAAmB,EAAE,GAAG,IAAA,gCAAc,EAAC;gBACvD,GAAG,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI;gBACzB,IAAI,EAAE,qBAAqB;aAC9B,CAAC,CAAC;YAEH,IAAI,CAAC,UAAU,EAAE,CAAC;gBACd,MAAM,eAAe,CAAC;YAC1B,CAAC;YAED,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,EAAE,mBAAmB,CAAC,CAAC;QAC7D,CAAC;QAED,OAAO,KAAK,KAAK,MAAM,CAAC;IAC5B,CAAC,CAAC,EAAE,CAAC;IAEL,MAAM,OAAO,GAAG,IAAA,yCAAmB,EAAC;QAChC,MAAM,EAAE,eAAe,IAAI,IAAA,sBAAW,GAAE,IAAI,GAAG;QAC/C,qBAAqB,EAAE,IAAI;QAC3B,yBAAyB,EAAE,IAAI;KAClC,CAAC,CAAC;IAEH,MAAM,MAAM,GAAgB;QACxB,MAAM,EAAE;YACJ,QAAQ,EAAE,YAAY,CAAC,QAAQ,IAAI,cAAc;YACjD,SAAS,EAAE,YAAY,CAAC,SAAS,IAAI,oDAAoD;SAC5F;KACJ,CAAC;IAEF,MAAM,qBAAqB,GAAG,KAAK,EAAE,MAEpC,EAAkB,EAAE;QACjB,MAAM,EAAE,WAAW,EAAE,kBAAkB,EAAE,GAAG,MAAM,CAAC;QAEnD,MAAM,WAAW,GAAG,IAAA,wCAAsB,EAAC;YACvC,GAAG,EAAE,CAAC,GAAG,EAAE;gBACP,IAAI,kBAAkB,KAAK,SAAS,EAAE,CAAC;oBACnC,OAAO,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAChC,CAAC;gBAED,OAAO,IAAA,yCAAmB,EAAC;oBACvB,MAAM,EAAE,kBAAkB;oBAC1B,qBAAqB,EAAE,KAAK;iBAC/B,CAAC,CAAC;YACP,CAAC,CAAC,EAAE;YACJ,IAAI,EAAE,qBAAqB;YAC3B,KAAK,EAAE,MAAM;YACb,YAAY,EAAE,UAAU;SAC3B,CAAC,CAAC;QAEH,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,WAAW,CAAC;QAEnC,OAAO,IAAI,OAAO,CAAQ,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IACxC,CAAC,CAAC;IAEF,IAAI,CAAC,cAAc,EAAE,CAAC;QAClB,MAAM,IAAI,GAAG,IAAA,OAAE,EAAmB;YAC9B,GAAG,MAAM;YACT,cAAc,EAAE,KAAK;YACrB,KAAK,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,qBAAqB,CAAC,EAAE,WAAW,EAAE,CAAC;YAClE,mBAAmB,EAAE,SAAS;SACjC,CAAC,CAAC;QACH,IAAI,SAAS,EAAE,CAAC;YACZ,MAAM,IAAI,CAAC,KAAK,CAAC;gBACb,WAAW,EAAE,oBAAoB;gBACjC,2BAA2B,EAAE,IAAI;aACpC,CAAC,CAAC;YACH,aAAa;QACjB,CAAC;QACD,8CAA8C;QAC9C,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,MAAM,IAAI,GAAkC;QACxC,GAAG,MAAM;QACT,cAAc,EAAE,IAAI;QACpB,WAAW,EAAE,KAAK,IAAI,EAAE,GAAE,CAAC;QAC3B,GAAG,CAAC,GAAG,EAAE;YACL,MAAM,aAAa,GAAuC;gBACtD,WAAW,EAAE,YAAY,CAAC,WAAW,IAAI,qBAAqB;gBAC9D,yBAAyB,EAAE,YAAY,CAAC,yBAAyB,IAAI,6BAAa;gBAClF,OAAO,EAAE,YAAY,CAAC,OAAO,IAAI,iBAAiB;gBAClD,cAAc,EACV,YAAY,CAAC,cAAc;oBAC3B,IAAA,mEAAgC,EAAiB;wBAC7C,YAAY,EAAE;4BACV,8CAA8C;4BAC9C,yCAAyC;yBAC5C,CAAC,IAAI,CAAC,IAAI,CAAC;qBACf,CAAC;gBACN,uBAAuB,EACnB,YAAY,CAAC,uBAAuB;oBACpC,IAAA,mEAAgC,EAA0C;wBACtE,YAAY,EAAE;4BACV,uDAAuD;4BACvD,yCAAyC;yBAC5C,CAAC,IAAI,CAAC,IAAI,CAAC;qBACf,CAAC;gBACN,YAAY,EAAE,IAAI,CAAC,GAAG,EAAE;gBACxB,gBAAgB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;aACrC,CAAC;YAEF,MAAM,MAAM,GACR,YAAY,CAAC,YAAY,KAAK,SAAS,IAAI,YAAY,CAAC,eAAe,KAAK,IAAI;gBAC5E,CAAC,CAAC,IAAA,OAAE,EAA+C;oBAC7C,GAAG,aAAa;oBAChB,eAAe,EAAE,IAAI;oBACrB,YAAY,EAAE,YAAY,CAAC,YAAY,IAAI,sBAAsB;oBACjE,0BAA0B,EAAE,YAAY,CAAC,0BAA0B;iBACtE,CAAC;gBACJ,CAAC,CAAC,IAAA,OAAE,EAAkD;oBAChD,GAAG,aAAa;oBAChB,eAAe,EAAE,KAAK;iBACzB,CAAC,CAAC;YAEb,OAAO;gBACH,SAAS,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC;gBACxC,iBAAiB,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,cAAc;aACxD,CAAC;QACN,CAAC,CAAC,EAAE;QACJ,uBAAuB,EAAE,GAAG,EAAE,CAAC,CAAC;YAC5B,WAAW,EAAE,GAAG,EAAE,GAAE,CAAC;SACxB,CAAC;QACF,MAAM,EAAE,MAAM,CAAC,EAAE;YACb,MAAM,WAAW,GAAG,IAAA,wCAAsB,EAAC;gBACvC,GAAG,EAAE,CAAC,GAAG,EAAE;oBACP,QAAQ,MAAM,CAAC,UAAU,EAAE,CAAC;wBACxB,KAAK,cAAc;4BACf,OAAO,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;wBAChC,KAAK,MAAM;4BACP,OAAO,OAAO,CAAC;wBACnB,KAAK,cAAc;4BACf,OAAO,IAAA,yCAAmB,EAAC;gCACvB,MAAM,EAAE,MAAM,CAAC,GAAG;gCAClB,qBAAqB,EAAE,KAAK;6BAC/B,CAAC,CAAC;oBACX,CAAC;gBACL,CAAC,CAAC,EAAE;gBACJ,IAAI,EAAE,qBAAqB;gBAC3B,KAAK,EAAE,OAAO;gBACd,YAAY,EAAE,UAAU;aAC3B,CAAC,CAAC;YAEH,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,WAAW,CAAC;YAEnC,OAAO,IAAI,OAAO,CAAQ,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACxC,CAAC;QACD,8BAA8B,EAAE,GAAG,EAAE,CAAC,CAAC;YACnC,kCAAkC,EAAE,GAAG,EAAE,GAAE,CAAC;SAC/C,CAAC;QACF,cAAc,EAAE,KAAK,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,qBAAqB,CAAC,EAAE,WAAW,EAAE,CAAC;QACjF,mBAAmB,EAAE,KAAK;QAC1B,kBAAkB,EAAE,SAAS;KAChC,CAAC;IAEF,OAAO,IAAI,CAAC;AAChB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "oidc-spa",
3
- "version": "8.1.15",
3
+ "version": "8.2.1",
4
4
  "description": "Openidconnect client for Single Page Applications",
5
5
  "repository": {
6
6
  "type": "git",
@@ -87,6 +87,10 @@
87
87
  "types": "./vite-plugin/index.d.ts",
88
88
  "default": "./vite-plugin/index.js"
89
89
  },
90
+ "./react-spa": {
91
+ "module": "./esm/react-spa/index.js",
92
+ "default": "./react-spa/index.js"
93
+ },
90
94
  "./react-tanstack-start": {
91
95
  "module": "./esm/tanstack-start/react/index.js",
92
96
  "types": "./esm/tanstack-start/react/index.d.ts",
@@ -0,0 +1,12 @@
1
+ import type { OidcSpaApi } from "./types";
2
+ import type { Oidc as Oidc_core } from "../core";
3
+ import type { ZodSchemaLike } from "../tools/ZodSchemaLike";
4
+ export type OidcSpaApiBuilder<AutoLogin extends boolean = false, DecodedIdToken extends Record<string, unknown> = Oidc_core.Tokens.DecodedIdToken_OidcCoreSpec, ExcludedMethod extends "withAutoLogin" | "withExpectedDecodedIdTokenShape" | "withAccessTokenValidation" | "finalize" = never> = Omit<{
5
+ withAutoLogin: () => OidcSpaApiBuilder<true, DecodedIdToken, ExcludedMethod | "withAutoLogin">;
6
+ withExpectedDecodedIdTokenShape: <DecodedIdToken extends Record<string, unknown>>(params: {
7
+ decodedIdTokenSchema: ZodSchemaLike<Oidc_core.Tokens.DecodedIdToken_OidcCoreSpec, DecodedIdToken>;
8
+ decodedIdToken_mock?: NoInfer<DecodedIdToken>;
9
+ }) => OidcSpaApiBuilder<AutoLogin, DecodedIdToken, ExcludedMethod | "withExpectedDecodedIdTokenShape">;
10
+ finalize: () => OidcSpaApi<AutoLogin, DecodedIdToken>;
11
+ }, ExcludedMethod>;
12
+ export declare const oidcSpaApiBuilder: OidcSpaApiBuilder<false, Record<string, unknown>, never>;
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.oidcSpaApiBuilder = void 0;
4
+ const createOidcSpaApi_1 = require("./createOidcSpaApi");
5
+ function createOidcSpaApiBuilder(params) {
6
+ return {
7
+ withAutoLogin: () => createOidcSpaApiBuilder({
8
+ autoLogin: true,
9
+ decodedIdTokenSchema: params.decodedIdTokenSchema,
10
+ decodedIdToken_mock: params.decodedIdToken_mock
11
+ }),
12
+ withExpectedDecodedIdTokenShape: ({ decodedIdTokenSchema, decodedIdToken_mock }) => createOidcSpaApiBuilder({
13
+ autoLogin: params.autoLogin,
14
+ decodedIdTokenSchema,
15
+ decodedIdToken_mock: decodedIdToken_mock
16
+ }),
17
+ finalize: () => (0, createOidcSpaApi_1.createOidcSpaApi)({
18
+ autoLogin: params.autoLogin,
19
+ decodedIdTokenSchema: params.decodedIdTokenSchema,
20
+ decodedIdToken_mock: params.decodedIdToken_mock
21
+ })
22
+ };
23
+ }
24
+ exports.oidcSpaApiBuilder = createOidcSpaApiBuilder({
25
+ autoLogin: false,
26
+ decodedIdToken_mock: undefined,
27
+ decodedIdTokenSchema: undefined
28
+ });
29
+ //# sourceMappingURL=apiBuilder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"apiBuilder.js","sourceRoot":"","sources":["../src/react-spa/apiBuilder.ts"],"names":[],"mappings":";;;AAGA,yDAAsD;AA8BtD,SAAS,uBAAuB,CAG9B,MAMD;IACG,OAAO;QACH,aAAa,EAAE,GAAG,EAAE,CAChB,uBAAuB,CAAC;YACpB,SAAS,EAAE,IAAI;YACf,oBAAoB,EAAE,MAAM,CAAC,oBAAoB;YACjD,mBAAmB,EAAE,MAAM,CAAC,mBAAmB;SAClD,CAAC;QACN,+BAA+B,EAAE,CAAC,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,EAAE,EAAE,CAC/E,uBAAuB,CAAC;YACpB,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,oBAAoB;YACpB,mBAAmB,EAAE,mBAAmB;SAC3C,CAAC;QACN,QAAQ,EAAE,GAAG,EAAE,CACX,IAAA,mCAAgB,EAA4B;YACxC,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,oBAAoB,EAAE,MAAM,CAAC,oBAAoB;YACjD,mBAAmB,EAAE,MAAM,CAAC,mBAAmB;SAClD,CAAC;KACT,CAAC;AACN,CAAC;AAEY,QAAA,iBAAiB,GAAG,uBAAuB,CAAC;IACrD,SAAS,EAAE,KAAK;IAChB,mBAAmB,EAAE,SAAS;IAC9B,oBAAoB,EAAE,SAAS;CAClC,CAAC,CAAC"}
@@ -0,0 +1,8 @@
1
+ import type { OidcSpaApi } from "./types";
2
+ import type { ZodSchemaLike } from "../tools/ZodSchemaLike";
3
+ import type { Oidc as Oidc_core } from "../core";
4
+ export declare function createOidcSpaApi<AutoLogin extends boolean, DecodedIdToken extends Record<string, unknown>>(params: {
5
+ autoLogin: AutoLogin;
6
+ decodedIdTokenSchema: ZodSchemaLike<Oidc_core.Tokens.DecodedIdToken_OidcCoreSpec, DecodedIdToken> | undefined;
7
+ decodedIdToken_mock: DecodedIdToken | undefined;
8
+ }): OidcSpaApi<AutoLogin, DecodedIdToken>;
@@ -0,0 +1,423 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.createOidcSpaApi = createOidcSpaApi;
37
+ const jsx_runtime_1 = require("react/jsx-runtime");
38
+ const react_1 = require("react");
39
+ const OidcInitializationError_1 = require("../core/OidcInitializationError");
40
+ const Deferred_1 = require("../tools/Deferred");
41
+ const isBrowser_1 = require("../tools/isBrowser");
42
+ const assert_1 = require("../tools/tsafe/assert");
43
+ const createObjectThatThrowsIfAccessed_1 = require("../tools/createObjectThatThrowsIfAccessed");
44
+ const StatefulEvt_1 = require("../tools/StatefulEvt");
45
+ const id_1 = require("../tools/tsafe/id");
46
+ const toFullyQualifiedUrl_1 = require("../tools/toFullyQualifiedUrl");
47
+ function createOidcSpaApi(params) {
48
+ const { autoLogin, decodedIdTokenSchema, decodedIdToken_mock } = params;
49
+ const dParamsOfBootstrap = new Deferred_1.Deferred();
50
+ const dOidcCoreOrInitializationError = new Deferred_1.Deferred();
51
+ const evtAutoLogoutState = (0, StatefulEvt_1.createStatefulEvt)(() => ({
52
+ shouldDisplayWarning: false
53
+ }));
54
+ dOidcCoreOrInitializationError.pr.then(oidcCoreOrInitializationError => {
55
+ const { hasResolved, value: paramsOfBootstrap } = dParamsOfBootstrap.getState();
56
+ (0, assert_1.assert)(hasResolved);
57
+ if (paramsOfBootstrap.implementation === "mock") {
58
+ return;
59
+ }
60
+ assert_1.assert;
61
+ const { startCountdownSecondsBeforeAutoLogout = 45 } = paramsOfBootstrap;
62
+ if (oidcCoreOrInitializationError === undefined ||
63
+ oidcCoreOrInitializationError instanceof OidcInitializationError_1.OidcInitializationError) {
64
+ return;
65
+ }
66
+ const oidcCore = oidcCoreOrInitializationError;
67
+ if (!oidcCore.isUserLoggedIn) {
68
+ return;
69
+ }
70
+ oidcCore.subscribeToAutoLogoutCountdown(({ secondsLeft }) => {
71
+ const newState = (() => {
72
+ if (secondsLeft === undefined) {
73
+ return {
74
+ shouldDisplayWarning: false
75
+ };
76
+ }
77
+ if (secondsLeft > startCountdownSecondsBeforeAutoLogout) {
78
+ return {
79
+ shouldDisplayWarning: false
80
+ };
81
+ }
82
+ return {
83
+ shouldDisplayWarning: true,
84
+ secondsLeftBeforeAutoLogout: secondsLeft
85
+ };
86
+ })();
87
+ if (!newState.shouldDisplayWarning && !evtAutoLogoutState.current.shouldDisplayWarning) {
88
+ return;
89
+ }
90
+ evtAutoLogoutState.current = newState;
91
+ });
92
+ });
93
+ function useOidc(params) {
94
+ const { assert: assert_params } = params ?? {};
95
+ if (!isBrowser_1.isBrowser) {
96
+ throw new Error("oidc-spa useOidc() can't be used on the server");
97
+ }
98
+ const { hasResolved, value: oidcCore } = dOidcCoreOrInitializationError.getState();
99
+ if (!hasResolved) {
100
+ throw dOidcCoreOrInitializationError.pr;
101
+ }
102
+ if (oidcCore instanceof OidcInitializationError_1.OidcInitializationError) {
103
+ throw oidcCore;
104
+ }
105
+ check_assertion: {
106
+ if (assert_params === undefined) {
107
+ break check_assertion;
108
+ }
109
+ const getMessage = (v) => [
110
+ "There is a logic error in the application.",
111
+ `If this component is mounted the user is supposed ${v}.`,
112
+ "An explicit assertion was made in this sense."
113
+ ].join(" ");
114
+ switch (assert_params) {
115
+ case "user logged in":
116
+ if (!oidcCore.isUserLoggedIn) {
117
+ throw new Error(getMessage("to be logged in but currently they arn't"));
118
+ }
119
+ break;
120
+ case "user not logged in":
121
+ if (oidcCore.isUserLoggedIn) {
122
+ throw new Error(getMessage("not to be logged in but currently they are"));
123
+ }
124
+ break;
125
+ default:
126
+ (0, assert_1.assert)(false);
127
+ }
128
+ }
129
+ const [, reRenderIfDecodedIdTokenChanged] = (0, react_1.useState)(() => {
130
+ if (!oidcCore.isUserLoggedIn) {
131
+ return undefined;
132
+ }
133
+ return oidcCore.getDecodedIdToken();
134
+ });
135
+ const [evtIsDecodedIdTokenUsed] = (0, react_1.useState)(() => (0, StatefulEvt_1.createStatefulEvt)(() => false));
136
+ (0, react_1.useEffect)(() => {
137
+ if (!oidcCore.isUserLoggedIn) {
138
+ return;
139
+ }
140
+ let isActive = true;
141
+ let unsubscribe = undefined;
142
+ (async () => {
143
+ if (!evtIsDecodedIdTokenUsed.current) {
144
+ const dDecodedIdTokenUsed = new Deferred_1.Deferred();
145
+ const { unsubscribe: unsubscribe_scope } = evtIsDecodedIdTokenUsed.subscribe(() => {
146
+ unsubscribe_scope();
147
+ dDecodedIdTokenUsed.resolve();
148
+ });
149
+ unsubscribe = unsubscribe_scope;
150
+ await dDecodedIdTokenUsed.pr;
151
+ if (!isActive) {
152
+ return;
153
+ }
154
+ }
155
+ reRenderIfDecodedIdTokenChanged(oidcCore.getDecodedIdToken());
156
+ unsubscribe = oidcCore.subscribeToTokensChange(() => {
157
+ reRenderIfDecodedIdTokenChanged(oidcCore.getDecodedIdToken());
158
+ }).unsubscribe;
159
+ })();
160
+ return () => {
161
+ isActive = false;
162
+ unsubscribe?.();
163
+ };
164
+ }, []);
165
+ const [evtIsAutoLogoutStateUsed] = (0, react_1.useState)(() => (0, StatefulEvt_1.createStatefulEvt)(() => false));
166
+ const [, reRenderIfAutoLogoutStateChanged] = (0, react_1.useState)(() => evtAutoLogoutState.current);
167
+ (0, react_1.useEffect)(() => {
168
+ let isActive = true;
169
+ let unsubscribe = undefined;
170
+ (async () => {
171
+ if (!evtIsAutoLogoutStateUsed.current) {
172
+ const dAutoLogoutStateUsed = new Deferred_1.Deferred();
173
+ const { unsubscribe: unsubscribe_scope } = evtIsAutoLogoutStateUsed.subscribe(() => {
174
+ unsubscribe_scope();
175
+ dAutoLogoutStateUsed.resolve();
176
+ });
177
+ unsubscribe = unsubscribe_scope;
178
+ await dAutoLogoutStateUsed.pr;
179
+ if (!isActive) {
180
+ return;
181
+ }
182
+ }
183
+ reRenderIfAutoLogoutStateChanged(evtAutoLogoutState.current);
184
+ unsubscribe = evtAutoLogoutState.subscribe(reRenderIfAutoLogoutStateChanged).unsubscribe;
185
+ })();
186
+ return () => {
187
+ isActive = false;
188
+ unsubscribe?.();
189
+ };
190
+ }, []);
191
+ if (!oidcCore.isUserLoggedIn) {
192
+ return (0, id_1.id)({
193
+ isUserLoggedIn: false,
194
+ initializationError: oidcCore.initializationError,
195
+ issuerUri: oidcCore.params.issuerUri,
196
+ clientId: oidcCore.params.clientId,
197
+ autoLogoutState: { shouldDisplayWarning: false },
198
+ login: params => oidcCore.login({
199
+ doesCurrentHrefRequiresAuth: false,
200
+ ...params
201
+ })
202
+ });
203
+ }
204
+ return (0, id_1.id)({
205
+ isUserLoggedIn: true,
206
+ get decodedIdToken() {
207
+ evtIsDecodedIdTokenUsed.current = true;
208
+ return oidcCore.getDecodedIdToken();
209
+ },
210
+ logout: oidcCore.logout,
211
+ renewTokens: oidcCore.renewTokens,
212
+ goToAuthServer: oidcCore.goToAuthServer,
213
+ backFromAuthServer: oidcCore.backFromAuthServer,
214
+ isNewBrowserSession: oidcCore.isNewBrowserSession,
215
+ get autoLogoutState() {
216
+ evtIsAutoLogoutStateUsed.current = true;
217
+ return evtAutoLogoutState.current;
218
+ },
219
+ issuerUri: oidcCore.params.issuerUri,
220
+ clientId: oidcCore.params.clientId
221
+ });
222
+ }
223
+ async function getOidc(params) {
224
+ if (!isBrowser_1.isBrowser) {
225
+ throw new Error("oidc-spa: getOidc() can't be used on the server");
226
+ }
227
+ const oidcCore = await dOidcCoreOrInitializationError.pr;
228
+ if (oidcCore instanceof OidcInitializationError_1.OidcInitializationError) {
229
+ return new Promise(() => { });
230
+ }
231
+ if (params?.assert === "user logged in" && !oidcCore.isUserLoggedIn) {
232
+ throw new Error([
233
+ "oidc-spa: Called getOidc({ assert: 'user logged in' })",
234
+ "but the user is not currently logged in."
235
+ ].join(" "));
236
+ }
237
+ if (params?.assert === "user not logged in" && oidcCore.isUserLoggedIn) {
238
+ throw new Error([
239
+ "oidc-spa: Called getOidc({ assert: 'user not logged in' })",
240
+ "but the user is currently logged in."
241
+ ].join(" "));
242
+ }
243
+ return oidcCore.isUserLoggedIn
244
+ ? (0, id_1.id)({
245
+ issuerUri: oidcCore.params.issuerUri,
246
+ clientId: oidcCore.params.clientId,
247
+ isUserLoggedIn: true,
248
+ getAccessToken: async () => {
249
+ const { accessToken } = await oidcCore.getTokens();
250
+ return accessToken;
251
+ },
252
+ getDecodedIdToken: oidcCore.getDecodedIdToken,
253
+ logout: oidcCore.logout,
254
+ renewTokens: oidcCore.renewTokens,
255
+ goToAuthServer: oidcCore.goToAuthServer,
256
+ backFromAuthServer: oidcCore.backFromAuthServer,
257
+ isNewBrowserSession: oidcCore.isNewBrowserSession,
258
+ subscribeToAutoLogoutState: next => {
259
+ next(evtAutoLogoutState.current);
260
+ const { unsubscribe } = evtAutoLogoutState.subscribe(next);
261
+ return { unsubscribeFromAutoLogoutState: unsubscribe };
262
+ }
263
+ })
264
+ : (0, id_1.id)({
265
+ issuerUri: oidcCore.params.issuerUri,
266
+ clientId: oidcCore.params.clientId,
267
+ isUserLoggedIn: false,
268
+ initializationError: oidcCore.initializationError,
269
+ login: oidcCore.login
270
+ });
271
+ }
272
+ let hasBootstrapBeenCalled = false;
273
+ const prModuleCore = !isBrowser_1.isBrowser ? undefined : Promise.resolve().then(() => __importStar(require("../core")));
274
+ const bootstrapOidc = (paramsOfBootstrap) => {
275
+ if (hasBootstrapBeenCalled) {
276
+ return;
277
+ }
278
+ hasBootstrapBeenCalled = true;
279
+ (async () => {
280
+ if (!isBrowser_1.isBrowser) {
281
+ return;
282
+ }
283
+ (0, assert_1.assert)(prModuleCore !== undefined);
284
+ dParamsOfBootstrap.resolve(paramsOfBootstrap);
285
+ switch (paramsOfBootstrap.implementation) {
286
+ case "mock":
287
+ {
288
+ const { createMockOidc } = await Promise.resolve().then(() => __importStar(require("../mock/oidc")));
289
+ const oidcCore = await createMockOidc({
290
+ BASE_URL: paramsOfBootstrap.BASE_URL,
291
+ // NOTE: The `as false` is lying here, it's just to preserve some level of type-safety.
292
+ autoLogin: autoLogin,
293
+ // NOTE: Same here, the nullish coalescing is lying.
294
+ isUserInitiallyLoggedIn: paramsOfBootstrap.isUserInitiallyLoggedIn,
295
+ mockedParams: {
296
+ clientId: paramsOfBootstrap.clientId_mock,
297
+ issuerUri: paramsOfBootstrap.issuerUri_mock
298
+ },
299
+ mockedTokens: {
300
+ decodedIdToken: paramsOfBootstrap.decodedIdToken_mock ??
301
+ decodedIdToken_mock ??
302
+ (0, createObjectThatThrowsIfAccessed_1.createObjectThatThrowsIfAccessed)({
303
+ debugMessage: [
304
+ "oidc-spa: You didn't provide any mock for the decodedIdToken",
305
+ "Either provide a default one by specifying decodedIdToken_mock",
306
+ "as parameter of .withExpectedDecodedIdTokenShape() or",
307
+ "specify decodedIdToken_mock when calling bootstrapOidc()"
308
+ ].join(" ")
309
+ })
310
+ }
311
+ });
312
+ dOidcCoreOrInitializationError.resolve(oidcCore);
313
+ }
314
+ break;
315
+ case "real":
316
+ {
317
+ const { createOidc } = await prModuleCore;
318
+ let oidcCoreOrInitializationError;
319
+ try {
320
+ oidcCoreOrInitializationError = await createOidc({
321
+ BASE_URL: paramsOfBootstrap.BASE_URL,
322
+ autoLogin,
323
+ decodedIdTokenSchema,
324
+ issuerUri: paramsOfBootstrap.issuerUri,
325
+ clientId: paramsOfBootstrap.clientId,
326
+ idleSessionLifetimeInSeconds: paramsOfBootstrap.idleSessionLifetimeInSeconds,
327
+ scopes: paramsOfBootstrap.scopes,
328
+ transformUrlBeforeRedirect: paramsOfBootstrap.transformUrlBeforeRedirect,
329
+ extraQueryParams: paramsOfBootstrap.extraQueryParams,
330
+ extraTokenParams: paramsOfBootstrap.extraTokenParams,
331
+ noIframe: paramsOfBootstrap.noIframe,
332
+ debugLogs: paramsOfBootstrap.debugLogs,
333
+ __unsafe_clientSecret: paramsOfBootstrap.__unsafe_clientSecret,
334
+ __metadata: paramsOfBootstrap.__metadata,
335
+ __unsafe_useIdTokenAsAccessToken: paramsOfBootstrap.__unsafe_useIdTokenAsAccessToken
336
+ });
337
+ }
338
+ catch (error) {
339
+ if (!(error instanceof OidcInitializationError_1.OidcInitializationError)) {
340
+ throw error;
341
+ }
342
+ dOidcCoreOrInitializationError.resolve(error);
343
+ return;
344
+ }
345
+ dOidcCoreOrInitializationError.resolve(oidcCoreOrInitializationError);
346
+ }
347
+ break;
348
+ }
349
+ })();
350
+ };
351
+ async function enforceLogin(loaderContext) {
352
+ if (!isBrowser_1.isBrowser) {
353
+ throw new Error("oidc-spa: getOidc() can't be used on the server");
354
+ }
355
+ const { cause } = loaderContext;
356
+ const redirectUrl = (() => {
357
+ if (loaderContext.request?.url !== undefined) {
358
+ return (0, toFullyQualifiedUrl_1.toFullyQualifiedUrl)({
359
+ urlish: loaderContext.request.url,
360
+ doAssertNoQueryParams: false
361
+ });
362
+ }
363
+ if (loaderContext.location?.href !== undefined) {
364
+ return (0, toFullyQualifiedUrl_1.toFullyQualifiedUrl)({
365
+ urlish: loaderContext.location.href,
366
+ doAssertNoQueryParams: false
367
+ });
368
+ }
369
+ return location.href;
370
+ })();
371
+ const oidc = await getOidc();
372
+ if (!oidc.isUserLoggedIn) {
373
+ if (cause === "preload") {
374
+ throw new Error("oidc-spa: User is not yet logged in. This is an expected error, nothing to be addressed.");
375
+ }
376
+ const doesCurrentHrefRequiresAuth = location.href.replace(/\/$/, "") === redirectUrl.replace(/\/$/, "");
377
+ await oidc.login({
378
+ redirectUrl,
379
+ doesCurrentHrefRequiresAuth
380
+ });
381
+ }
382
+ }
383
+ function OidcInitializationErrorGate(props) {
384
+ const { errorComponent: ErrorComponent, children } = props;
385
+ const { hasResolved, value: oidcCoreOrOidcInitializationError } = dOidcCoreOrInitializationError.getState();
386
+ if (!hasResolved) {
387
+ throw dOidcCoreOrInitializationError.pr;
388
+ }
389
+ if (oidcCoreOrOidcInitializationError instanceof OidcInitializationError_1.OidcInitializationError) {
390
+ const oidcInitializationError = oidcCoreOrOidcInitializationError;
391
+ return (0, jsx_runtime_1.jsx)(ErrorComponent, { oidcInitializationError: oidcInitializationError });
392
+ }
393
+ return children;
394
+ }
395
+ function withLoginEnforced(component) {
396
+ const Component = component;
397
+ function ComponentWithLoginEnforced(props) {
398
+ const { hasResolved, value: oidcCore } = dOidcCoreOrInitializationError.getState();
399
+ if (!hasResolved) {
400
+ throw dOidcCoreOrInitializationError.pr;
401
+ }
402
+ if (oidcCore instanceof OidcInitializationError_1.OidcInitializationError) {
403
+ throw oidcCore;
404
+ }
405
+ if (!oidcCore.isUserLoggedIn) {
406
+ throw oidcCore.login({ doesCurrentHrefRequiresAuth: true });
407
+ }
408
+ return (0, jsx_runtime_1.jsx)(Component, { ...props });
409
+ }
410
+ ComponentWithLoginEnforced.displayName = `${Component.displayName ?? Component.name ?? "Component"}WithLoginEnforced`;
411
+ return ComponentWithLoginEnforced;
412
+ }
413
+ // @ts-expect-error
414
+ return {
415
+ bootstrapOidc,
416
+ useOidc,
417
+ getOidc,
418
+ OidcInitializationErrorGate,
419
+ enforceLogin,
420
+ withLoginEnforced
421
+ };
422
+ }
423
+ //# sourceMappingURL=createOidcSpaApi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createOidcSpaApi.js","sourceRoot":"","sources":["../src/react-spa/createOidcSpaApi.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export type * from "./types";
2
+ export declare const oidcSpa: import("./apiBuilder").OidcSpaApiBuilder<false, Record<string, unknown>, never>;
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.oidcSpa = void 0;
4
+ const apiBuilder_1 = require("./apiBuilder");
5
+ exports.oidcSpa = apiBuilder_1.oidcSpaApiBuilder;
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/react-spa/index.ts"],"names":[],"mappings":";;;AACA,6CAAiD;AAEpC,QAAA,OAAO,GAAG,8BAAiB,CAAC"}