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.
- package/core/createOidc.js +1 -1
- package/core/oidcClientTsUserToTokens.js +22 -15
- package/core/oidcClientTsUserToTokens.js.map +1 -1
- package/esm/core/createOidc.mjs +1 -1
- package/esm/core/oidcClientTsUserToTokens.mjs +22 -15
- package/esm/core/oidcClientTsUserToTokens.mjs.map +1 -1
- package/package.json +1 -1
- package/src/core/oidcClientTsUserToTokens.ts +35 -20
package/core/createOidc.js
CHANGED
|
@@ -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.
|
|
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
|
|
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
|
|
81
|
-
|
|
82
|
-
(0, assert_1.assert)(
|
|
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
|
|
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
|
|
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":";;AAUA,
|
|
1
|
+
{"version":3,"file":"oidcClientTsUserToTokens.js","sourceRoot":"","sources":["../src/core/oidcClientTsUserToTokens.ts"],"names":[],"mappings":"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"}
|
package/esm/core/createOidc.mjs
CHANGED
|
@@ -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.
|
|
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
|
|
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
|
|
78
|
-
|
|
79
|
-
assert(
|
|
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
|
|
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
|
|
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":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,EAAE,EAAE,MAAM,mBAAmB,CAAC;AACvC,OAAO,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAC3E,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAuC,MAAM,2BAA2B,CAAC;AAGxG,MAAM,UAAU,8BAA8B,CAAiD,MAW9F;IACG,MAAM,EACF,QAAQ,EACR,oBAAoB,EACpB,gCAAgC,EAChC,YAAY,EACZ,yBAAyB,EACzB,GAAG,EACN,GAAG,MAAM,CAAC;IAEX,SAAS,wBAAwB,CAAC,MAGjC;QACG,MAAM,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,GAAG,MAAM,CAAC;QAE7D,MAAM,WAAW,GAAG,uBAAuB,KAAK,SAAS,CAAC;QAE1D,MAAM,WAAW,GAAG,gBAAgB,CAAC,YAAY,CAAC;QAElD,MAAM,YAAY,GAAG,gBAAgB,CAAC,aAAa,CAAC;QAEpD,MAAM,OAAO,GAAG,gBAAgB,CAAC,QAAQ,CAAC;QAE1C,MAAM,CAAC,OAAO,KAAK,SAAS,EAAE,yCAAyC,CAAC,CAAC;QAEzE,MAAM,uBAAuB,GAAG,SAAS,CAA0C,OAAO,CAAC,CAAC;QAE5F,IAAI,WAAW,EAAE,CAAC;YACd,GAAG,EAAE,CACD;gBACI,kBAAkB;gBAClB,oBAAoB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,0CAA0C;gBACpF,IAAI,CAAC,SAAS,CAAC,uBAAuB,EAAE,IAAI,EAAE,CAAC,CAAC;aACnD,CAAC,IAAI,CAAC,EAAE,CAAC,CACb,CAAC;QACN,CAAC;QAED,MAAM,cAAc,GAAG,CAAC,GAAG,EAAE;YACzB,IAAI,cAA8B,CAAC;YAEnC,IAAI,oBAAoB,KAAK,SAAS,EAAE,CAAC;gBACrC,cAAc,GAAG,oBAAoB,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;gBAErE,IAAI,WAAW,EAAE,CAAC;oBACd,GAAG,EAAE,CACD;wBACI,yDAAyD;wBACzD,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC;qBAC1C,CAAC,IAAI,CAAC,EAAE,CAAC,CACb,CAAC;gBACN,CAAC;YACL,CAAC;iBAAM,CAAC;gBACJ,mBAAmB;gBACnB,cAAc,GAAG,uBAAuB,CAAC;YAC7C,CAAC;YAED,IACI,uBAAuB,KAAK,SAAS;gBACrC,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,uBAAuB,CAAC,EAC5E,CAAC;gBACC,2EAA2E;gBAC3E,OAAO,uBAAuB,CAAC;YACnC,CAAC;YAED,OAAO,cAAc,CAAC;QAC1B,CAAC,CAAC,EAAE,CAAC;QAEL,MAAM,YAAY,GAAG,CAAC,GAAG,EAAE;YACvB,IAAI,YAAY,GAAG,CAAC,GAAG,EAAE;gBACrB,IAAI,GAAuB,CAAC;gBAE5B,IAAI,CAAC;oBACD,MAAM,cAAc,GAAG,
|
|
1
|
+
{"version":3,"file":"oidcClientTsUserToTokens.mjs","sourceRoot":"","sources":["../../src/core/oidcClientTsUserToTokens.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,EAAE,EAAE,MAAM,mBAAmB,CAAC;AACvC,OAAO,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAC3E,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAuC,MAAM,2BAA2B,CAAC;AAGxG,MAAM,UAAU,8BAA8B,CAAiD,MAW9F;IACG,MAAM,EACF,QAAQ,EACR,oBAAoB,EACpB,gCAAgC,EAChC,YAAY,EACZ,yBAAyB,EACzB,GAAG,EACN,GAAG,MAAM,CAAC;IAEX,SAAS,wBAAwB,CAAC,MAGjC;QACG,MAAM,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,GAAG,MAAM,CAAC;QAE7D,MAAM,WAAW,GAAG,uBAAuB,KAAK,SAAS,CAAC;QAE1D,MAAM,WAAW,GAAG,gBAAgB,CAAC,YAAY,CAAC;QAElD,MAAM,YAAY,GAAG,gBAAgB,CAAC,aAAa,CAAC;QAEpD,MAAM,OAAO,GAAG,gBAAgB,CAAC,QAAQ,CAAC;QAE1C,MAAM,CAAC,OAAO,KAAK,SAAS,EAAE,yCAAyC,CAAC,CAAC;QAEzE,MAAM,uBAAuB,GAAG,SAAS,CAA0C,OAAO,CAAC,CAAC;QAE5F,IAAI,WAAW,EAAE,CAAC;YACd,GAAG,EAAE,CACD;gBACI,kBAAkB;gBAClB,oBAAoB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,0CAA0C;gBACpF,IAAI,CAAC,SAAS,CAAC,uBAAuB,EAAE,IAAI,EAAE,CAAC,CAAC;aACnD,CAAC,IAAI,CAAC,EAAE,CAAC,CACb,CAAC;QACN,CAAC;QAED,MAAM,cAAc,GAAG,CAAC,GAAG,EAAE;YACzB,IAAI,cAA8B,CAAC;YAEnC,IAAI,oBAAoB,KAAK,SAAS,EAAE,CAAC;gBACrC,cAAc,GAAG,oBAAoB,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;gBAErE,IAAI,WAAW,EAAE,CAAC;oBACd,GAAG,EAAE,CACD;wBACI,yDAAyD;wBACzD,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC;qBAC1C,CAAC,IAAI,CAAC,EAAE,CAAC,CACb,CAAC;gBACN,CAAC;YACL,CAAC;iBAAM,CAAC;gBACJ,mBAAmB;gBACnB,cAAc,GAAG,uBAAuB,CAAC;YAC7C,CAAC;YAED,IACI,uBAAuB,KAAK,SAAS;gBACrC,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,uBAAuB,CAAC,EAC5E,CAAC;gBACC,2EAA2E;gBAC3E,OAAO,uBAAuB,CAAC;YACnC,CAAC;YAED,OAAO,cAAc,CAAC;QAC1B,CAAC,CAAC,EAAE,CAAC;QAEL,MAAM,YAAY,GAAG,CAAC,GAAG,EAAE;YACvB,IAAI,YAAY,GAAG,CAAC,GAAG,EAAE;gBACrB,IAAI,GAAuB,CAAC;gBAE5B,IAAI,CAAC;oBACD,MAAM,cAAc,GAAG,QAAQ,CAAC,uBAAuB,CAAC,GAAG,CAAC,CAAC;oBAC7D,GAAG,GAAG,cAAc,CAAC;gBACzB,CAAC;gBAAC,MAAM,CAAC;oBACL,GAAG,GAAG,SAAS,CAAC;gBACpB,CAAC;gBAED,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;oBACpB,OAAO,SAAS,CAAC;gBACrB,CAAC;gBAED,OAAO,GAAG,CAAC;YACf,CAAC,CAAC,EAAE,CAAC;YAEL,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;gBAC7B,OAAO,gBAAgB,CAAC,mCAAmC,CAAC;YAChE,CAAC;YAED,0BAA0B,EAAE,CAAC;gBACzB,0DAA0D;gBAE1D,MAAM,UAAU,GAAG,QAAQ,CAAC,gBAAgB,CAAC,wBAAwB,CAAC,YAAY,CAAC,CAAC,CAAC;gBAErF,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;oBAC3B,MAAM,0BAA0B,CAAC;gBACrC,CAAC;gBAED,IAAI,gBAAwB,CAAC;gBAC7B,IAAI,gBAAwB,CAAC;gBAE7B,IAAI,CAAC;oBACD,MAAM,kBAAkB,GAAG,SAAS,CAA0B,WAAW,CAAC,CAAC;oBAE3E,MAAM,CAAC,kBAAkB,YAAY,MAAM,CAAC,CAAC;oBAE7C,MAAM,GAAG,GAAG,QAAQ,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC;oBAChD,MAAM,GAAG,GAAG,QAAQ,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC;oBAEhD,MAAM,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC;oBAC1B,MAAM,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC;oBAE1B,gBAAgB,GAAG,GAAG,CAAC;oBACvB,gBAAgB,GAAG,GAAG,CAAC;gBAC3B,CAAC;gBAAC,MAAM,CAAC;oBACL,MAAM,0BAA0B,CAAC;gBACrC,CAAC;gBAED,MAAM,uBAAuB,GAAG,gBAAgB,GAAG,gBAAgB,CAAC;gBAEpE,MAAM,gBAAgB,GAAG,uBAAuB,GAAG,UAAU,CAAC;gBAE9D,YAAY,IAAI,gBAAgB,CAAC;YACrC,CAAC;YAED,OAAO,YAAY,GAAG,IAAI,CAAC;QAC/B,CAAC,CAAC,EAAE,CAAC;QAEL,MAAM,8BAA8B,GAAmC;YACnE,kBAAkB,EAAE,gBAAgB,CAAC,mCAAmC;YACxE,YAAY;SACf,CAAC;QAEF,MAAM,aAAa,GAAuC;YACtD,GAAG,CAAC,gCAAgC;gBAChC,CAAC,CAAC;oBACI,WAAW,EAAE,OAAO;oBACpB,yBAAyB,EAAE,CAAC,GAAG,EAAE;wBAC7B,MAAM,cAAc,GAAG,uBAAuB,CAAC,OAAO,CAAC,CAAC;wBAExD,MAAM,CACF,cAAc,KAAK,SAAS,EAC5B,oGAAoG,CACvG,CAAC;wBAEF,OAAO,cAAc,CAAC;oBAC1B,CAAC,CAAC,EAAE;iBACP;gBACH,CAAC,CAAC;oBACI,WAAW;oBACX,yBAAyB,EAAE,CAAC,GAAG,EAAE;wBAC7B,aAAa,EAAE,CAAC;4BACZ,MAAM,cAAc,GAAG,uBAAuB,CAAC,WAAW,CAAC,CAAC;4BAE5D,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;gCAC/B,MAAM,aAAa,CAAC;4BACxB,CAAC;4BAED,OAAO,cAAc,CAAC;wBAC1B,CAAC;wBAED,mCAAmC,EAAE,CAAC;4BAClC,MAAM,UAAU,GAAG,QAAQ,CACvB,gBAAgB,CAAC,wBAAwB,CAAC,YAAY,CAAC,CAC1D,CAAC;4BAEF,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;gCAC3B,MAAM,mCAAmC,CAAC;4BAC9C,CAAC;4BAED,OAAO,UAAU,GAAG,IAAI,CAAC;wBAC7B,CAAC;wBAED,mCAAmC,EAAE,CAAC;4BAClC,MAAM,UAAU,GAAG,QAAQ,CACvB,gBAAgB,CAAC,wBAAwB,CAAC,YAAY,CAAC,CAC1D,CAAC;4BAEF,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;gCAC3B,MAAM,mCAAmC,CAAC;4BAC9C,CAAC;4BAED,OAAO,YAAY,GAAG,UAAU,GAAG,IAAK,CAAC;wBAC7C,CAAC;wBAED,MAAM,CAAC,KAAK,EAAE,4CAA4C,CAAC,CAAC;oBAChE,CAAC,CAAC,EAAE;iBACP,CAAC;YACR,OAAO;YACP,cAAc;YACd,uBAAuB;YACvB,YAAY;YACZ,gBAAgB,EAAE,sBAAsB,CAAC,8BAA8B,CAAC;SAC3E,CAAC;QAEF,MAAM,MAAM,GACR,YAAY,KAAK,SAAS;YACtB,CAAC,CAAC,EAAE,CAAkD;gBAChD,GAAG,aAAa;gBAChB,eAAe,EAAE,KAAK;aACzB,CAAC;YACJ,CAAC,CAAC,EAAE,CAA+C;gBAC7C,GAAG,aAAa;gBAChB,eAAe,EAAE,IAAI;gBACrB,YAAY;gBACZ,0BAA0B,EAAE,CAAC,GAAG,EAAE;oBAC9B,KAAK,MAAM,YAAY,IAAI;wBACvB,oBAAoB;wBACpB,0BAA0B;qBACpB,EAAE,CAAC;wBACT,MAAM,SAAS,GAAG,QAAQ,CACtB,gBAAgB,CAAC,wBAAwB,CAAC,YAAY,CAAC,CAC1D,CAAC;wBAEF,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;4BAC1B,SAAS;wBACb,CAAC;wBAED,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;4BAClB,OAAO,aAAa,CAAC;wBACzB,CAAC;wBAED,OAAO,SAAS,GAAG,IAAI,CAAC;oBAC5B,CAAC;oBAED,KAAK,MAAM,YAAY,IAAI;wBACvB,oBAAoB;wBACpB,0BAA0B;qBACpB,EAAE,CAAC;wBACT,MAAM,SAAS,GAAG,QAAQ,CACtB,gBAAgB,CAAC,wBAAwB,CAAC,YAAY,CAAC,CAC1D,CAAC;wBAEF,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;4BAC1B,SAAS;wBACb,CAAC;wBAED,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;4BAClB,OAAO,aAAa,CAAC;wBACzB,CAAC;wBAED,OAAO,YAAY,GAAG,SAAS,GAAG,IAAI,CAAC;oBAC3C,CAAC;oBAED,aAAa,EAAE,CAAC;wBACZ,MAAM,cAAc,GAAG,uBAAuB,CAAC,YAAY,CAAC,CAAC;wBAE7D,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;4BAC/B,MAAM,aAAa,CAAC;wBACxB,CAAC;wBAED,OAAO,cAAc,CAAC;oBAC1B,CAAC;oBAED,OAAO,SAAS,CAAC;gBACrB,CAAC,CAAC,EAAE;aACP,CAAC,CAAC;QAEb,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YAC7B,YAAY,CAAC,0BAA0B,CAAC;gBACpC,QAAQ;gBACR,WAAW,EAAE,MAAM,CAAC,WAAW;gBAC/B,8BAA8B;aACjC,CAAC,CAAC;QACP,CAAC;QAED,IAAI,yBAAyB,KAAK,SAAS,EAAE,CAAC;YAC1C,MAAM,YAAY,GAAG,yBAAyB,CAAC,qBAAqB,CAAC;gBACjE,QAAQ;gBACR,MAAM;aACT,CAAC,CAAC;YAEH,MAAM,CAAC,WAAW,GAAG,YAAY,CAAC,WAAW,CAAC;YAC9C,MAAM,CAAC,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC;YACtC,MAAM,CAAC,YAAY,GAAG,YAAY,CAAC,YAAY,CAAC;QACpD,CAAC;QAED,IACI,WAAW;YACX,MAAM,CAAC,eAAe;YACtB,MAAM,CAAC,0BAA0B,KAAK,SAAS;YAC/C,MAAM,CAAC,0BAA0B,GAAG,MAAM,CAAC,yBAAyB,EACtE,CAAC;YACC,OAAO,CAAC,IAAI,CACR;gBACI,oFAAoF;gBACpF,uDAAuD;aAC1D,CAAC,IAAI,CAAC,GAAG,CAAC,CACd,CAAC;QACN,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,OAAO,EAAE,wBAAwB,EAAE,CAAC;AACxC,CAAC;AAED,SAAS,QAAQ,CAAC,CAAU;IACxB,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;QAChC,OAAO,SAAS,CAAC;IACrB,CAAC;IACD,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;QACxB,MAAM,GAAG,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QAE1B,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC;QAEpC,OAAO,GAAG,CAAC;IACf,CAAC;IAED,MAAM,CAAC,OAAO,CAAC,KAAK,QAAQ,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC;IAE9C,OAAO,CAAC,CAAC;AACb,CAAC"}
|
package/package.json
CHANGED
|
@@ -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
|
|
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
|
|
129
|
+
const iat = toNumber(decodedAccessToken["iat"]);
|
|
130
|
+
const exp = toNumber(decodedAccessToken["exp"]);
|
|
133
131
|
|
|
134
|
-
assert(
|
|
135
|
-
assert(
|
|
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
|
|
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
|
|
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 =
|
|
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 =
|
|
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
|
+
}
|