oidc-spa 7.0.1 → 7.0.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/OidcInitializationError.js +3 -3
- package/core/createOidc.d.ts +2 -2
- package/core/createOidc.js +2 -2
- package/mock/oidc.js +2 -2
- package/mock/react.d.ts +1 -1
- package/mock/react.js +1 -1
- package/package.json +1 -1
- package/react/react.d.ts +2 -2
- package/react/react.js +3 -3
- package/react/react.js.map +1 -1
- package/src/core/OidcInitializationError.ts +3 -3
- package/src/core/createOidc.ts +2 -2
- package/src/mock/oidc.ts +2 -2
- package/src/mock/react.tsx +1 -1
- package/src/react/react.tsx +27 -28
|
@@ -251,7 +251,7 @@ function createIframeTimeoutInitializationError(params) {
|
|
|
251
251
|
messageOrCause: [
|
|
252
252
|
"".concat(callbackUri, " is currently served by your web server with the HTTP header `").concat(key_problem, ": ").concat(headers_1[key_problem], "`.\n"),
|
|
253
253
|
"This header prevents the silent sign-in process from working.\n",
|
|
254
|
-
"Refer to this documentation page to fix this issue: https://docs.oidc-spa.dev/v/
|
|
254
|
+
"Refer to this documentation page to fix this issue: https://docs.oidc-spa.dev/v/v7/resources/iframe-related-issues"
|
|
255
255
|
].join(" ")
|
|
256
256
|
})];
|
|
257
257
|
case 2:
|
|
@@ -285,7 +285,7 @@ function createIframeTimeoutInitializationError(params) {
|
|
|
285
285
|
"5. Locate the client \"".concat(clientId, "\" in the list and click on it.\n"),
|
|
286
286
|
"6. Find \"Valid Redirect URIs\" and add \"".concat(callbackUri, "\" to the list.\n"),
|
|
287
287
|
"7. Save the changes.\n\n",
|
|
288
|
-
"For more information, refer to the documentation: https://docs.oidc-spa.dev/v/
|
|
288
|
+
"For more information, refer to the documentation: https://docs.oidc-spa.dev/v/v7/providers-configuration/keycloak"
|
|
289
289
|
];
|
|
290
290
|
})()), false).join(" ")
|
|
291
291
|
})];
|
|
@@ -319,7 +319,7 @@ function createFailedToFetchTokenEndpointInitializationError(params) {
|
|
|
319
319
|
"5. Find '".concat(clientId, "' in the list of clients and click on it.\n"),
|
|
320
320
|
"6. Find 'Web Origins' and add '".concat(window.location.origin, "' to the list.\n"),
|
|
321
321
|
"7. Save the changes.\n\n",
|
|
322
|
-
"More info: https://docs.oidc-spa.dev/v/
|
|
322
|
+
"More info: https://docs.oidc-spa.dev/v/v7/providers-configuration/keycloak"
|
|
323
323
|
];
|
|
324
324
|
})()), false).join(" ")
|
|
325
325
|
});
|
package/core/createOidc.d.ts
CHANGED
|
@@ -79,7 +79,7 @@ export type ParamsOfCreateOidc<DecodedIdToken extends Record<string, unknown> =
|
|
|
79
79
|
/**
|
|
80
80
|
* Default: false
|
|
81
81
|
*
|
|
82
|
-
* See: https://docs.oidc-spa.dev/v/
|
|
82
|
+
* See: https://docs.oidc-spa.dev/v/v7/resources/iframe-related-issues
|
|
83
83
|
*/
|
|
84
84
|
noIframe?: boolean;
|
|
85
85
|
debugLogs?: boolean;
|
|
@@ -113,7 +113,7 @@ export type ParamsOfCreateOidc<DecodedIdToken extends Record<string, unknown> =
|
|
|
113
113
|
*/
|
|
114
114
|
__metadata?: Partial<OidcMetadata>;
|
|
115
115
|
};
|
|
116
|
-
/** @see: https://docs.oidc-spa.dev/v/
|
|
116
|
+
/** @see: https://docs.oidc-spa.dev/v/v7/usage */
|
|
117
117
|
export declare function createOidc<DecodedIdToken extends Record<string, unknown> = Record<string, unknown>, AutoLogin extends boolean = false>(params: ParamsOfCreateOidc<DecodedIdToken, AutoLogin>): Promise<AutoLogin extends true ? Oidc.LoggedIn<DecodedIdToken> : Oidc<DecodedIdToken>>;
|
|
118
118
|
export declare function createOidc_nonMemoized<DecodedIdToken extends Record<string, unknown> = Record<string, unknown>, AutoLogin extends boolean = false>(params: Omit<ParamsOfCreateOidc<DecodedIdToken, AutoLogin>, "issuerUri" | "clientId" | "scopes" | "debugLogs">, preProcessedParams: {
|
|
119
119
|
issuerUri: string;
|
package/core/createOidc.js
CHANGED
|
@@ -124,13 +124,13 @@ var isNewBrowserSession_1 = require("./isNewBrowserSession");
|
|
|
124
124
|
var trustedFetch_1 = require("./trustedFetch");
|
|
125
125
|
(0, handleOidcCallback_1.handleOidcCallback)();
|
|
126
126
|
// NOTE: Replaced at build time
|
|
127
|
-
var VERSION = "7.0.
|
|
127
|
+
var VERSION = "7.0.3";
|
|
128
128
|
var globalContext = {
|
|
129
129
|
prOidcByConfigId: new Map(),
|
|
130
130
|
hasLogoutBeenCalled: (0, tsafe_1.id)(false),
|
|
131
131
|
evtRequestToPersistTokens: (0, Evt_1.createEvt)()
|
|
132
132
|
};
|
|
133
|
-
/** @see: https://docs.oidc-spa.dev/v/
|
|
133
|
+
/** @see: https://docs.oidc-spa.dev/v/v7/usage */
|
|
134
134
|
function createOidc(params) {
|
|
135
135
|
return __awaiter(this, void 0, void 0, function () {
|
|
136
136
|
var _a, _b, name_1, value, issuerUri_params, clientId, _c, scopes, debugLogs, rest, issuerUri, log, configId, prOidcByConfigId, prOidc, dOidc, oidc;
|
package/mock/oidc.js
CHANGED
|
@@ -144,13 +144,13 @@ function createMockOidc(params) {
|
|
|
144
144
|
decodedIdToken: (_d = mockedTokens.decodedIdToken) !== null && _d !== void 0 ? _d : (0, createObjectThatThrowsIfAccessed_1.createObjectThatThrowsIfAccessed)({
|
|
145
145
|
debugMessage: [
|
|
146
146
|
"You haven't provided a mocked decodedIdToken",
|
|
147
|
-
"See https://docs.oidc-spa.dev/v/
|
|
147
|
+
"See https://docs.oidc-spa.dev/v/v7/mock"
|
|
148
148
|
].join("\n")
|
|
149
149
|
}),
|
|
150
150
|
decodedIdToken_original: (_e = mockedTokens.decodedIdToken_original) !== null && _e !== void 0 ? _e : (0, createObjectThatThrowsIfAccessed_1.createObjectThatThrowsIfAccessed)({
|
|
151
151
|
debugMessage: [
|
|
152
152
|
"You haven't provided a mocked decodedIdToken_original",
|
|
153
|
-
"See https://docs.oidc-spa.dev/v/
|
|
153
|
+
"See https://docs.oidc-spa.dev/v/v7/mock"
|
|
154
154
|
].join("\n")
|
|
155
155
|
}),
|
|
156
156
|
issuedAtTime: Date.now()
|
package/mock/react.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type ParamsOfCreateMockOidc } from "./oidc";
|
|
2
2
|
import type { ValueOrAsyncGetter } from "../tools/ValueOrAsyncGetter";
|
|
3
|
-
/** @see: https://docs.oidc-spa.dev/v/
|
|
3
|
+
/** @see: https://docs.oidc-spa.dev/v/v7/mock */
|
|
4
4
|
export declare function createMockReactOidc<DecodedIdToken extends Record<string, unknown> = Record<string, unknown>, AutoLogin extends boolean = false>(params: ValueOrAsyncGetter<ParamsOfCreateMockOidc<DecodedIdToken, AutoLogin>>): {
|
|
5
5
|
OidcProvider: (ParamsOfCreateMockOidc<DecodedIdToken, AutoLogin> extends infer T ? T extends ParamsOfCreateMockOidc<DecodedIdToken, AutoLogin> ? T extends {
|
|
6
6
|
autoLogin?: true | undefined;
|
package/mock/react.js
CHANGED
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.createMockReactOidc = createMockReactOidc;
|
|
4
4
|
var react_1 = require("../react/react");
|
|
5
5
|
var oidc_1 = require("./oidc");
|
|
6
|
-
/** @see: https://docs.oidc-spa.dev/v/
|
|
6
|
+
/** @see: https://docs.oidc-spa.dev/v/v7/mock */
|
|
7
7
|
function createMockReactOidc(params) {
|
|
8
8
|
return (0, react_1.createOidcReactApi_dependencyInjection)(params, oidc_1.createMockOidc);
|
|
9
9
|
}
|
package/package.json
CHANGED
package/react/react.d.ts
CHANGED
|
@@ -4,7 +4,7 @@ import type { ValueOrAsyncGetter } from "../tools/ValueOrAsyncGetter";
|
|
|
4
4
|
export type OidcReact<DecodedIdToken extends Record<string, unknown>> = OidcReact.NotLoggedIn | OidcReact.LoggedIn<DecodedIdToken>;
|
|
5
5
|
export declare namespace OidcReact {
|
|
6
6
|
type Common = Oidc.Common & {
|
|
7
|
-
|
|
7
|
+
useAutoLogoutWarningCountdown: (params: {
|
|
8
8
|
warningDurationSeconds: number;
|
|
9
9
|
}) => {
|
|
10
10
|
secondsLeft: number | undefined;
|
|
@@ -92,7 +92,7 @@ export declare function createOidcReactApi_dependencyInjection<DecodedIdToken ex
|
|
|
92
92
|
} | {})>(paramsOrGetParams: ValueOrAsyncGetter<ParamsOfCreateOidc>, createOidc: (params: ParamsOfCreateOidc) => Promise<Oidc<DecodedIdToken>>): OidcReactApi<DecodedIdToken, ParamsOfCreateOidc extends {
|
|
93
93
|
autoLogin?: true | undefined;
|
|
94
94
|
} ? true : false>;
|
|
95
|
-
/** @see: https://docs.oidc-spa.dev/v/
|
|
95
|
+
/** @see: https://docs.oidc-spa.dev/v/v7/usage#react-api */
|
|
96
96
|
export declare function createReactOidc<DecodedIdToken extends Record<string, unknown> = Oidc.Tokens.DecodedIdToken_base, AutoLogin extends boolean = false>(params: ValueOrAsyncGetter<ParamsOfCreateOidc<DecodedIdToken, AutoLogin>>): OidcReactApi<DecodedIdToken, ParamsOfCreateOidc<DecodedIdToken, AutoLogin> extends infer T ? T extends ParamsOfCreateOidc<DecodedIdToken, AutoLogin> ? T extends {
|
|
97
97
|
autoLogin?: true | undefined;
|
|
98
98
|
} ? true : false : never : never>;
|
package/react/react.js
CHANGED
|
@@ -151,7 +151,7 @@ function createOidcReactApi_dependencyInjection(paramsOrGetParams, createOidc) {
|
|
|
151
151
|
var oidc = oidcOrInitializationError;
|
|
152
152
|
return ((0, jsx_runtime_1.jsx)(oidcContext.Provider, { value: { oidc: oidc, fallback: fallback !== null && fallback !== void 0 ? fallback : null }, children: children }));
|
|
153
153
|
}
|
|
154
|
-
var
|
|
154
|
+
var useAutoLogoutWarningCountdown = function (_a) {
|
|
155
155
|
var warningDurationSeconds = _a.warningDurationSeconds;
|
|
156
156
|
var contextValue = (0, react_1.useContext)(oidcContext);
|
|
157
157
|
(0, tsafe_1.assert)(contextValue !== undefined);
|
|
@@ -217,7 +217,7 @@ function createOidcReactApi_dependencyInjection(paramsOrGetParams, createOidc) {
|
|
|
217
217
|
}, []);
|
|
218
218
|
var common = {
|
|
219
219
|
params: oidc.params,
|
|
220
|
-
|
|
220
|
+
useAutoLogoutWarningCountdown: useAutoLogoutWarningCountdown
|
|
221
221
|
};
|
|
222
222
|
if (!oidc.isUserLoggedIn) {
|
|
223
223
|
return (0, tsafe_2.id)(__assign(__assign({}, common), { isUserLoggedIn: false, login: function (_a) {
|
|
@@ -299,7 +299,7 @@ function createOidcReactApi_dependencyInjection(paramsOrGetParams, createOidc) {
|
|
|
299
299
|
// @ts-expect-error: We know what we are doing
|
|
300
300
|
return oidcReact;
|
|
301
301
|
}
|
|
302
|
-
/** @see: https://docs.oidc-spa.dev/v/
|
|
302
|
+
/** @see: https://docs.oidc-spa.dev/v/v7/usage#react-api */
|
|
303
303
|
function createReactOidc(params) {
|
|
304
304
|
return createOidcReactApi_dependencyInjection(params, core_1.createOidc);
|
|
305
305
|
}
|
package/react/react.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react.js","sourceRoot":"","sources":["../src/react/react.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgHA,
|
|
1
|
+
{"version":3,"file":"react.js","sourceRoot":"","sources":["../src/react/react.tsx"],"names":[],"mappings":"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"}
|
|
@@ -199,7 +199,7 @@ export async function createIframeTimeoutInitializationError(params: {
|
|
|
199
199
|
messageOrCause: [
|
|
200
200
|
`${callbackUri} is currently served by your web server with the HTTP header \`${key_problem}: ${headers[key_problem]}\`.\n`,
|
|
201
201
|
"This header prevents the silent sign-in process from working.\n",
|
|
202
|
-
"Refer to this documentation page to fix this issue: https://docs.oidc-spa.dev/v/
|
|
202
|
+
"Refer to this documentation page to fix this issue: https://docs.oidc-spa.dev/v/v7/resources/iframe-related-issues"
|
|
203
203
|
].join(" ")
|
|
204
204
|
});
|
|
205
205
|
}
|
|
@@ -236,7 +236,7 @@ export async function createIframeTimeoutInitializationError(params: {
|
|
|
236
236
|
`5. Locate the client "${clientId}" in the list and click on it.\n`,
|
|
237
237
|
`6. Find "Valid Redirect URIs" and add "${callbackUri}" to the list.\n`,
|
|
238
238
|
`7. Save the changes.\n\n`,
|
|
239
|
-
`For more information, refer to the documentation: https://docs.oidc-spa.dev/v/
|
|
239
|
+
`For more information, refer to the documentation: https://docs.oidc-spa.dev/v/v7/providers-configuration/keycloak`
|
|
240
240
|
];
|
|
241
241
|
})()
|
|
242
242
|
].join(" ")
|
|
@@ -275,7 +275,7 @@ export function createFailedToFetchTokenEndpointInitializationError(params: {
|
|
|
275
275
|
`5. Find '${clientId}' in the list of clients and click on it.\n`,
|
|
276
276
|
`6. Find 'Web Origins' and add '${window.location.origin}' to the list.\n`,
|
|
277
277
|
`7. Save the changes.\n\n`,
|
|
278
|
-
`More info: https://docs.oidc-spa.dev/v/
|
|
278
|
+
`More info: https://docs.oidc-spa.dev/v/v7/providers-configuration/keycloak`
|
|
279
279
|
];
|
|
280
280
|
})()
|
|
281
281
|
].join(" ")
|
package/src/core/createOidc.ts
CHANGED
|
@@ -133,7 +133,7 @@ export type ParamsOfCreateOidc<
|
|
|
133
133
|
/**
|
|
134
134
|
* Default: false
|
|
135
135
|
*
|
|
136
|
-
* See: https://docs.oidc-spa.dev/v/
|
|
136
|
+
* See: https://docs.oidc-spa.dev/v/v7/resources/iframe-related-issues
|
|
137
137
|
*/
|
|
138
138
|
noIframe?: boolean;
|
|
139
139
|
|
|
@@ -178,7 +178,7 @@ const globalContext = {
|
|
|
178
178
|
evtRequestToPersistTokens: createEvt<{ configIdOfInstancePostingTheRequest: string }>()
|
|
179
179
|
};
|
|
180
180
|
|
|
181
|
-
/** @see: https://docs.oidc-spa.dev/v/
|
|
181
|
+
/** @see: https://docs.oidc-spa.dev/v/v7/usage */
|
|
182
182
|
export async function createOidc<
|
|
183
183
|
DecodedIdToken extends Record<string, unknown> = Record<string, unknown>,
|
|
184
184
|
AutoLogin extends boolean = false
|
package/src/mock/oidc.ts
CHANGED
|
@@ -140,7 +140,7 @@ export async function createMockOidc<
|
|
|
140
140
|
createObjectThatThrowsIfAccessed<DecodedIdToken>({
|
|
141
141
|
debugMessage: [
|
|
142
142
|
"You haven't provided a mocked decodedIdToken",
|
|
143
|
-
"See https://docs.oidc-spa.dev/v/
|
|
143
|
+
"See https://docs.oidc-spa.dev/v/v7/mock"
|
|
144
144
|
].join("\n")
|
|
145
145
|
}),
|
|
146
146
|
decodedIdToken_original:
|
|
@@ -148,7 +148,7 @@ export async function createMockOidc<
|
|
|
148
148
|
createObjectThatThrowsIfAccessed<Oidc.Tokens.DecodedIdToken_base>({
|
|
149
149
|
debugMessage: [
|
|
150
150
|
"You haven't provided a mocked decodedIdToken_original",
|
|
151
|
-
"See https://docs.oidc-spa.dev/v/
|
|
151
|
+
"See https://docs.oidc-spa.dev/v/v7/mock"
|
|
152
152
|
].join("\n")
|
|
153
153
|
}),
|
|
154
154
|
issuedAtTime: Date.now()
|
package/src/mock/react.tsx
CHANGED
|
@@ -2,7 +2,7 @@ import { createOidcReactApi_dependencyInjection } from "../react/react";
|
|
|
2
2
|
import { createMockOidc, type ParamsOfCreateMockOidc } from "./oidc";
|
|
3
3
|
import type { ValueOrAsyncGetter } from "../tools/ValueOrAsyncGetter";
|
|
4
4
|
|
|
5
|
-
/** @see: https://docs.oidc-spa.dev/v/
|
|
5
|
+
/** @see: https://docs.oidc-spa.dev/v/v7/mock */
|
|
6
6
|
export function createMockReactOidc<
|
|
7
7
|
DecodedIdToken extends Record<string, unknown> = Record<string, unknown>,
|
|
8
8
|
AutoLogin extends boolean = false
|
package/src/react/react.tsx
CHANGED
|
@@ -20,7 +20,7 @@ export type OidcReact<DecodedIdToken extends Record<string, unknown>> =
|
|
|
20
20
|
|
|
21
21
|
export namespace OidcReact {
|
|
22
22
|
export type Common = Oidc.Common & {
|
|
23
|
-
|
|
23
|
+
useAutoLogoutWarningCountdown: (params: { warningDurationSeconds: number }) => {
|
|
24
24
|
secondsLeft: number | undefined;
|
|
25
25
|
};
|
|
26
26
|
};
|
|
@@ -212,38 +212,37 @@ export function createOidcReactApi_dependencyInjection<
|
|
|
212
212
|
);
|
|
213
213
|
}
|
|
214
214
|
|
|
215
|
-
const
|
|
216
|
-
warningDurationSeconds
|
|
217
|
-
|
|
218
|
-
const contextValue = useContext(oidcContext);
|
|
215
|
+
const useAutoLogoutWarningCountdown: OidcReact.LoggedIn<DecodedIdToken>["useAutoLogoutWarningCountdown"] =
|
|
216
|
+
({ warningDurationSeconds }) => {
|
|
217
|
+
const contextValue = useContext(oidcContext);
|
|
219
218
|
|
|
220
|
-
|
|
219
|
+
assert(contextValue !== undefined);
|
|
221
220
|
|
|
222
|
-
|
|
221
|
+
const { oidc } = contextValue;
|
|
223
222
|
|
|
224
|
-
|
|
223
|
+
const [secondsLeft, setSecondsLeft] = useState<number | undefined>(undefined);
|
|
225
224
|
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
225
|
+
useEffect(() => {
|
|
226
|
+
if (!oidc.isUserLoggedIn) {
|
|
227
|
+
return;
|
|
228
|
+
}
|
|
230
229
|
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
230
|
+
const { unsubscribeFromAutoLogoutCountdown } = oidc.subscribeToAutoLogoutCountdown(
|
|
231
|
+
({ secondsLeft }) =>
|
|
232
|
+
setSecondsLeft(
|
|
233
|
+
secondsLeft === undefined || secondsLeft > warningDurationSeconds
|
|
234
|
+
? undefined
|
|
235
|
+
: secondsLeft
|
|
236
|
+
)
|
|
237
|
+
);
|
|
239
238
|
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
239
|
+
return () => {
|
|
240
|
+
unsubscribeFromAutoLogoutCountdown();
|
|
241
|
+
};
|
|
242
|
+
}, [warningDurationSeconds]);
|
|
244
243
|
|
|
245
|
-
|
|
246
|
-
|
|
244
|
+
return { secondsLeft };
|
|
245
|
+
};
|
|
247
246
|
|
|
248
247
|
function useOidc(params?: {
|
|
249
248
|
assert?: "user logged in" | "user not logged in";
|
|
@@ -304,7 +303,7 @@ export function createOidcReactApi_dependencyInjection<
|
|
|
304
303
|
|
|
305
304
|
const common: OidcReact.Common = {
|
|
306
305
|
params: oidc.params,
|
|
307
|
-
|
|
306
|
+
useAutoLogoutWarningCountdown
|
|
308
307
|
};
|
|
309
308
|
|
|
310
309
|
if (!oidc.isUserLoggedIn) {
|
|
@@ -419,7 +418,7 @@ export function createOidcReactApi_dependencyInjection<
|
|
|
419
418
|
return oidcReact;
|
|
420
419
|
}
|
|
421
420
|
|
|
422
|
-
/** @see: https://docs.oidc-spa.dev/v/
|
|
421
|
+
/** @see: https://docs.oidc-spa.dev/v/v7/usage#react-api */
|
|
423
422
|
export function createReactOidc<
|
|
424
423
|
DecodedIdToken extends Record<string, unknown> = Oidc.Tokens.DecodedIdToken_base,
|
|
425
424
|
AutoLogin extends boolean = false
|