oidc-spa 10.2.2 → 10.2.3

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.
@@ -76,7 +76,7 @@ const StateDataCookie_1 = require("./StateDataCookie");
76
76
  const loadWebcryptoLinerShim_1 = require("../tools/loadWebcryptoLinerShim");
77
77
  const lazySessionStorage_2 = require("../tools/lazySessionStorage");
78
78
  // NOTE: Replaced at build time
79
- const VERSION = "10.2.2";
79
+ const VERSION = "10.2.3";
80
80
  const globalContext = {
81
81
  prOidcByConfigId: new Map(),
82
82
  hasLogoutBeenCalled: (0, id_1.id)(false),
@@ -50,8 +50,7 @@ function createOidcClientTsUserToTokens(params) {
50
50
  let id_token_iat = (() => {
51
51
  let iat;
52
52
  try {
53
- const iat_claimValue = decodedIdToken_original.iat;
54
- (0, assert_1.assert)(iat_claimValue === undefined || typeof iat_claimValue === "number");
53
+ const iat_claimValue = toNumber(decodedIdToken_original.iat);
55
54
  iat = iat_claimValue;
56
55
  }
57
56
  catch {
@@ -67,19 +66,19 @@ function createOidcClientTsUserToTokens(params) {
67
66
  }
68
67
  correct_entra_builtin_skew: {
69
68
  // See: https://github.com/keycloakify/oidc-spa/issues/162
70
- const { expires_in } = oidcClientTsUser.__oidc_spa_tokenResponse;
69
+ const expires_in = toNumber(oidcClientTsUser.__oidc_spa_tokenResponse["expires_in"]);
71
70
  if (expires_in === undefined) {
72
71
  break correct_entra_builtin_skew;
73
72
  }
74
- (0, assert_1.assert)(typeof expires_in === "number", "203333425");
75
73
  let access_token_iat;
76
74
  let access_token_exp;
77
75
  try {
78
76
  const decodedAccessToken = (0, decodeJwt_1.decodeJwt)(accessToken);
79
77
  (0, assert_1.assert)(decodedAccessToken instanceof Object);
80
- const { iat, exp } = decodedAccessToken;
81
- (0, assert_1.assert)(typeof iat === "number");
82
- (0, assert_1.assert)(typeof exp === "number");
78
+ const iat = toNumber(decodedAccessToken["iat"]);
79
+ const exp = toNumber(decodedAccessToken["exp"]);
80
+ (0, assert_1.assert)(iat !== undefined);
81
+ (0, assert_1.assert)(exp !== undefined);
83
82
  access_token_iat = iat;
84
83
  access_token_exp = exp;
85
84
  }
@@ -117,19 +116,17 @@ function createOidcClientTsUserToTokens(params) {
117
116
  return expirationTime;
118
117
  }
119
118
  read_from_token_response_expires_at: {
120
- const { expires_at } = oidcClientTsUser.__oidc_spa_tokenResponse;
119
+ const expires_at = toNumber(oidcClientTsUser.__oidc_spa_tokenResponse["expires_at"]);
121
120
  if (expires_at === undefined) {
122
121
  break read_from_token_response_expires_at;
123
122
  }
124
- (0, assert_1.assert)(typeof expires_at === "number", "2033392");
125
123
  return expires_at * 1000;
126
124
  }
127
125
  read_from_token_response_expires_in: {
128
- const { expires_in } = oidcClientTsUser.__oidc_spa_tokenResponse;
126
+ const expires_in = toNumber(oidcClientTsUser.__oidc_spa_tokenResponse["expires_in"]);
129
127
  if (expires_in === undefined) {
130
128
  break read_from_token_response_expires_in;
131
129
  }
132
- (0, assert_1.assert)(typeof expires_in === "number", "203333425");
133
130
  return issuedAtTime + expires_in * 1000;
134
131
  }
135
132
  (0, assert_1.assert)(false, "Failed to get access token expiration time");
@@ -155,11 +152,10 @@ function createOidcClientTsUserToTokens(params) {
155
152
  "refresh_expires_at",
156
153
  "refresh_token_expires_at"
157
154
  ]) {
158
- const expiresAt = oidcClientTsUser.__oidc_spa_tokenResponse[propertyName];
155
+ const expiresAt = toNumber(oidcClientTsUser.__oidc_spa_tokenResponse[propertyName]);
159
156
  if (expiresAt === undefined) {
160
157
  continue;
161
158
  }
162
- (0, assert_1.assert)(typeof expiresAt === "number", "2033392");
163
159
  if (expiresAt === 0) {
164
160
  return INFINITY_TIME_1.INFINITY_TIME;
165
161
  }
@@ -169,11 +165,10 @@ function createOidcClientTsUserToTokens(params) {
169
165
  "refresh_expires_in",
170
166
  "refresh_token_expires_in"
171
167
  ]) {
172
- const expiresIn = oidcClientTsUser.__oidc_spa_tokenResponse[propertyName];
168
+ const expiresIn = toNumber(oidcClientTsUser.__oidc_spa_tokenResponse[propertyName]);
173
169
  if (expiresIn === undefined) {
174
170
  continue;
175
171
  }
176
- (0, assert_1.assert)(typeof expiresIn === "number", "2033425330");
177
172
  if (expiresIn === 0) {
178
173
  return INFINITY_TIME_1.INFINITY_TIME;
179
174
  }
@@ -218,4 +213,16 @@ function createOidcClientTsUserToTokens(params) {
218
213
  }
219
214
  return { oidcClientTsUserToTokens };
220
215
  }
216
+ function toNumber(v) {
217
+ if (v === undefined || v === null) {
218
+ return undefined;
219
+ }
220
+ if (typeof v === "string") {
221
+ const v_n = parseFloat(v);
222
+ (0, assert_1.assert)(!isNaN(v_n), `3922033 ${v}`);
223
+ return v_n;
224
+ }
225
+ (0, assert_1.assert)(typeof v === "number", `2932202 ${v}`);
226
+ return v;
227
+ }
221
228
  //# sourceMappingURL=oidcClientTsUserToTokens.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"oidcClientTsUserToTokens.js","sourceRoot":"","sources":["../src/core/oidcClientTsUserToTokens.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oidcClientTsUserToTokens.js","sourceRoot":"","sources":["../src/core/oidcClientTsUserToTokens.ts"],"names":[],"mappings":"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"}
@@ -36,7 +36,7 @@ import { setStateDataCookieIfEnabled, clearStateDataCookie, getIsStateDataCookie
36
36
  import { loadWebcryptoLinerShim, hasLoadWebcryptoLinerShimBeenCalled } from "../tools/loadWebcryptoLinerShim.mjs";
37
37
  import { SESSION_STORAGE_GLOBAL_PREFIX } from "../tools/lazySessionStorage.mjs";
38
38
  // NOTE: Replaced at build time
39
- const VERSION = "10.2.2";
39
+ const VERSION = "10.2.3";
40
40
  const globalContext = {
41
41
  prOidcByConfigId: new Map(),
42
42
  hasLogoutBeenCalled: id(false),
@@ -47,8 +47,7 @@ export function createOidcClientTsUserToTokens(params) {
47
47
  let id_token_iat = (() => {
48
48
  let iat;
49
49
  try {
50
- const iat_claimValue = decodedIdToken_original.iat;
51
- assert(iat_claimValue === undefined || typeof iat_claimValue === "number");
50
+ const iat_claimValue = toNumber(decodedIdToken_original.iat);
52
51
  iat = iat_claimValue;
53
52
  }
54
53
  catch {
@@ -64,19 +63,19 @@ export function createOidcClientTsUserToTokens(params) {
64
63
  }
65
64
  correct_entra_builtin_skew: {
66
65
  // See: https://github.com/keycloakify/oidc-spa/issues/162
67
- const { expires_in } = oidcClientTsUser.__oidc_spa_tokenResponse;
66
+ const expires_in = toNumber(oidcClientTsUser.__oidc_spa_tokenResponse["expires_in"]);
68
67
  if (expires_in === undefined) {
69
68
  break correct_entra_builtin_skew;
70
69
  }
71
- assert(typeof expires_in === "number", "203333425");
72
70
  let access_token_iat;
73
71
  let access_token_exp;
74
72
  try {
75
73
  const decodedAccessToken = decodeJwt(accessToken);
76
74
  assert(decodedAccessToken instanceof Object);
77
- const { iat, exp } = decodedAccessToken;
78
- assert(typeof iat === "number");
79
- assert(typeof exp === "number");
75
+ const iat = toNumber(decodedAccessToken["iat"]);
76
+ const exp = toNumber(decodedAccessToken["exp"]);
77
+ assert(iat !== undefined);
78
+ assert(exp !== undefined);
80
79
  access_token_iat = iat;
81
80
  access_token_exp = exp;
82
81
  }
@@ -114,19 +113,17 @@ export function createOidcClientTsUserToTokens(params) {
114
113
  return expirationTime;
115
114
  }
116
115
  read_from_token_response_expires_at: {
117
- const { expires_at } = oidcClientTsUser.__oidc_spa_tokenResponse;
116
+ const expires_at = toNumber(oidcClientTsUser.__oidc_spa_tokenResponse["expires_at"]);
118
117
  if (expires_at === undefined) {
119
118
  break read_from_token_response_expires_at;
120
119
  }
121
- assert(typeof expires_at === "number", "2033392");
122
120
  return expires_at * 1000;
123
121
  }
124
122
  read_from_token_response_expires_in: {
125
- const { expires_in } = oidcClientTsUser.__oidc_spa_tokenResponse;
123
+ const expires_in = toNumber(oidcClientTsUser.__oidc_spa_tokenResponse["expires_in"]);
126
124
  if (expires_in === undefined) {
127
125
  break read_from_token_response_expires_in;
128
126
  }
129
- assert(typeof expires_in === "number", "203333425");
130
127
  return issuedAtTime + expires_in * 1000;
131
128
  }
132
129
  assert(false, "Failed to get access token expiration time");
@@ -152,11 +149,10 @@ export function createOidcClientTsUserToTokens(params) {
152
149
  "refresh_expires_at",
153
150
  "refresh_token_expires_at"
154
151
  ]) {
155
- const expiresAt = oidcClientTsUser.__oidc_spa_tokenResponse[propertyName];
152
+ const expiresAt = toNumber(oidcClientTsUser.__oidc_spa_tokenResponse[propertyName]);
156
153
  if (expiresAt === undefined) {
157
154
  continue;
158
155
  }
159
- assert(typeof expiresAt === "number", "2033392");
160
156
  if (expiresAt === 0) {
161
157
  return INFINITY_TIME;
162
158
  }
@@ -166,11 +162,10 @@ export function createOidcClientTsUserToTokens(params) {
166
162
  "refresh_expires_in",
167
163
  "refresh_token_expires_in"
168
164
  ]) {
169
- const expiresIn = oidcClientTsUser.__oidc_spa_tokenResponse[propertyName];
165
+ const expiresIn = toNumber(oidcClientTsUser.__oidc_spa_tokenResponse[propertyName]);
170
166
  if (expiresIn === undefined) {
171
167
  continue;
172
168
  }
173
- assert(typeof expiresIn === "number", "2033425330");
174
169
  if (expiresIn === 0) {
175
170
  return INFINITY_TIME;
176
171
  }
@@ -215,4 +210,16 @@ export function createOidcClientTsUserToTokens(params) {
215
210
  }
216
211
  return { oidcClientTsUserToTokens };
217
212
  }
213
+ function toNumber(v) {
214
+ if (v === undefined || v === null) {
215
+ return undefined;
216
+ }
217
+ if (typeof v === "string") {
218
+ const v_n = parseFloat(v);
219
+ assert(!isNaN(v_n), `3922033 ${v}`);
220
+ return v_n;
221
+ }
222
+ assert(typeof v === "number", `2932202 ${v}`);
223
+ return v;
224
+ }
218
225
  //# sourceMappingURL=oidcClientTsUserToTokens.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"oidcClientTsUserToTokens.mjs","sourceRoot":"","sources":["../../src/core/oidcClientTsUserToTokens.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oidcClientTsUserToTokens.mjs","sourceRoot":"","sources":["../../src/core/oidcClientTsUserToTokens.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "oidc-spa",
3
- "version": "10.2.2",
3
+ "version": "10.2.3",
4
4
  "description": "OpenID Connect / OAuth2 solution for client-first Web Applications",
5
5
  "repository": {
6
6
  "type": "git",
@@ -92,8 +92,7 @@ export function createOidcClientTsUserToTokens<DecodedIdToken extends Record<str
92
92
  let iat: number | undefined;
93
93
 
94
94
  try {
95
- const iat_claimValue = decodedIdToken_original.iat;
96
- assert(iat_claimValue === undefined || typeof iat_claimValue === "number");
95
+ const iat_claimValue = toNumber(decodedIdToken_original.iat);
97
96
  iat = iat_claimValue;
98
97
  } catch {
99
98
  iat = undefined;
@@ -113,14 +112,12 @@ export function createOidcClientTsUserToTokens<DecodedIdToken extends Record<str
113
112
  correct_entra_builtin_skew: {
114
113
  // See: https://github.com/keycloakify/oidc-spa/issues/162
115
114
 
116
- const { expires_in } = oidcClientTsUser.__oidc_spa_tokenResponse;
115
+ const expires_in = toNumber(oidcClientTsUser.__oidc_spa_tokenResponse["expires_in"]);
117
116
 
118
117
  if (expires_in === undefined) {
119
118
  break correct_entra_builtin_skew;
120
119
  }
121
120
 
122
- assert(typeof expires_in === "number", "203333425");
123
-
124
121
  let access_token_iat: number;
125
122
  let access_token_exp: number;
126
123
 
@@ -129,10 +126,11 @@ export function createOidcClientTsUserToTokens<DecodedIdToken extends Record<str
129
126
 
130
127
  assert(decodedAccessToken instanceof Object);
131
128
 
132
- const { iat, exp } = decodedAccessToken;
129
+ const iat = toNumber(decodedAccessToken["iat"]);
130
+ const exp = toNumber(decodedAccessToken["exp"]);
133
131
 
134
- assert(typeof iat === "number");
135
- assert(typeof exp === "number");
132
+ assert(iat !== undefined);
133
+ assert(exp !== undefined);
136
134
 
137
135
  access_token_iat = iat;
138
136
  access_token_exp = exp;
@@ -184,26 +182,26 @@ export function createOidcClientTsUserToTokens<DecodedIdToken extends Record<str
184
182
  }
185
183
 
186
184
  read_from_token_response_expires_at: {
187
- const { expires_at } = oidcClientTsUser.__oidc_spa_tokenResponse;
185
+ const expires_at = toNumber(
186
+ oidcClientTsUser.__oidc_spa_tokenResponse["expires_at"]
187
+ );
188
188
 
189
189
  if (expires_at === undefined) {
190
190
  break read_from_token_response_expires_at;
191
191
  }
192
192
 
193
- assert(typeof expires_at === "number", "2033392");
194
-
195
193
  return expires_at * 1000;
196
194
  }
197
195
 
198
196
  read_from_token_response_expires_in: {
199
- const { expires_in } = oidcClientTsUser.__oidc_spa_tokenResponse;
197
+ const expires_in = toNumber(
198
+ oidcClientTsUser.__oidc_spa_tokenResponse["expires_in"]
199
+ );
200
200
 
201
201
  if (expires_in === undefined) {
202
202
  break read_from_token_response_expires_in;
203
203
  }
204
204
 
205
- assert(typeof expires_in === "number", "203333425");
206
-
207
205
  return issuedAtTime + expires_in * 1_000;
208
206
  }
209
207
 
@@ -232,14 +230,14 @@ export function createOidcClientTsUserToTokens<DecodedIdToken extends Record<str
232
230
  "refresh_expires_at",
233
231
  "refresh_token_expires_at"
234
232
  ] as const) {
235
- const expiresAt = oidcClientTsUser.__oidc_spa_tokenResponse[propertyName];
233
+ const expiresAt = toNumber(
234
+ oidcClientTsUser.__oidc_spa_tokenResponse[propertyName]
235
+ );
236
236
 
237
237
  if (expiresAt === undefined) {
238
238
  continue;
239
239
  }
240
240
 
241
- assert(typeof expiresAt === "number", "2033392");
242
-
243
241
  if (expiresAt === 0) {
244
242
  return INFINITY_TIME;
245
243
  }
@@ -251,14 +249,14 @@ export function createOidcClientTsUserToTokens<DecodedIdToken extends Record<str
251
249
  "refresh_expires_in",
252
250
  "refresh_token_expires_in"
253
251
  ] as const) {
254
- const expiresIn = oidcClientTsUser.__oidc_spa_tokenResponse[propertyName];
252
+ const expiresIn = toNumber(
253
+ oidcClientTsUser.__oidc_spa_tokenResponse[propertyName]
254
+ );
255
255
 
256
256
  if (expiresIn === undefined) {
257
257
  continue;
258
258
  }
259
259
 
260
- assert(typeof expiresIn === "number", "2033425330");
261
-
262
260
  if (expiresIn === 0) {
263
261
  return INFINITY_TIME;
264
262
  }
@@ -318,3 +316,20 @@ export function createOidcClientTsUserToTokens<DecodedIdToken extends Record<str
318
316
 
319
317
  return { oidcClientTsUserToTokens };
320
318
  }
319
+
320
+ function toNumber(v: unknown): number | undefined {
321
+ if (v === undefined || v === null) {
322
+ return undefined;
323
+ }
324
+ if (typeof v === "string") {
325
+ const v_n = parseFloat(v);
326
+
327
+ assert(!isNaN(v_n), `3922033 ${v}`);
328
+
329
+ return v_n;
330
+ }
331
+
332
+ assert(typeof v === "number", `2932202 ${v}`);
333
+
334
+ return v;
335
+ }