oidc-spa 10.3.0-rc.4 → 11.0.0-rc.2

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 (214) hide show
  1. package/README.md +0 -24
  2. package/core/Oidc.d.ts +12 -22
  3. package/core/createGetUser.d.ts +1 -1
  4. package/core/createGetUser.js +18 -10
  5. package/core/createGetUser.js.map +1 -1
  6. package/core/createMockOidc.d.ts +15 -8
  7. package/core/createMockOidc.js +33 -23
  8. package/core/createMockOidc.js.map +1 -1
  9. package/core/createOidc.d.ts +7 -12
  10. package/core/createOidc.js +9 -8
  11. package/core/createOidc.js.map +1 -1
  12. package/core/index.d.ts +2 -0
  13. package/core/oidcClientTsUserToTokens.d.ts +2 -6
  14. package/core/oidcClientTsUserToTokens.js +10 -35
  15. package/core/oidcClientTsUserToTokens.js.map +1 -1
  16. package/esm/angular/createOidcSpaUtils.d.ts +7 -0
  17. package/esm/angular/createOidcSpaUtils.mjs +494 -0
  18. package/esm/angular/createOidcSpaUtils.mjs.map +1 -0
  19. package/esm/angular/index.d.ts +3 -0
  20. package/esm/angular/index.mjs +2 -0
  21. package/esm/angular/index.mjs.map +1 -0
  22. package/esm/angular/types.d.ts +354 -0
  23. package/esm/angular/types.mjs +7 -0
  24. package/esm/angular/types.mjs.map +1 -0
  25. package/esm/angular/utilsBuilder.d.ts +11 -0
  26. package/esm/angular/utilsBuilder.mjs +36 -0
  27. package/esm/angular/utilsBuilder.mjs.map +1 -0
  28. package/esm/core/Oidc.d.ts +12 -22
  29. package/esm/core/createGetUser.d.ts +1 -1
  30. package/esm/core/createGetUser.mjs +18 -10
  31. package/esm/core/createGetUser.mjs.map +1 -1
  32. package/esm/core/createMockOidc.d.ts +15 -8
  33. package/esm/core/createMockOidc.mjs +32 -23
  34. package/esm/core/createMockOidc.mjs.map +1 -1
  35. package/esm/core/createOidc.d.ts +7 -12
  36. package/esm/core/createOidc.mjs +9 -8
  37. package/esm/core/createOidc.mjs.map +1 -1
  38. package/esm/core/index.d.ts +2 -0
  39. package/esm/core/oidcClientTsUserToTokens.d.ts +2 -6
  40. package/esm/core/oidcClientTsUserToTokens.mjs +10 -35
  41. package/esm/core/oidcClientTsUserToTokens.mjs.map +1 -1
  42. package/esm/keycloak/index.d.ts +2 -1
  43. package/esm/keycloak/index.mjs.map +1 -1
  44. package/esm/keycloak/keycloak-js/Keycloak.mjs +10 -10
  45. package/esm/keycloak/keycloak-js/Keycloak.mjs.map +1 -1
  46. package/esm/keycloak/keycloak-js/keycloak-authz.mjs +2 -2
  47. package/esm/keycloak/keycloak-js/keycloak-authz.mjs.map +1 -1
  48. package/esm/keycloak/keycloakUtils.d.ts +2 -5
  49. package/esm/keycloak/keycloakUtils.mjs.map +1 -1
  50. package/esm/react-nextjs/adaptOidcSpaUtils.d.ts +3 -0
  51. package/esm/react-nextjs/adaptOidcSpaUtils.mjs +43 -0
  52. package/esm/react-nextjs/adaptOidcSpaUtils.mjs.map +1 -0
  53. package/esm/react-nextjs/index.d.ts +12 -0
  54. package/esm/react-nextjs/index.mjs +20 -0
  55. package/esm/react-nextjs/index.mjs.map +1 -0
  56. package/esm/react-nextjs/types.d.ts +3 -0
  57. package/esm/react-nextjs/types.mjs +2 -0
  58. package/esm/react-nextjs/types.mjs.map +1 -0
  59. package/esm/react-spa/createOidcSpaUtils.d.ts +2 -6
  60. package/esm/react-spa/createOidcSpaUtils.mjs +17 -84
  61. package/esm/react-spa/createOidcSpaUtils.mjs.map +1 -1
  62. package/esm/react-spa/index.d.ts +1 -1
  63. package/esm/react-spa/types.d.ts +35 -40
  64. package/esm/react-spa/types.mjs +4 -0
  65. package/esm/react-spa/types.mjs.map +1 -1
  66. package/esm/react-spa/utilsBuilder.d.ts +5 -11
  67. package/esm/react-spa/utilsBuilder.mjs +0 -17
  68. package/esm/react-spa/utilsBuilder.mjs.map +1 -1
  69. package/esm/server/createUtils.d.ts +5 -0
  70. package/esm/server/createUtils.mjs +762 -0
  71. package/esm/server/createUtils.mjs.map +1 -0
  72. package/esm/server/extractRequestAuthContext.d.ts +3 -2
  73. package/esm/server/extractRequestAuthContext.mjs +1 -1
  74. package/esm/server/extractRequestAuthContext.mjs.map +1 -1
  75. package/esm/server/index.d.ts +2 -2
  76. package/esm/server/index.mjs +1 -2
  77. package/esm/server/index.mjs.map +1 -1
  78. package/esm/server/oidcSpa.d.ts +8 -0
  79. package/esm/server/oidcSpa.mjs +13 -0
  80. package/esm/server/oidcSpa.mjs.map +1 -0
  81. package/esm/server/tools/fetchIntrospectionEndpoint.d.ts +3 -0
  82. package/esm/server/tools/fetchIntrospectionEndpoint.mjs +39 -0
  83. package/esm/server/tools/fetchIntrospectionEndpoint.mjs.map +1 -0
  84. package/esm/server/tools/fetchPublicSigningKeys.d.ts +8 -0
  85. package/esm/server/tools/fetchPublicSigningKeys.mjs +94 -0
  86. package/esm/server/tools/fetchPublicSigningKeys.mjs.map +1 -0
  87. package/esm/server/types.d.ts +50 -47
  88. package/esm/tanstack-start/react/createOidcSpaUtils.d.ts +5 -10
  89. package/esm/tanstack-start/react/createOidcSpaUtils.mjs +279 -257
  90. package/esm/tanstack-start/react/createOidcSpaUtils.mjs.map +1 -1
  91. package/esm/tanstack-start/react/index.d.ts +1 -1
  92. package/esm/tanstack-start/react/index.mjs +1 -2
  93. package/esm/tanstack-start/react/index.mjs.map +1 -1
  94. package/esm/tanstack-start/react/oidcSpa.d.ts +49 -0
  95. package/esm/tanstack-start/react/oidcSpa.mjs +36 -0
  96. package/esm/tanstack-start/react/oidcSpa.mjs.map +1 -0
  97. package/esm/tanstack-start/react/types.d.ts +260 -268
  98. package/esm/tanstack-start/react/types.mjs +2 -3
  99. package/esm/tanstack-start/react/types.mjs.map +1 -1
  100. package/esm/tools/OidcUserInfo.d.ts +30 -0
  101. package/esm/tools/OidcUserInfo.mjs +2 -0
  102. package/esm/tools/OidcUserInfo.mjs.map +1 -0
  103. package/esm/tools/areDeepEqual.d.ts +1 -0
  104. package/esm/tools/areDeepEqual.mjs +44 -0
  105. package/esm/tools/areDeepEqual.mjs.map +1 -0
  106. package/esm/vite-plugin/manageOptimizedDeps.mjs +2 -1
  107. package/esm/vite-plugin/manageOptimizedDeps.mjs.map +1 -1
  108. package/esm/vite-plugin/projectType.mjs +2 -2
  109. package/esm/vite-plugin/projectType.mjs.map +1 -1
  110. package/keycloak/index.d.ts +2 -1
  111. package/keycloak/index.js.map +1 -1
  112. package/keycloak/keycloak-js/Keycloak.js +10 -10
  113. package/keycloak/keycloak-js/Keycloak.js.map +1 -1
  114. package/keycloak/keycloak-js/keycloak-authz.js +2 -2
  115. package/keycloak/keycloak-js/keycloak-authz.js.map +1 -1
  116. package/keycloak/keycloakUtils.d.ts +2 -5
  117. package/keycloak/keycloakUtils.js.map +1 -1
  118. package/package.json +15 -5
  119. package/react-spa/createOidcSpaUtils.d.ts +2 -6
  120. package/react-spa/createOidcSpaUtils.js +16 -83
  121. package/react-spa/createOidcSpaUtils.js.map +1 -1
  122. package/react-spa/index.d.ts +1 -1
  123. package/react-spa/types.d.ts +35 -40
  124. package/react-spa/types.js +5 -0
  125. package/react-spa/types.js.map +1 -1
  126. package/react-spa/utilsBuilder.d.ts +5 -11
  127. package/react-spa/utilsBuilder.js +0 -17
  128. package/react-spa/utilsBuilder.js.map +1 -1
  129. package/server/createUtils.d.ts +5 -0
  130. package/server/createUtils.js +765 -0
  131. package/server/createUtils.js.map +1 -0
  132. package/server/extractRequestAuthContext.d.ts +3 -2
  133. package/server/extractRequestAuthContext.js +1 -1
  134. package/server/extractRequestAuthContext.js.map +1 -1
  135. package/server/index.d.ts +2 -2
  136. package/server/index.js +3 -3
  137. package/server/index.js.map +1 -1
  138. package/server/oidcSpa.d.ts +8 -0
  139. package/server/oidcSpa.js +16 -0
  140. package/server/oidcSpa.js.map +1 -0
  141. package/server/tools/fetchIntrospectionEndpoint.d.ts +3 -0
  142. package/server/tools/fetchIntrospectionEndpoint.js +42 -0
  143. package/server/tools/fetchIntrospectionEndpoint.js.map +1 -0
  144. package/server/tools/fetchPublicSigningKeys.d.ts +8 -0
  145. package/server/tools/fetchPublicSigningKeys.js +97 -0
  146. package/server/tools/fetchPublicSigningKeys.js.map +1 -0
  147. package/server/types.d.ts +50 -47
  148. package/src/angular/createOidcSpaUtils.ts +633 -0
  149. package/src/angular/index.ts +3 -0
  150. package/src/angular/types.ts +406 -0
  151. package/src/angular/utilsBuilder.ts +68 -0
  152. package/src/core/Oidc.ts +12 -30
  153. package/src/core/createGetUser.ts +23 -16
  154. package/src/core/createMockOidc.ts +62 -52
  155. package/src/core/createOidc.ts +22 -43
  156. package/src/core/index.ts +3 -0
  157. package/src/core/oidcClientTsUserToTokens.ts +21 -68
  158. package/src/keycloak/index.ts +2 -6
  159. package/src/keycloak/keycloak-js/Keycloak.ts +10 -10
  160. package/src/keycloak/keycloak-js/keycloak-authz.ts +2 -2
  161. package/src/keycloak/keycloakUtils.ts +2 -6
  162. package/src/react-nextjs/adaptOidcSpaUtils.tsx +64 -0
  163. package/src/react-nextjs/index.ts +53 -0
  164. package/src/react-nextjs/types.ts +4 -0
  165. package/src/react-spa/createOidcSpaUtils.ts +39 -148
  166. package/src/react-spa/types.ts +53 -49
  167. package/src/react-spa/utilsBuilder.ts +11 -60
  168. package/src/server/createUtils.ts +1015 -0
  169. package/src/server/extractRequestAuthContext.ts +6 -5
  170. package/src/server/index.ts +2 -4
  171. package/src/server/oidcSpa.ts +34 -0
  172. package/src/server/tools/fetchIntrospectionEndpoint.ts +57 -0
  173. package/src/server/tools/fetchPublicSigningKeys.ts +148 -0
  174. package/src/server/types.ts +68 -64
  175. package/src/tanstack-start/react/createOidcSpaUtils.ts +396 -394
  176. package/src/tanstack-start/react/index.ts +1 -3
  177. package/src/tanstack-start/react/oidcSpa.ts +68 -0
  178. package/src/tanstack-start/react/types.ts +287 -301
  179. package/src/tools/OidcUserInfo.ts +40 -0
  180. package/src/tools/areDeepEqual.ts +59 -0
  181. package/src/vite-plugin/manageOptimizedDeps.ts +2 -1
  182. package/src/vite-plugin/projectType.ts +2 -2
  183. package/tools/OidcUserInfo.d.ts +30 -0
  184. package/tools/OidcUserInfo.js +3 -0
  185. package/tools/OidcUserInfo.js.map +1 -0
  186. package/tools/areDeepEqual.d.ts +1 -0
  187. package/tools/areDeepEqual.js +47 -0
  188. package/tools/areDeepEqual.js.map +1 -0
  189. package/esm/angular.d.ts +0 -237
  190. package/esm/angular.mjs +0 -525
  191. package/esm/angular.mjs.map +0 -1
  192. package/esm/server/createOidcSpaUtils.d.ts +0 -5
  193. package/esm/server/createOidcSpaUtils.mjs +0 -641
  194. package/esm/server/createOidcSpaUtils.mjs.map +0 -1
  195. package/esm/server/utilsBuilder.d.ts +0 -10
  196. package/esm/server/utilsBuilder.mjs +0 -13
  197. package/esm/server/utilsBuilder.mjs.map +0 -1
  198. package/esm/tanstack-start/react/accessTokenValidation_rfc9068.d.ts +0 -15
  199. package/esm/tanstack-start/react/accessTokenValidation_rfc9068.mjs +0 -123
  200. package/esm/tanstack-start/react/accessTokenValidation_rfc9068.mjs.map +0 -1
  201. package/esm/tanstack-start/react/utilsBuilder.d.ts +0 -34
  202. package/esm/tanstack-start/react/utilsBuilder.mjs +0 -76
  203. package/esm/tanstack-start/react/utilsBuilder.mjs.map +0 -1
  204. package/server/createOidcSpaUtils.d.ts +0 -5
  205. package/server/createOidcSpaUtils.js +0 -644
  206. package/server/createOidcSpaUtils.js.map +0 -1
  207. package/server/utilsBuilder.d.ts +0 -10
  208. package/server/utilsBuilder.js +0 -16
  209. package/server/utilsBuilder.js.map +0 -1
  210. package/src/angular.ts +0 -913
  211. package/src/server/createOidcSpaUtils.ts +0 -863
  212. package/src/server/utilsBuilder.ts +0 -41
  213. package/src/tanstack-start/react/accessTokenValidation_rfc9068.ts +0 -178
  214. package/src/tanstack-start/react/utilsBuilder.ts +0 -188
package/README.md CHANGED
@@ -158,27 +158,3 @@ Project backers, we trust and recommend their services.
158
158
  <p align="center">
159
159
  <i><a href="https://phasetwo.io/?utm_source=keycloakify"><strong>Keycloak as a Service</strong></a> — Keycloak community contributors of popular <a href="https://github.com/p2-inc#our-extensions-?utm_source=keycloakify">extensions</a> providing free and dedicated <a href="https://phasetwo.io/hosting/?utm_source=keycloakify">Keycloak hosting</a> and enterprise <a href="https://phasetwo.io/support/?utm_source=keycloakify">Keycloak support</a> to businesses of all sizes.</i>
160
160
  </p>
161
-
162
- <br/>
163
- <br/>
164
- <br/>
165
-
166
- <div align="center">
167
-
168
- ![Logo Dark](https://github.com/user-attachments/assets/dd3925fb-a58a-4e91-b360-69c2fa1f1087#gh-dark-mode-only)
169
-
170
- </div>
171
-
172
- <div align="center">
173
-
174
- ![Logo Light](https://github.com/user-attachments/assets/6c00c201-eed7-485a-a887-70891559d69b#gh-light-mode-only)
175
-
176
- </div>
177
-
178
- <br/>
179
-
180
- <p align="center">
181
- <a href="https://www.zone2.tech/services/keycloak-consulting">
182
- <i><strong>Keycloak Consulting Services</strong> — Your partner in Keycloak deployment, configuration, and extension development for optimized identity management solutions.</i>
183
- </a>
184
- </p>
package/core/Oidc.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import type { OidcInitializationError } from "./OidcInitializationError";
2
- export declare type Oidc<DecodedIdToken extends Record<string, unknown> = Oidc.Tokens.DecodedIdToken_OidcCoreSpec, User = never> = Oidc.LoggedIn<DecodedIdToken, User> | Oidc.NotLoggedIn;
2
+ export declare type Oidc<User = never> = Oidc.LoggedIn<User> | Oidc.NotLoggedIn;
3
3
  export declare namespace Oidc {
4
4
  type Common = {
5
5
  issuerUri: string;
@@ -25,20 +25,21 @@ export declare namespace Oidc {
25
25
  * Transform the url before redirecting to the login pages.
26
26
  * Prefer using the extraQueryParams parameter if you're only adding query parameters.
27
27
  */
28
- transformUrlBeforeRedirect?: (url: string) => string;
28
+ transformUrlBeforeRedirect?: (authorizationUrl: string) => string;
29
29
  }) => Promise<never>;
30
30
  initializationError: OidcInitializationError | undefined;
31
31
  };
32
- type LoggedIn<DecodedIdToken extends Record<string, unknown> = Record<string, unknown>, User = never> = Common & {
32
+ type LoggedIn<User = never> = Common & {
33
33
  isUserLoggedIn: true;
34
34
  renewTokens(params?: {
35
35
  extraTokenParams?: Record<string, string | undefined>;
36
36
  }): Promise<void>;
37
- getTokens: () => Promise<Tokens<DecodedIdToken>>;
38
- subscribeToTokensChange: (onTokenChange: (tokens: Tokens<DecodedIdToken>) => void) => {
37
+ subscribeToTokensChange: (onTokenChange: (tokens: Tokens) => void) => {
39
38
  unsubscribeFromTokensChange: () => void;
40
39
  };
41
- getDecodedIdToken: () => DecodedIdToken;
40
+ getTokens: () => Promise<Tokens>;
41
+ getDecodedIdToken: () => Tokens.DecodedIdToken;
42
+ getAccessToken: () => Promise<string>;
42
43
  logout: (params: {
43
44
  redirectTo: "home" | "current page";
44
45
  } | {
@@ -92,41 +93,30 @@ export declare namespace Oidc {
92
93
  refreshUser: () => Promise<User>;
93
94
  }>;
94
95
  };
95
- type Tokens<DecodedIdToken extends Record<string, unknown> = Tokens.DecodedIdToken_OidcCoreSpec> = Tokens.WithRefreshToken<DecodedIdToken> | Tokens.WithoutRefreshToken<DecodedIdToken>;
96
+ type Tokens = Tokens.WithRefreshToken | Tokens.WithoutRefreshToken;
96
97
  namespace Tokens {
97
- type Common<DecodedIdToken> = {
98
+ type Common = {
98
99
  accessToken: string;
99
100
  /** Millisecond epoch in the server's time */
100
101
  accessTokenExpirationTime: number;
101
102
  idToken: string;
102
103
  decodedIdToken: DecodedIdToken;
103
- /**
104
- * decodedIdToken_original = decodeJwt(idToken);
105
- * decodedIdToken = decodedIdTokenSchema.parse(decodedIdToken_original)
106
- *
107
- * The idea here is that if you have provided a zod schema as `decodedIdTokenSchema`
108
- * it will strip out every claim that you haven't specified.
109
- * You might even be applying some transformation.
110
- *
111
- * `decodedIdToken_original` is the actual decoded payload of the id_token, untransformed.
112
- * */
113
- decodedIdToken_original: DecodedIdToken_OidcCoreSpec;
114
104
  /** Millisecond epoch in the server's time, read from id_token's JWT, iat claim value */
115
105
  issuedAtTime: number;
116
106
  /** To use instead of Date.now() if you ever need to tell if a token is expired or not */
117
107
  getServerDateNow: () => number;
118
108
  };
119
- type WithRefreshToken<DecodedIdToken> = Common<DecodedIdToken> & {
109
+ type WithRefreshToken = Common & {
120
110
  hasRefreshToken: true;
121
111
  refreshToken: string;
122
112
  refreshTokenExpirationTime: number | undefined;
123
113
  };
124
- type WithoutRefreshToken<DecodedIdToken> = Common<DecodedIdToken> & {
114
+ type WithoutRefreshToken = Common & {
125
115
  hasRefreshToken: false;
126
116
  refreshToken?: never;
127
117
  refreshTokenExpirationTime?: never;
128
118
  };
129
- type DecodedIdToken_OidcCoreSpec = {
119
+ type DecodedIdToken = {
130
120
  iss: string;
131
121
  sub: string;
132
122
  aud: string | string[];
@@ -6,7 +6,7 @@ export declare function createGetUser<User>(params: {
6
6
  clientId: string;
7
7
  validRedirectUri: string;
8
8
  createUser: ParamsOfCreateOidc.CreateUser<User> | undefined;
9
- getCurrentTokens: () => Oidc.Tokens<any>;
9
+ getCurrentTokens: () => Oidc.Tokens;
10
10
  evtTokensChange: NonPostableEvt<void>;
11
11
  renewTokens(): Promise<void>;
12
12
  oidcMetadata: {
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.createGetUser = createGetUser;
4
4
  const id_1 = require("../tools/tsafe/id");
5
5
  const assert_1 = require("../tools/tsafe/assert");
6
+ const areDeepEqual_1 = require("../tools/areDeepEqual");
6
7
  const decodeJwt_1 = require("../tools/decodeJwt");
7
8
  function createGetUser(params) {
8
9
  const { issuerUri, clientId, validRedirectUri, createUser, getCurrentTokens, evtTokensChange, renewTokens, oidcMetadata } = params;
@@ -36,7 +37,7 @@ function createGetUser(params) {
36
37
  const tokens = getCurrentTokens();
37
38
  const hash_new = computeHash({
38
39
  accessToken: tokens.accessToken,
39
- decodedIdToken: tokens.decodedIdToken_original
40
+ decodedIdToken: tokens.decodedIdToken
40
41
  });
41
42
  const prUser_new = (async () => {
42
43
  const prUser_current = state?.prUser;
@@ -49,7 +50,7 @@ function createGetUser(params) {
49
50
  try {
50
51
  user_new = await createUser({
51
52
  accessToken: tokens.accessToken,
52
- decodedIdToken: tokens.decodedIdToken_original,
53
+ decodedIdToken: tokens.decodedIdToken,
53
54
  issuerUri,
54
55
  clientId,
55
56
  validRedirectUri,
@@ -70,6 +71,9 @@ function createGetUser(params) {
70
71
  // higher level adapters.
71
72
  throw error;
72
73
  }
74
+ if (user_current !== undefined && (0, areDeepEqual_1.areDeepEqual)(user_new, user_current)) {
75
+ return user_current;
76
+ }
73
77
  onUserChanges.forEach(onUserChange => onUserChange({
74
78
  user: user_new,
75
79
  user_previous: user_current
@@ -125,15 +129,19 @@ function createGetUser(params) {
125
129
  };
126
130
  setTimer();
127
131
  }
128
- const user = await state.prUser;
129
- if (timer_cycleDetection !== undefined) {
130
- clearTimeout(timer_cycleDetection);
132
+ try {
133
+ const user = await state.prUser;
134
+ return (0, id_1.id)({
135
+ user,
136
+ refreshUser,
137
+ subscribeToUserChange
138
+ });
139
+ }
140
+ finally {
141
+ if (timer_cycleDetection !== undefined) {
142
+ clearTimeout(timer_cycleDetection);
143
+ }
131
144
  }
132
- return (0, id_1.id)({
133
- user,
134
- refreshUser,
135
- subscribeToUserChange
136
- });
137
145
  };
138
146
  return { getUser };
139
147
  }
@@ -1 +1 @@
1
- {"version":3,"file":"createGetUser.js","sourceRoot":"","sources":["../src/core/createGetUser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"createGetUser.js","sourceRoot":"","sources":["../src/core/createGetUser.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,14 @@
1
1
  import type { Oidc } from "../core";
2
- export type ParamsOfCreateMockOidc<DecodedIdToken extends Record<string, unknown> = Record<string, unknown>, AutoLogin extends boolean = false, User = never> = {
3
- mockedParams?: {
4
- issuerUri?: string;
5
- clientId?: string;
6
- };
7
- mockedTokens?: Partial<Oidc.Tokens<DecodedIdToken>>;
8
- mockedUser?: User;
2
+ export type ParamsOfCreateMockOidc<User, AutoLogin extends boolean> = {
3
+ user_mock?: User;
4
+ issuerUri_mock?: string;
5
+ clientId_mock?: string;
6
+ decodedIdToken_mock?: Oidc.Tokens.DecodedIdToken;
7
+ idToken_mock?: string;
8
+ accessToken_mock?: string;
9
+ accessTokenExpirationTime_mock?: number;
10
+ refreshToken_mock?: string;
11
+ refreshTokenExpirationTime_mock?: number;
9
12
  /**
10
13
  * The URL of the home page of your app.
11
14
  * We need to know this so we know where to redirect when you call `logout({ redirectTo: "home"})`.
@@ -20,4 +23,8 @@ export type ParamsOfCreateMockOidc<DecodedIdToken extends Record<string, unknown
20
23
  } : {
21
24
  isUserInitiallyLoggedIn: boolean;
22
25
  });
23
- export declare function createMockOidc<DecodedIdToken extends Record<string, unknown> = Oidc.Tokens.DecodedIdToken_OidcCoreSpec, AutoLogin extends boolean = false, User = never>(params: ParamsOfCreateMockOidc<DecodedIdToken, AutoLogin, User>): Promise<AutoLogin extends true ? Oidc.LoggedIn<DecodedIdToken, User> : Oidc<DecodedIdToken, User>>;
26
+ export declare const ClIENT_ID_MOCK_DEFAULT = "myclientmock";
27
+ export declare const ISSUER_URI_MOCK_DEFAULT = "https://auth.mycompany.com/realms/mymockrealm";
28
+ export declare const ACCESS_TOKEN_MOCK_DEFAULT = "mocked-access-token";
29
+ export declare const ID_TOKEN_MOCK_DEFAULT = "mocked-id-token";
30
+ export declare function createMockOidc<User = never, AutoLogin extends boolean = false>(params: ParamsOfCreateMockOidc<User, AutoLogin>): Promise<AutoLogin extends true ? Oidc.LoggedIn<User> : Oidc<User>>;
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ID_TOKEN_MOCK_DEFAULT = exports.ACCESS_TOKEN_MOCK_DEFAULT = exports.ISSUER_URI_MOCK_DEFAULT = exports.ClIENT_ID_MOCK_DEFAULT = void 0;
3
4
  exports.createMockOidc = createMockOidc;
4
5
  const createObjectThatThrowsIfAccessed_1 = require("../tools/createObjectThatThrowsIfAccessed");
5
6
  const id_1 = require("../tools/tsafe/id");
@@ -7,11 +8,16 @@ const toFullyQualifiedUrl_1 = require("../tools/toFullyQualifiedUrl");
7
8
  const urlSearchParams_1 = require("../tools/urlSearchParams");
8
9
  const earlyInit_rootRelativeOriginalLocationHref_1 = require("../core/earlyInit_rootRelativeOriginalLocationHref");
9
10
  const INFINITY_TIME_1 = require("../tools/INFINITY_TIME");
10
- const earlyInit_BASE_URL_1 = require("../core/earlyInit_BASE_URL");
11
+ const earlyInit_BASE_URL_1 = require("./earlyInit_BASE_URL");
12
+ const decodeJwt_1 = require("../tools/decodeJwt");
11
13
  const URL_SEARCH_PARAM_NAME = "isUserLoggedIn";
12
14
  const locationHref_moduleEvalTime = location.href;
15
+ exports.ClIENT_ID_MOCK_DEFAULT = "myclientmock";
16
+ exports.ISSUER_URI_MOCK_DEFAULT = "https://auth.mycompany.com/realms/mymockrealm";
17
+ exports.ACCESS_TOKEN_MOCK_DEFAULT = "mocked-access-token";
18
+ exports.ID_TOKEN_MOCK_DEFAULT = "mocked-id-token";
13
19
  async function createMockOidc(params) {
14
- const { isUserInitiallyLoggedIn = true, mockedParams = {}, mockedTokens = {}, autoLogin = false, postLoginRedirectUrl, mockedUser } = params;
20
+ const { user_mock, isUserInitiallyLoggedIn = true, issuerUri_mock, clientId_mock, decodedIdToken_mock, idToken_mock, accessToken_mock, accessTokenExpirationTime_mock, refreshToken_mock, refreshTokenExpirationTime_mock, autoLogin = false, postLoginRedirectUrl } = params;
15
21
  const BASE_URL_params = params.BASE_URL;
16
22
  const isUserLoggedIn = (() => {
17
23
  const { wasPresent, value } = (0, urlSearchParams_1.getSearchParam)({
@@ -49,8 +55,8 @@ async function createMockOidc(params) {
49
55
  doOutputWithTrailingSlash: true
50
56
  });
51
57
  const common = {
52
- clientId: mockedParams.clientId ?? "mymockclient",
53
- issuerUri: mockedParams.issuerUri ?? "https://my-mock-oidc-server.net/realms/mymockrealm",
58
+ clientId: clientId_mock ?? exports.ClIENT_ID_MOCK_DEFAULT,
59
+ issuerUri: issuerUri_mock ?? exports.ISSUER_URI_MOCK_DEFAULT,
54
60
  validRedirectUri: homeUrl
55
61
  };
56
62
  const loginOrGoToAuthServer = async (params) => {
@@ -95,32 +101,35 @@ async function createMockOidc(params) {
95
101
  renewTokens: async () => { },
96
102
  ...(() => {
97
103
  const tokens_common = {
98
- accessToken: mockedTokens.accessToken ?? "mocked-access-token",
99
- accessTokenExpirationTime: mockedTokens.accessTokenExpirationTime ?? INFINITY_TIME_1.INFINITY_TIME,
100
- idToken: mockedTokens.idToken ?? "mocked-id-token",
101
- decodedIdToken: mockedTokens.decodedIdToken ??
102
- (0, createObjectThatThrowsIfAccessed_1.createObjectThatThrowsIfAccessed)({
104
+ accessToken: accessToken_mock ?? exports.ACCESS_TOKEN_MOCK_DEFAULT,
105
+ accessTokenExpirationTime: accessTokenExpirationTime_mock ?? INFINITY_TIME_1.INFINITY_TIME,
106
+ idToken: idToken_mock ?? exports.ID_TOKEN_MOCK_DEFAULT,
107
+ decodedIdToken: (() => {
108
+ if (decodedIdToken_mock !== undefined) {
109
+ return decodedIdToken_mock;
110
+ }
111
+ if (idToken_mock !== undefined) {
112
+ try {
113
+ return (0, decodeJwt_1.decodeJwt)(idToken_mock);
114
+ }
115
+ catch { }
116
+ }
117
+ return (0, createObjectThatThrowsIfAccessed_1.createObjectThatThrowsIfAccessed)({
103
118
  debugMessage: [
104
119
  "You haven't provided a mocked decodedIdToken",
105
120
  "See https://docs.oidc-spa.dev/v/v10/integration-guides/usage#mock-adapter"
106
121
  ].join("\n")
107
- }),
108
- decodedIdToken_original: mockedTokens.decodedIdToken_original ??
109
- (0, createObjectThatThrowsIfAccessed_1.createObjectThatThrowsIfAccessed)({
110
- debugMessage: [
111
- "You haven't provided a mocked decodedIdToken_original",
112
- "See https://docs.oidc-spa.dev/v/v10/integration-guides/usage#mock-adapter"
113
- ].join("\n")
114
- }),
122
+ });
123
+ })(),
115
124
  issuedAtTime: Date.now(),
116
125
  getServerDateNow: () => Date.now()
117
126
  };
118
- const tokens = mockedTokens.refreshToken !== undefined || mockedTokens.hasRefreshToken === true
127
+ const tokens = refreshToken_mock !== undefined
119
128
  ? (0, id_1.id)({
120
129
  ...tokens_common,
121
130
  hasRefreshToken: true,
122
- refreshToken: mockedTokens.refreshToken ?? "mocked-refresh-token",
123
- refreshTokenExpirationTime: mockedTokens.refreshTokenExpirationTime
131
+ refreshToken: refreshToken_mock,
132
+ refreshTokenExpirationTime: refreshTokenExpirationTime_mock ?? INFINITY_TIME_1.INFINITY_TIME
124
133
  })
125
134
  : (0, id_1.id)({
126
135
  ...tokens_common,
@@ -128,6 +137,7 @@ async function createMockOidc(params) {
128
137
  });
129
138
  return {
130
139
  getTokens: () => Promise.resolve(tokens),
140
+ getAccessToken: () => Promise.resolve(tokens.accessToken),
131
141
  getDecodedIdToken: () => tokens_common.decodedIdToken
132
142
  };
133
143
  })(),
@@ -167,15 +177,15 @@ async function createMockOidc(params) {
167
177
  isNewBrowserSession: false,
168
178
  backFromAuthServer: undefined,
169
179
  getUser: () => {
170
- if (mockedUser === undefined) {
180
+ if (user_mock === undefined) {
171
181
  throw new Error("oidc-spa: No mock user provided");
172
182
  }
173
183
  return Promise.resolve({
174
- refreshUser: () => Promise.resolve(mockedUser),
184
+ refreshUser: () => Promise.resolve(user_mock),
175
185
  subscribeToUserChange: () => {
176
186
  return { unsubscribeFromUserChange: () => { } };
177
187
  },
178
- user: mockedUser
188
+ user: user_mock
179
189
  });
180
190
  }
181
191
  };
@@ -1 +1 @@
1
- {"version":3,"file":"createMockOidc.js","sourceRoot":"","sources":["../src/core/createMockOidc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"createMockOidc.js","sourceRoot":"","sources":["../src/core/createMockOidc.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,8 @@ import type { Oidc } from "./Oidc";
4
4
  import type { Evt } from "../tools/Evt";
5
5
  import type { ParamsOfCreateGetServerDateNow } from "../tools/getServerDateNow";
6
6
  import type { MaybeAsync } from "../tools/MaybeAsync";
7
- export type ParamsOfCreateOidc<DecodedIdToken extends Record<string, unknown> = Oidc.Tokens.DecodedIdToken_OidcCoreSpec, AutoLogin extends boolean = false, User = never> = {
7
+ import type { OidcUserInfo } from "../tools/OidcUserInfo";
8
+ export type ParamsOfCreateOidc<User, AutoLogin extends boolean> = {
8
9
  createUser?: ParamsOfCreateOidc.CreateUser<User>;
9
10
  /**
10
11
  * See: https://docs.oidc-spa.dev/v/v10/providers-configuration/provider-configuration
@@ -54,9 +55,6 @@ export type ParamsOfCreateOidc<DecodedIdToken extends Record<string, unknown> =
54
55
  * extraTokenParams: { selectedCustomer: "xxx" }
55
56
  */
56
57
  extraTokenParams?: Record<string, string | undefined> | (() => Record<string, string | undefined>);
57
- decodedIdTokenSchema?: {
58
- parse: (decodedIdToken_original: Oidc.Tokens.DecodedIdToken_OidcCoreSpec) => DecodedIdToken;
59
- };
60
58
  /**
61
59
  * This parameter defines after how many seconds of inactivity the user should be
62
60
  * logged out automatically.
@@ -189,12 +187,9 @@ export type ParamsOfCreateOidc<DecodedIdToken extends Record<string, unknown> =
189
187
  };
190
188
  export declare namespace ParamsOfCreateOidc {
191
189
  type CreateUser<User> = (params: {
192
- decodedIdToken: Oidc.Tokens.DecodedIdToken_OidcCoreSpec;
190
+ decodedIdToken: Oidc.Tokens.DecodedIdToken;
193
191
  accessToken: string;
194
- fetchUserInfo: () => Promise<{
195
- [key: string]: unknown;
196
- sub: string;
197
- }>;
192
+ fetchUserInfo: () => Promise<OidcUserInfo>;
198
193
  issuerUri: string;
199
194
  clientId: string;
200
195
  validRedirectUri: string;
@@ -257,10 +252,10 @@ export declare namespace Exports_DPoP {
257
252
  }
258
253
  export declare function registerExports_DPoP(exports: Exports_DPoP): void;
259
254
  /** @see: https://docs.oidc-spa.dev/v/v10/usage */
260
- export declare function createOidc<DecodedIdToken extends Record<string, unknown> = Oidc.Tokens.DecodedIdToken_OidcCoreSpec, AutoLogin extends boolean = false, User = never>(params: ParamsOfCreateOidc<DecodedIdToken, AutoLogin, User>): Promise<AutoLogin extends true ? Oidc.LoggedIn<DecodedIdToken, User> : Oidc<DecodedIdToken, User>>;
261
- export declare function createOidc_nonMemoized<DecodedIdToken extends Record<string, unknown>, AutoLogin extends boolean, User>(params: Omit<ParamsOfCreateOidc<DecodedIdToken, AutoLogin, User>, "issuerUri" | "clientId" | "debugLogs">, preProcessedParams: {
255
+ export declare function createOidc<User = never, AutoLogin extends boolean = false>(params: ParamsOfCreateOidc<User, AutoLogin>): Promise<AutoLogin extends true ? Oidc.LoggedIn<User> : Oidc<User>>;
256
+ export declare function createOidc_nonMemoized<User, AutoLogin extends boolean>(params: Omit<ParamsOfCreateOidc<User, AutoLogin>, "issuerUri" | "clientId" | "debugLogs">, preProcessedParams: {
262
257
  issuerUri: string;
263
258
  clientId: string;
264
259
  configId: string;
265
260
  log: typeof console.log | undefined;
266
- }): Promise<AutoLogin extends true ? Oidc.LoggedIn<DecodedIdToken, User> : Oidc<DecodedIdToken, User>>;
261
+ }): Promise<AutoLogin extends true ? Oidc.LoggedIn<User> : Oidc<User>>;
@@ -77,7 +77,7 @@ const loadWebcryptoLinerShim_1 = require("../tools/loadWebcryptoLinerShim");
77
77
  const lazySessionStorage_2 = require("../tools/lazySessionStorage");
78
78
  const createGetUser_1 = require("./createGetUser");
79
79
  // NOTE: Replaced at build time
80
- const VERSION = "10.3.0-rc.4";
80
+ const VERSION = "11.0.0-rc.2";
81
81
  const globalContext = {
82
82
  prOidcByConfigId: new Map(),
83
83
  hasLogoutBeenCalled: (0, id_1.id)(false),
@@ -151,7 +151,7 @@ async function createOidc(params) {
151
151
  return oidc;
152
152
  }
153
153
  async function createOidc_nonMemoized(params, preProcessedParams) {
154
- const { transformUrlBeforeRedirect, extraQueryParams: extraQueryParamsOrGetter, extraTokenParams: extraTokenParamsOrGetter, decodedIdTokenSchema, idleSessionLifetimeInSeconds, autoLogoutParams = { redirectTo: "current page" }, autoLogin = false, postLoginRedirectUrl: postLoginRedirectUrl_default, __unsafe_clientSecret, __unsafe_useIdTokenAsAccessToken = false, __metadata, disableDPoP: disableDPoP_params = false, sessionRestorationMethod: sessionRestorationMethod_params, BASE_URL: BASE_URL_params, createUser } = params;
154
+ const { transformUrlBeforeRedirect, extraQueryParams: extraQueryParamsOrGetter, extraTokenParams: extraTokenParamsOrGetter, idleSessionLifetimeInSeconds, autoLogoutParams = { redirectTo: "current page" }, autoLogin = false, postLoginRedirectUrl: postLoginRedirectUrl_default, __unsafe_clientSecret, __unsafe_useIdTokenAsAccessToken = false, __metadata, disableDPoP: disableDPoP_params = false, sessionRestorationMethod: sessionRestorationMethod_params, BASE_URL: BASE_URL_params, createUser } = params;
155
155
  const exports_earlyInit = await (async () => {
156
156
  const timer = window.setTimeout(() => {
157
157
  console.warn([
@@ -882,15 +882,13 @@ async function createOidc_nonMemoized(params, preProcessedParams) {
882
882
  (0, assert_1.assert)(oidcMetadata !== undefined, "30483403");
883
883
  const { oidcClientTsUserToTokens } = (0, oidcClientTsUserToTokens_1.createOidcClientTsUserToTokens)({
884
884
  configId,
885
- decodedIdTokenSchema,
886
885
  __unsafe_useIdTokenAsAccessToken,
887
886
  exports_DPoP: shouldEnableDPoP ? exports_DPoP : undefined,
888
887
  exports_tokenSubstitution,
889
888
  log
890
889
  });
891
890
  let currentTokens = oidcClientTsUserToTokens({
892
- oidcClientTsUser: resultOfLoginProcess.oidcClientTsUser,
893
- decodedIdToken_previous: undefined
891
+ oidcClientTsUser: resultOfLoginProcess.oidcClientTsUser
894
892
  });
895
893
  const onTokenChanges = new Set();
896
894
  const renewTokens = (() => {
@@ -1037,8 +1035,7 @@ async function createOidc_nonMemoized(params, preProcessedParams) {
1037
1035
  break;
1038
1036
  }
1039
1037
  currentTokens = oidcClientTsUserToTokens({
1040
- oidcClientTsUser,
1041
- decodedIdToken_previous: currentTokens.decodedIdToken
1038
+ oidcClientTsUser
1042
1039
  });
1043
1040
  if ((0, persistedAuthState_1.getPersistedAuthState)({ configId }) !== undefined) {
1044
1041
  (0, persistedAuthState_1.persistAuthState)({
@@ -1158,7 +1155,7 @@ async function createOidc_nonMemoized(params, preProcessedParams) {
1158
1155
  }
1159
1156
  }
1160
1157
  const autoLogoutCountdownTickCallbacks = new Set();
1161
- const { sid: sessionId, sub: subjectId } = currentTokens.decodedIdToken_original;
1158
+ const { sid: sessionId, sub: subjectId } = currentTokens.decodedIdToken;
1162
1159
  (0, assert_1.assert)(subjectId !== undefined, "The 'sub' claim is missing from the id token");
1163
1160
  (0, assert_1.assert)(sessionId === undefined || typeof sessionId === "string");
1164
1161
  let wouldHaveAutoLoggedOutIfBrowserWasOnline = false;
@@ -1196,6 +1193,10 @@ async function createOidc_nonMemoized(params, preProcessedParams) {
1196
1193
  return currentTokens;
1197
1194
  },
1198
1195
  getDecodedIdToken: () => currentTokens.decodedIdToken,
1196
+ getAccessToken: async () => {
1197
+ const { accessToken } = await oidc_loggedIn.getTokens();
1198
+ return accessToken;
1199
+ },
1199
1200
  logout: async (params) => {
1200
1201
  if (globalContext.hasLogoutBeenCalled) {
1201
1202
  log?.("logout() has already been called, ignoring the call");