oidc-spa 6.6.1 → 6.7.0

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.
@@ -70,11 +70,11 @@ function getPrSafelyRestoredFromBfCacheAfterLoginBackNavigation() {
70
70
  return dOut.pr;
71
71
  }
72
72
  function createLoginOrGoToAuthServer(params) {
73
- var configId = params.configId, oidcClientTsUserManager = params.oidcClientTsUserManager, getExtraQueryParams = params.getExtraQueryParams, transformUrlBeforeRedirect = params.transformUrlBeforeRedirect, homeAndCallbackUrl = params.homeAndCallbackUrl, evtIsUserLoggedIn = params.evtIsUserLoggedIn, log = params.log;
73
+ var configId = params.configId, oidcClientTsUserManager = params.oidcClientTsUserManager, transformUrlBeforeRedirect = params.transformUrlBeforeRedirect, transformUrlBeforeRedirect_next = params.transformUrlBeforeRedirect_next, getExtraQueryParams = params.getExtraQueryParams, getExtraTokenParams = params.getExtraTokenParams, homeAndCallbackUrl = params.homeAndCallbackUrl, evtIsUserLoggedIn = params.evtIsUserLoggedIn, log = params.log;
74
74
  var LOCAL_STORAGE_KEY_TO_CLEAR_WHEN_USER_LOGGED_IN = "oidc-spa.login-redirect-initiated:".concat(configId);
75
75
  var lastPublicUrl = undefined;
76
76
  function loginOrGoToAuthServer(params) {
77
- var redirectUrl_params = params.redirectUrl, extraQueryParams_local = params.extraQueryParams_local, transformUrlBeforeRedirect_local = params.transformUrlBeforeRedirect_local, rest = __rest(params, ["redirectUrl", "extraQueryParams_local", "transformUrlBeforeRedirect_local"]);
77
+ var redirectUrl_params = params.redirectUrl, extraQueryParams_local = params.extraQueryParams_local, transformUrl = params.transformUrlBeforeRedirect_local, rest = __rest(params, ["redirectUrl", "extraQueryParams_local", "transformUrlBeforeRedirect_local"]);
78
78
  log === null || log === void 0 ? void 0 : log("Calling loginOrGoToAuthServer", { params: params });
79
79
  login_specific_handling: {
80
80
  if (rest.action !== "login") {
@@ -126,39 +126,90 @@ function createLoginOrGoToAuthServer(params) {
126
126
  doAssertNoQueryParams: false
127
127
  });
128
128
  log === null || log === void 0 ? void 0 : log("redirectUrl: ".concat(redirectUrl));
129
+ var stateData = {
130
+ context: "redirect",
131
+ redirectUrl: redirectUrl,
132
+ extraQueryParams: {},
133
+ hasBeenProcessedByCallback: false,
134
+ configId: configId,
135
+ action: "login",
136
+ redirectUrl_consentRequiredCase: (function () {
137
+ switch (rest.action) {
138
+ case "login":
139
+ return lastPublicUrl !== null && lastPublicUrl !== void 0 ? lastPublicUrl : homeAndCallbackUrl;
140
+ case "go to auth server":
141
+ return redirectUrl;
142
+ }
143
+ })()
144
+ };
129
145
  var transformUrl_oidcClientTs = function (url) {
130
146
  [
131
- [getExtraQueryParams === null || getExtraQueryParams === void 0 ? void 0 : getExtraQueryParams(), transformUrlBeforeRedirect],
132
- [extraQueryParams_local, transformUrlBeforeRedirect_local]
133
- ].forEach(function (_a) {
134
- var e_1, _b;
135
- var _c = __read(_a, 2), extraQueryParams = _c[0], transformUrlBeforeRedirect = _c[1];
147
+ [
148
+ undefined,
149
+ transformUrlBeforeRedirect_next === undefined
150
+ ? undefined
151
+ : function (url) { return transformUrlBeforeRedirect_next({ url: url, isSilent: false }); }
152
+ ],
153
+ [getExtraQueryParams, transformUrlBeforeRedirect],
154
+ [extraQueryParams_local, transformUrl]
155
+ ].forEach(function (_a, i) {
156
+ var e_1, _b, e_2, _c;
157
+ var _d = __read(_a, 2), extraQueryParamsMaybeGetter = _d[0], transformUrlBeforeRedirect = _d[1];
158
+ var urlObj_before = i !== 2 ? undefined : new URL(url);
136
159
  add_extra_query_params: {
137
- if (extraQueryParams === undefined) {
160
+ if (extraQueryParamsMaybeGetter === undefined) {
138
161
  break add_extra_query_params;
139
162
  }
163
+ var extraQueryParams = typeof extraQueryParamsMaybeGetter === "function"
164
+ ? extraQueryParamsMaybeGetter({ isSilent: false, url: url })
165
+ : extraQueryParamsMaybeGetter;
140
166
  var url_obj = new URL(url);
141
167
  try {
142
- for (var _d = __values(Object.entries(extraQueryParams)), _e = _d.next(); !_e.done; _e = _d.next()) {
143
- var _f = __read(_e.value, 2), name_1 = _f[0], value = _f[1];
168
+ for (var _e = __values(Object.entries(extraQueryParams)), _f = _e.next(); !_f.done; _f = _e.next()) {
169
+ var _g = __read(_f.value, 2), name_1 = _g[0], value = _g[1];
170
+ if (value === undefined) {
171
+ continue;
172
+ }
144
173
  url_obj.searchParams.set(name_1, value);
145
174
  }
146
175
  }
147
176
  catch (e_1_1) { e_1 = { error: e_1_1 }; }
148
177
  finally {
149
178
  try {
150
- if (_e && !_e.done && (_b = _d.return)) _b.call(_d);
179
+ if (_f && !_f.done && (_b = _e.return)) _b.call(_e);
151
180
  }
152
181
  finally { if (e_1) throw e_1.error; }
153
182
  }
154
183
  url = url_obj.href;
155
184
  }
156
- apply_transform_before_redirect: {
185
+ apply_transform_url: {
157
186
  if (transformUrlBeforeRedirect === undefined) {
158
- break apply_transform_before_redirect;
187
+ break apply_transform_url;
159
188
  }
160
189
  url = transformUrlBeforeRedirect(url);
161
190
  }
191
+ update_state: {
192
+ if (urlObj_before === undefined) {
193
+ break update_state;
194
+ }
195
+ try {
196
+ for (var _h = __values(new URL(url).searchParams.entries()), _j = _h.next(); !_j.done; _j = _h.next()) {
197
+ var _k = __read(_j.value, 2), name_2 = _k[0], value = _k[1];
198
+ var value_before = urlObj_before.searchParams.get(name_2);
199
+ if (value_before === value) {
200
+ continue;
201
+ }
202
+ stateData.extraQueryParams[name_2] = value;
203
+ }
204
+ }
205
+ catch (e_2_1) { e_2 = { error: e_2_1 }; }
206
+ finally {
207
+ try {
208
+ if (_j && !_j.done && (_c = _h.return)) _c.call(_h);
209
+ }
210
+ finally { if (e_2) throw e_2.error; }
211
+ }
212
+ }
162
213
  });
163
214
  return url;
164
215
  };
@@ -173,54 +224,9 @@ function createLoginOrGoToAuthServer(params) {
173
224
  }
174
225
  })();
175
226
  log === null || log === void 0 ? void 0 : log("redirectMethod: ".concat(redirectMethod));
176
- var extraQueryParams = (function () {
177
- var e_2, _a;
178
- var extraQueryParams = extraQueryParams_local !== null && extraQueryParams_local !== void 0 ? extraQueryParams_local : {};
179
- read_query_params_added_by_transform_before_redirect: {
180
- if (transformUrlBeforeRedirect_local === undefined) {
181
- break read_query_params_added_by_transform_before_redirect;
182
- }
183
- var url_afterTransform = void 0;
184
- try {
185
- url_afterTransform = transformUrlBeforeRedirect_local("https://dummy.com");
186
- }
187
- catch (_b) {
188
- break read_query_params_added_by_transform_before_redirect;
189
- }
190
- try {
191
- for (var _c = __values(new URL(url_afterTransform).searchParams), _d = _c.next(); !_d.done; _d = _c.next()) {
192
- var _e = __read(_d.value, 2), name_2 = _e[0], value = _e[1];
193
- extraQueryParams[name_2] = value;
194
- }
195
- }
196
- catch (e_2_1) { e_2 = { error: e_2_1 }; }
197
- finally {
198
- try {
199
- if (_d && !_d.done && (_a = _c.return)) _a.call(_c);
200
- }
201
- finally { if (e_2) throw e_2.error; }
202
- }
203
- }
204
- return { extraQueryParams: extraQueryParams };
205
- })().extraQueryParams;
206
227
  return oidcClientTsUserManager
207
228
  .signinRedirect({
208
- state: (0, tsafe_1.id)({
209
- context: "redirect",
210
- redirectUrl: redirectUrl,
211
- extraQueryParams: extraQueryParams,
212
- hasBeenProcessedByCallback: false,
213
- configId: configId,
214
- action: "login",
215
- redirectUrl_consentRequiredCase: (function () {
216
- switch (rest.action) {
217
- case "login":
218
- return lastPublicUrl !== null && lastPublicUrl !== void 0 ? lastPublicUrl : homeAndCallbackUrl;
219
- case "go to auth server":
220
- return redirectUrl;
221
- }
222
- })()
223
- }),
229
+ state: stateData,
224
230
  redirectMethod: redirectMethod,
225
231
  prompt: (function () {
226
232
  switch (rest.action) {
@@ -231,7 +237,8 @@ function createLoginOrGoToAuthServer(params) {
231
237
  }
232
238
  tsafe_1.assert;
233
239
  })(),
234
- transformUrl: transformUrl_oidcClientTs
240
+ transformUrl: transformUrl_oidcClientTs,
241
+ extraTokenParams: getExtraTokenParams === undefined ? undefined : (0, tsafe_1.noUndefined)(getExtraTokenParams())
235
242
  })
236
243
  .then(function () { return new Promise(function () { }); });
237
244
  }
@@ -1 +1 @@
1
- {"version":3,"file":"loginOrGoToAuthServer.js","sourceRoot":"","sources":["../src/oidc/loginOrGoToAuthServer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loginOrGoToAuthServer.js","sourceRoot":"","sources":["../src/oidc/loginOrGoToAuthServer.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,14 @@ export declare function loginSilent(params: {
15
15
  oidcClientTsUserManager: OidcClientTsUserManager;
16
16
  stateQueryParamValue_instance: string;
17
17
  configId: string;
18
- getExtraTokenParams: (() => Record<string, string>) | undefined;
18
+ transformUrlBeforeRedirect_next: ((params: {
19
+ isSilent: true;
20
+ url: string;
21
+ }) => string) | undefined;
22
+ getExtraQueryParams: ((params: {
23
+ isSilent: true;
24
+ url: string;
25
+ }) => Record<string, string | undefined>) | undefined;
26
+ getExtraTokenParams: (() => Record<string, string | undefined>) | undefined;
19
27
  }): Promise<ResultOfLoginSilent>;
20
28
  export {};
@@ -35,6 +35,33 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
35
35
  if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
36
  }
37
37
  };
38
+ var __values = (this && this.__values) || function(o) {
39
+ var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
40
+ if (m) return m.call(o);
41
+ if (o && typeof o.length === "number") return {
42
+ next: function () {
43
+ if (o && i >= o.length) o = void 0;
44
+ return { value: o && o[i++], done: !o };
45
+ }
46
+ };
47
+ throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
48
+ };
49
+ var __read = (this && this.__read) || function (o, n) {
50
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
51
+ if (!m) return o;
52
+ var i = m.call(o), r, ar = [], e;
53
+ try {
54
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
55
+ }
56
+ catch (error) { e = { error: error }; }
57
+ finally {
58
+ try {
59
+ if (r && !r.done && (m = i["return"])) m.call(i);
60
+ }
61
+ finally { if (e) throw e.error; }
62
+ }
63
+ return ar;
64
+ };
38
65
  Object.defineProperty(exports, "__esModule", { value: true });
39
66
  exports.loginSilent = loginSilent;
40
67
  var Deferred_1 = require("../tools/Deferred");
@@ -45,10 +72,10 @@ var isDev_1 = require("../tools/isDev");
45
72
  var AuthResponse_1 = require("./AuthResponse");
46
73
  function loginSilent(params) {
47
74
  return __awaiter(this, void 0, void 0, function () {
48
- var oidcClientTsUserManager, stateQueryParamValue_instance, configId, getExtraTokenParams, dResult, timeoutDelayMs, timeout, listener;
75
+ var oidcClientTsUserManager, stateQueryParamValue_instance, configId, transformUrlBeforeRedirect_next, getExtraQueryParams, getExtraTokenParams, dResult, timeoutDelayMs, timeout, listener, transformUrl_oidcClientTs;
49
76
  var _this = this;
50
77
  return __generator(this, function (_a) {
51
- oidcClientTsUserManager = params.oidcClientTsUserManager, stateQueryParamValue_instance = params.stateQueryParamValue_instance, configId = params.configId, getExtraTokenParams = params.getExtraTokenParams;
78
+ oidcClientTsUserManager = params.oidcClientTsUserManager, stateQueryParamValue_instance = params.stateQueryParamValue_instance, configId = params.configId, transformUrlBeforeRedirect_next = params.transformUrlBeforeRedirect_next, getExtraQueryParams = params.getExtraQueryParams, getExtraTokenParams = params.getExtraTokenParams;
52
79
  dResult = new Deferred_1.Deferred();
53
80
  timeoutDelayMs = (function () {
54
81
  var downlinkAndRtt = (0, getDownlinkAndRtt_1.getDownlinkAndRtt)();
@@ -93,6 +120,40 @@ function loginSilent(params) {
93
120
  });
94
121
  };
95
122
  window.addEventListener("message", listener, false);
123
+ transformUrl_oidcClientTs = function (url) {
124
+ var e_1, _a;
125
+ add_extra_query_params: {
126
+ if (getExtraQueryParams === undefined) {
127
+ break add_extra_query_params;
128
+ }
129
+ var extraQueryParams = getExtraQueryParams({ isSilent: true, url: url });
130
+ var url_obj = new URL(url);
131
+ try {
132
+ for (var _b = __values(Object.entries(extraQueryParams)), _c = _b.next(); !_c.done; _c = _b.next()) {
133
+ var _d = __read(_c.value, 2), name_1 = _d[0], value = _d[1];
134
+ if (value === undefined) {
135
+ continue;
136
+ }
137
+ url_obj.searchParams.set(name_1, value);
138
+ }
139
+ }
140
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
141
+ finally {
142
+ try {
143
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
144
+ }
145
+ finally { if (e_1) throw e_1.error; }
146
+ }
147
+ url = url_obj.href;
148
+ }
149
+ apply_transform_url: {
150
+ if (transformUrlBeforeRedirect_next === undefined) {
151
+ break apply_transform_url;
152
+ }
153
+ url = transformUrlBeforeRedirect_next({ url: url, isSilent: true });
154
+ }
155
+ return url;
156
+ };
96
157
  oidcClientTsUserManager
97
158
  .signinSilent({
98
159
  state: (0, tsafe_1.id)({
@@ -100,7 +161,8 @@ function loginSilent(params) {
100
161
  configId: configId
101
162
  }),
102
163
  silentRequestTimeoutInSeconds: timeoutDelayMs / 1000,
103
- extraTokenParams: getExtraTokenParams === null || getExtraTokenParams === void 0 ? void 0 : getExtraTokenParams()
164
+ extraTokenParams: getExtraTokenParams === undefined ? undefined : (0, tsafe_1.noUndefined)(getExtraTokenParams()),
165
+ transformUrl: transformUrl_oidcClientTs
104
166
  })
105
167
  .then(function (oidcClientTsUser) {
106
168
  (0, tsafe_1.assert)(oidcClientTsUser !== null, "oidcClientTsUser is not supposed to be null here");
@@ -1 +1 @@
1
- {"version":3,"file":"loginSilent.js","sourceRoot":"","sources":["../src/oidc/loginSilent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loginSilent.js","sourceRoot":"","sources":["../src/oidc/loginSilent.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "oidc-spa",
3
- "version": "6.6.1",
3
+ "version": "6.7.0",
4
4
  "description": "Openidconnect client for Single Page Applications",
5
5
  "repository": {
6
6
  "type": "git",
package/src/oidc/Oidc.ts CHANGED
@@ -19,7 +19,7 @@ export declare namespace Oidc {
19
19
  /**
20
20
  * Add extra query parameters to the url before redirecting to the login pages.
21
21
  */
22
- extraQueryParams?: Record<string, string>;
22
+ extraQueryParams?: Record<string, string | undefined>;
23
23
  /**
24
24
  * Where to redirect after successful login.
25
25
  * Default: window.location.href (here)
@@ -40,7 +40,9 @@ export declare namespace Oidc {
40
40
  export type LoggedIn<DecodedIdToken extends Record<string, unknown> = Record<string, unknown>> =
41
41
  Common & {
42
42
  isUserLoggedIn: true;
43
- renewTokens(params?: { extraTokenParams?: Record<string, string> }): Promise<void>;
43
+ renewTokens(params?: {
44
+ extraTokenParams?: Record<string, string | undefined>;
45
+ }): Promise<void>;
44
46
  /**
45
47
  * Prefer using getTokens_next(), in the next major getTokens() will be be async.
46
48
  *
@@ -54,7 +54,7 @@ export function getIsStatQueryParamValue(params: { maybeStateQueryParamValue: st
54
54
 
55
55
  export const STATE_STORE_KEY_PREFIX = "oidc.";
56
56
 
57
- export function getKey(params: { stateQueryParamValue: string }) {
57
+ function getKey(params: { stateQueryParamValue: string }) {
58
58
  const { stateQueryParamValue } = params;
59
59
 
60
60
  return `${STATE_STORE_KEY_PREFIX}${stateQueryParamValue}`;
@@ -57,11 +57,22 @@ export type ParamsOfCreateOidc<
57
57
  **/
58
58
  scopes?: string[];
59
59
  /**
60
- * Transform the url before redirecting to the login pages.
60
+ * Transform the url of the authorization endpoint before redirecting to the login pages.
61
61
  */
62
62
  transformUrlBeforeRedirect?: (url: string) => string;
63
+
64
+ /**
65
+ * NOTE: Will replace transformUrlBeforeRedirect in the next major version.
66
+ *
67
+ * Transform the url (authorization endpoint) before redirecting to the login pages.
68
+ *
69
+ * The isSilent parameter is true when the redirect is initiated in the background iframe for silent signin.
70
+ * This can be used to omit ui related query parameters (like `ui_locales`).
71
+ */
72
+ transformUrlBeforeRedirect_next?: (params: { isSilent: boolean; url: string }) => string;
73
+
63
74
  /**
64
- * Extra query params to be added on the login url.
75
+ * Extra query params to be added to the authorization endpoint url before redirecting or silent signing in.
65
76
  * You can provide a function that returns those extra query params, it will be called
66
77
  * when login() is called.
67
78
  *
@@ -69,7 +80,9 @@ export type ParamsOfCreateOidc<
69
80
  *
70
81
  * This parameter can also be passed to login() directly.
71
82
  */
72
- extraQueryParams?: Record<string, string> | (() => Record<string, string>);
83
+ extraQueryParams?:
84
+ | Record<string, string | undefined>
85
+ | ((params: { isSilent: boolean; url: string }) => Record<string, string | undefined>);
73
86
  /**
74
87
  * Extra body params to be added to the /token POST request.
75
88
  *
@@ -81,7 +94,7 @@ export type ParamsOfCreateOidc<
81
94
  * Example: extraTokenParams: ()=> ({ selectedCustomer: "xxx" })
82
95
  * extraTokenParams: { selectedCustomer: "xxx" }
83
96
  */
84
- extraTokenParams?: Record<string, string> | (() => Record<string, string>);
97
+ extraTokenParams?: Record<string, string | undefined> | (() => Record<string, string | undefined>);
85
98
  /**
86
99
  * Where to redirect after successful login.
87
100
  * Default: window.location.href (here)
@@ -246,6 +259,7 @@ export async function createOidc_nonMemoized<
246
259
  }
247
260
  ): Promise<AutoLogin extends true ? Oidc.LoggedIn<DecodedIdToken> : Oidc<DecodedIdToken>> {
248
261
  const {
262
+ transformUrlBeforeRedirect_next,
249
263
  transformUrlBeforeRedirect,
250
264
  extraQueryParams: extraQueryParamsOrGetter,
251
265
  extraTokenParams: extraTokenParamsOrGetter,
@@ -261,19 +275,29 @@ export async function createOidc_nonMemoized<
261
275
 
262
276
  const { issuerUri, clientId, scopes, configId, log } = preProcessedParams;
263
277
 
264
- const [getExtraQueryParams, getExtraTokenParams] = (
265
- [extraQueryParamsOrGetter, extraTokenParamsOrGetter] as const
266
- ).map(valueOrGetter => {
267
- if (typeof valueOrGetter === "function") {
268
- return valueOrGetter;
278
+ const getExtraQueryParams = (() => {
279
+ if (extraQueryParamsOrGetter === undefined) {
280
+ return undefined;
269
281
  }
270
282
 
271
- if (valueOrGetter !== undefined) {
272
- return () => valueOrGetter;
283
+ if (typeof extraQueryParamsOrGetter !== "function") {
284
+ return () => extraQueryParamsOrGetter;
273
285
  }
274
286
 
275
- return undefined;
276
- });
287
+ return extraQueryParamsOrGetter;
288
+ })();
289
+
290
+ const getExtraTokenParams = (() => {
291
+ if (extraTokenParamsOrGetter === undefined) {
292
+ return undefined;
293
+ }
294
+
295
+ if (typeof extraTokenParamsOrGetter !== "function") {
296
+ return () => extraTokenParamsOrGetter;
297
+ }
298
+
299
+ return extraTokenParamsOrGetter;
300
+ })();
277
301
 
278
302
  const homeAndCallbackUrl = toFullyQualifiedUrl({
279
303
  urlish: homeUrl_params,
@@ -369,8 +393,10 @@ export async function createOidc_nonMemoized<
369
393
  const { loginOrGoToAuthServer } = createLoginOrGoToAuthServer({
370
394
  configId,
371
395
  oidcClientTsUserManager,
372
- getExtraQueryParams,
373
396
  transformUrlBeforeRedirect,
397
+ transformUrlBeforeRedirect_next,
398
+ getExtraQueryParams,
399
+ getExtraTokenParams,
374
400
  homeAndCallbackUrl,
375
401
  evtIsUserLoggedIn,
376
402
  log
@@ -540,6 +566,8 @@ export async function createOidc_nonMemoized<
540
566
  oidcClientTsUserManager,
541
567
  stateQueryParamValue_instance,
542
568
  configId,
569
+ transformUrlBeforeRedirect_next,
570
+ getExtraQueryParams,
543
571
  getExtraTokenParams
544
572
  });
545
573
 
@@ -886,7 +914,9 @@ export async function createOidc_nonMemoized<
886
914
  return new Promise<never>(() => {});
887
915
  },
888
916
  renewTokens: (() => {
889
- async function renewTokens_nonMutexed(params: { extraTokenParams: Record<string, string> }) {
917
+ async function renewTokens_nonMutexed(params: {
918
+ extraTokenParams: Record<string, string | undefined>;
919
+ }) {
890
920
  const { extraTokenParams } = params;
891
921
 
892
922
  log?.("Renewing tokens");
@@ -897,6 +927,8 @@ export async function createOidc_nonMemoized<
897
927
  oidcClientTsUserManager,
898
928
  stateQueryParamValue_instance,
899
929
  configId,
930
+ transformUrlBeforeRedirect_next,
931
+ getExtraQueryParams,
900
932
  getExtraTokenParams: () => extraTokenParams
901
933
  });
902
934
 
@@ -999,7 +1031,7 @@ export async function createOidc_nonMemoized<
999
1031
  let ongoingCall:
1000
1032
  | {
1001
1033
  pr: Promise<void>;
1002
- extraTokenParams: Record<string, string>;
1034
+ extraTokenParams: Record<string, string | undefined>;
1003
1035
  }
1004
1036
  | undefined = undefined;
1005
1037