@axa-fr/react-oidc 6.16.7 → 6.16.8-alpha1
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/dist/FetchToken.js +12 -7
- package/dist/FetchToken.js.map +1 -1
- package/dist/OidcProvider.js +50 -43
- package/dist/OidcProvider.js.map +1 -1
- package/dist/OidcSecure.js +14 -9
- package/dist/OidcSecure.js.map +1 -1
- package/dist/ReactOidc.js +35 -29
- package/dist/ReactOidc.js.map +1 -1
- package/dist/User.js +12 -8
- package/dist/User.js.map +1 -1
- package/dist/core/default-component/AuthenticateError.component.js +5 -3
- package/dist/core/default-component/AuthenticateError.component.js.map +1 -1
- package/dist/core/default-component/Authenticating.component.js +5 -3
- package/dist/core/default-component/Authenticating.component.js.map +1 -1
- package/dist/core/default-component/Callback.component.js +22 -15
- package/dist/core/default-component/Callback.component.js.map +1 -1
- package/dist/core/default-component/Loading.component.js +5 -3
- package/dist/core/default-component/Loading.component.js.map +1 -1
- package/dist/core/default-component/ServiceWorkerNotSupported.component.js +5 -3
- package/dist/core/default-component/ServiceWorkerNotSupported.component.js.map +1 -1
- package/dist/core/default-component/SessionLost.component.js +7 -3
- package/dist/core/default-component/SessionLost.component.js.map +1 -1
- package/dist/core/default-component/SilentCallback.component.js +9 -7
- package/dist/core/default-component/SilentCallback.component.js.map +1 -1
- package/dist/core/default-component/SilentLogin.component.js +11 -9
- package/dist/core/default-component/SilentLogin.component.js.map +1 -1
- package/dist/core/default-component/index.js +19 -6
- package/dist/core/default-component/index.js.map +1 -1
- package/dist/core/routes/OidcRoutes.js +46 -18
- package/dist/core/routes/OidcRoutes.js.map +1 -1
- package/dist/core/routes/withRouter.js +7 -2
- package/dist/core/routes/withRouter.js.map +1 -1
- package/dist/index.js +20 -6
- package/dist/index.js.map +1 -1
- package/dist/service_worker/{OidcServiceWorker.js → OidcServiceWorker.mjs} +1 -1
- package/dist/service_worker/OidcServiceWorker.mjs.map +1 -0
- package/dist/vanilla/cache.js +7 -2
- package/dist/vanilla/cache.js.map +1 -1
- package/dist/vanilla/checkSession.js +9 -5
- package/dist/vanilla/checkSession.js.map +1 -1
- package/dist/vanilla/checkSessionIFrame.js +5 -1
- package/dist/vanilla/checkSessionIFrame.js.map +1 -1
- package/dist/vanilla/crypto.js +33 -4
- package/dist/vanilla/crypto.js.map +1 -1
- package/dist/vanilla/events.js +4 -1
- package/dist/vanilla/events.js.map +1 -1
- package/dist/vanilla/initSession.js +5 -1
- package/dist/vanilla/initSession.js.map +1 -1
- package/dist/vanilla/initWorker.js +21 -11
- package/dist/vanilla/initWorker.js.map +1 -1
- package/dist/vanilla/login.js +31 -26
- package/dist/vanilla/login.js.map +1 -1
- package/dist/vanilla/logout.js +19 -11
- package/dist/vanilla/logout.js.map +1 -1
- package/dist/vanilla/oidc.js +107 -76
- package/dist/vanilla/oidc.js.map +1 -1
- package/dist/vanilla/parseTokens.js +24 -15
- package/dist/vanilla/parseTokens.js.map +1 -1
- package/dist/vanilla/renewTokens.js +21 -13
- package/dist/vanilla/renewTokens.js.map +1 -1
- package/dist/vanilla/requests.js +26 -18
- package/dist/vanilla/requests.js.map +1 -1
- package/dist/vanilla/route-utils.js +11 -5
- package/dist/vanilla/route-utils.js.map +1 -1
- package/dist/vanilla/silentLogin.js +24 -16
- package/dist/vanilla/silentLogin.js.map +1 -1
- package/dist/vanilla/timer.js +3 -1
- package/dist/vanilla/timer.js.map +1 -1
- package/dist/vanilla/types.js +2 -1
- package/dist/vanilla/user.js +9 -5
- package/dist/vanilla/user.js.map +1 -1
- package/dist/vanilla/vanillaOidc.js +11 -7
- package/dist/vanilla/vanillaOidc.js.map +1 -1
- package/package.json +1 -2
- package/service_worker/dist/{OidcServiceWorker.js → OidcServiceWorker.mjs} +1 -1
- package/service_worker/dist/OidcServiceWorker.mjs.map +1 -0
- package/dist/service_worker/OidcServiceWorker.js.map +0 -1
- package/service_worker/dist/OidcServiceWorker.js.map +0 -1
package/dist/vanilla/oidc.js
CHANGED
|
@@ -1,3 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
1
25
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
26
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
27
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -7,20 +31,25 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
7
31
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
32
|
});
|
|
9
33
|
};
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
34
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
35
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
36
|
+
};
|
|
37
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
38
|
+
exports.Oidc = exports.OidcAuthorizationServiceConfiguration = void 0;
|
|
39
|
+
const checkSession_js_1 = require("./checkSession.js");
|
|
40
|
+
const events_js_1 = require("./events.js");
|
|
41
|
+
const initSession_js_1 = require("./initSession.js");
|
|
42
|
+
const initWorker_js_1 = require("./initWorker.js");
|
|
43
|
+
const login_js_1 = require("./login.js");
|
|
44
|
+
const logout_js_1 = require("./logout.js");
|
|
45
|
+
const parseTokens_js_1 = require("./parseTokens.js");
|
|
46
|
+
const renewTokens_js_1 = require("./renewTokens.js");
|
|
47
|
+
const requests_js_1 = require("./requests.js");
|
|
48
|
+
const route_utils_js_1 = require("./route-utils.js");
|
|
49
|
+
const silentLogin_js_1 = __importStar(require("./silentLogin.js"));
|
|
50
|
+
const timer_js_1 = __importDefault(require("./timer.js"));
|
|
51
|
+
const user_js_1 = require("./user.js");
|
|
52
|
+
class OidcAuthorizationServiceConfiguration {
|
|
24
53
|
constructor(request) {
|
|
25
54
|
this.authorizationEndpoint = request.authorization_endpoint;
|
|
26
55
|
this.tokenEndpoint = request.token_endpoint;
|
|
@@ -31,6 +60,7 @@ export class OidcAuthorizationServiceConfiguration {
|
|
|
31
60
|
this.endSessionEndpoint = request.end_session_endpoint;
|
|
32
61
|
}
|
|
33
62
|
}
|
|
63
|
+
exports.OidcAuthorizationServiceConfiguration = OidcAuthorizationServiceConfiguration;
|
|
34
64
|
const oidcDatabase = {};
|
|
35
65
|
const oidcFactory = (configuration, name = 'default') => {
|
|
36
66
|
if (oidcDatabase[name]) {
|
|
@@ -41,13 +71,13 @@ const oidcFactory = (configuration, name = 'default') => {
|
|
|
41
71
|
};
|
|
42
72
|
const loginCallbackWithAutoTokensRenewAsync = (oidc) => __awaiter(void 0, void 0, void 0, function* () {
|
|
43
73
|
const { parsedTokens, callbackPath } = yield oidc.loginCallbackAsync();
|
|
44
|
-
oidc.timeoutId = autoRenewTokens(oidc, parsedTokens.refreshToken, parsedTokens.expiresAt);
|
|
74
|
+
oidc.timeoutId = (0, renewTokens_js_1.autoRenewTokens)(oidc, parsedTokens.refreshToken, parsedTokens.expiresAt);
|
|
45
75
|
return { callbackPath };
|
|
46
76
|
});
|
|
47
77
|
const getRandomInt = (max) => {
|
|
48
78
|
return Math.floor(Math.random() * max);
|
|
49
79
|
};
|
|
50
|
-
|
|
80
|
+
class Oidc {
|
|
51
81
|
constructor(configuration, configurationName = 'default') {
|
|
52
82
|
var _a, _b, _c, _d;
|
|
53
83
|
this.initPromise = null;
|
|
@@ -62,7 +92,7 @@ export class Oidc {
|
|
|
62
92
|
if (configuration.silent_redirect_uri && !configuration.silent_login_uri) {
|
|
63
93
|
silent_login_uri = `${configuration.silent_redirect_uri.replace('-callback', '').replace('callback', '')}-login`;
|
|
64
94
|
}
|
|
65
|
-
this.configuration = Object.assign(Object.assign({}, configuration), { silent_login_uri, monitor_session: (_a = configuration.monitor_session) !== null && _a !== void 0 ? _a : false, refresh_time_before_tokens_expiration_in_second: (_b = configuration.refresh_time_before_tokens_expiration_in_second) !== null && _b !== void 0 ? _b : 60, silent_login_timeout: (_c = configuration.silent_login_timeout) !== null && _c !== void 0 ? _c : 12000, token_renew_mode: (_d = configuration.token_renew_mode) !== null && _d !== void 0 ? _d : TokenRenewMode.access_token_or_id_token_invalid });
|
|
95
|
+
this.configuration = Object.assign(Object.assign({}, configuration), { silent_login_uri, monitor_session: (_a = configuration.monitor_session) !== null && _a !== void 0 ? _a : false, refresh_time_before_tokens_expiration_in_second: (_b = configuration.refresh_time_before_tokens_expiration_in_second) !== null && _b !== void 0 ? _b : 60, silent_login_timeout: (_c = configuration.silent_login_timeout) !== null && _c !== void 0 ? _c : 12000, token_renew_mode: (_d = configuration.token_renew_mode) !== null && _d !== void 0 ? _d : parseTokens_js_1.TokenRenewMode.access_token_or_id_token_invalid });
|
|
66
96
|
this.configurationName = configurationName;
|
|
67
97
|
this.tokens = null;
|
|
68
98
|
this.userInfo = null;
|
|
@@ -107,13 +137,13 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
|
|
|
107
137
|
}
|
|
108
138
|
_silentLoginCallbackFromIFrame() {
|
|
109
139
|
if (this.configuration.silent_redirect_uri && this.configuration.silent_login_uri) {
|
|
110
|
-
const queryParams = getParseQueryStringFromLocation(window.location.href);
|
|
140
|
+
const queryParams = (0, route_utils_js_1.getParseQueryStringFromLocation)(window.location.href);
|
|
111
141
|
window.top.postMessage(`${this.configurationName}_oidc_tokens:${JSON.stringify({ tokens: this.tokens, sessionState: queryParams.session_state })}`, window.location.origin);
|
|
112
142
|
}
|
|
113
143
|
}
|
|
114
144
|
_silentLoginErrorCallbackFromIFrame() {
|
|
115
145
|
if (this.configuration.silent_redirect_uri && this.configuration.silent_login_uri) {
|
|
116
|
-
const queryParams = getParseQueryStringFromLocation(window.location.href);
|
|
146
|
+
const queryParams = (0, route_utils_js_1.getParseQueryStringFromLocation)(window.location.href);
|
|
117
147
|
window.top.postMessage(`${this.configurationName}_oidc_error:${JSON.stringify({ error: queryParams.error })}`, window.location.origin);
|
|
118
148
|
}
|
|
119
149
|
}
|
|
@@ -147,9 +177,9 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
|
|
|
147
177
|
issuer: authorityConfiguration.issuer,
|
|
148
178
|
});
|
|
149
179
|
}
|
|
150
|
-
const serviceWorker = yield initWorkerAsync(this.configuration.service_worker_relative_url, this.configurationName);
|
|
180
|
+
const serviceWorker = yield (0, initWorker_js_1.initWorkerAsync)(this.configuration.service_worker_relative_url, this.configurationName);
|
|
151
181
|
const storage = serviceWorker ? window.localStorage : null;
|
|
152
|
-
return yield fetchFromIssuer(authority, (_a = this.configuration.authority_time_cache_wellknowurl_in_second) !== null && _a !== void 0 ? _a : 60 * 60, storage);
|
|
182
|
+
return yield (0, requests_js_1.fetchFromIssuer)(authority, (_a = this.configuration.authority_time_cache_wellknowurl_in_second) !== null && _a !== void 0 ? _a : 60 * 60, storage);
|
|
153
183
|
});
|
|
154
184
|
this.initPromise = localFuncAsync();
|
|
155
185
|
return this.initPromise.then((result) => {
|
|
@@ -169,11 +199,11 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
|
|
|
169
199
|
if (this.tokens != null) {
|
|
170
200
|
return false;
|
|
171
201
|
}
|
|
172
|
-
this.publishEvent(eventNames.tryKeepExistingSessionAsync_begin, {});
|
|
202
|
+
this.publishEvent(events_js_1.eventNames.tryKeepExistingSessionAsync_begin, {});
|
|
173
203
|
try {
|
|
174
204
|
const configuration = this.configuration;
|
|
175
205
|
const oidcServerConfiguration = yield this.initAsync(configuration.authority, configuration.authority_configuration);
|
|
176
|
-
serviceWorker = yield initWorkerAsync(configuration.service_worker_relative_url, this.configurationName);
|
|
206
|
+
serviceWorker = yield (0, initWorker_js_1.initWorkerAsync)(configuration.service_worker_relative_url, this.configurationName);
|
|
177
207
|
if (serviceWorker) {
|
|
178
208
|
const { tokens } = yield serviceWorker.initAsync(oidcServerConfiguration, 'tryKeepExistingSessionAsync', configuration);
|
|
179
209
|
if (tokens) {
|
|
@@ -182,46 +212,46 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
|
|
|
182
212
|
this.tokens = tokens;
|
|
183
213
|
const getLoginParams = serviceWorker.getLoginParams(this.configurationName);
|
|
184
214
|
// @ts-ignore
|
|
185
|
-
this.timeoutId = autoRenewTokens(this, this.tokens.refreshToken, this.tokens.expiresAt, getLoginParams.extras);
|
|
215
|
+
this.timeoutId = (0, renewTokens_js_1.autoRenewTokens)(this, this.tokens.refreshToken, this.tokens.expiresAt, getLoginParams.extras);
|
|
186
216
|
const sessionState = yield serviceWorker.getSessionStateAsync();
|
|
187
217
|
// @ts-ignore
|
|
188
218
|
yield this.startCheckSessionAsync(oidcServerConfiguration.check_session_iframe, configuration.client_id, sessionState);
|
|
189
|
-
this.publishEvent(eventNames.tryKeepExistingSessionAsync_end, {
|
|
219
|
+
this.publishEvent(events_js_1.eventNames.tryKeepExistingSessionAsync_end, {
|
|
190
220
|
success: true,
|
|
191
221
|
message: 'tokens inside ServiceWorker are valid',
|
|
192
222
|
});
|
|
193
223
|
return true;
|
|
194
224
|
}
|
|
195
|
-
this.publishEvent(eventNames.tryKeepExistingSessionAsync_end, {
|
|
225
|
+
this.publishEvent(events_js_1.eventNames.tryKeepExistingSessionAsync_end, {
|
|
196
226
|
success: false,
|
|
197
227
|
message: 'no exiting session found',
|
|
198
228
|
});
|
|
199
229
|
}
|
|
200
230
|
else {
|
|
201
231
|
if (configuration.service_worker_relative_url) {
|
|
202
|
-
this.publishEvent(eventNames.service_worker_not_supported_by_browser, {
|
|
232
|
+
this.publishEvent(events_js_1.eventNames.service_worker_not_supported_by_browser, {
|
|
203
233
|
message: 'service worker is not supported by this browser',
|
|
204
234
|
});
|
|
205
235
|
}
|
|
206
|
-
const session = initSession(this.configurationName, (_a = configuration.storage) !== null && _a !== void 0 ? _a : sessionStorage);
|
|
236
|
+
const session = (0, initSession_js_1.initSession)(this.configurationName, (_a = configuration.storage) !== null && _a !== void 0 ? _a : sessionStorage);
|
|
207
237
|
const { tokens } = yield session.initAsync();
|
|
208
238
|
if (tokens) {
|
|
209
239
|
// @ts-ignore
|
|
210
|
-
this.tokens = setTokens(tokens, null, configuration.token_renew_mode);
|
|
240
|
+
this.tokens = (0, parseTokens_js_1.setTokens)(tokens, null, configuration.token_renew_mode);
|
|
211
241
|
const getLoginParams = session.getLoginParams(this.configurationName);
|
|
212
242
|
// @ts-ignore
|
|
213
|
-
this.timeoutId = autoRenewTokens(this, tokens.refreshToken, this.tokens.expiresAt, getLoginParams.extras);
|
|
243
|
+
this.timeoutId = (0, renewTokens_js_1.autoRenewTokens)(this, tokens.refreshToken, this.tokens.expiresAt, getLoginParams.extras);
|
|
214
244
|
const sessionState = yield session.getSessionStateAsync();
|
|
215
245
|
// @ts-ignore
|
|
216
246
|
yield this.startCheckSessionAsync(oidcServerConfiguration.check_session_iframe, configuration.client_id, sessionState);
|
|
217
|
-
this.publishEvent(eventNames.tryKeepExistingSessionAsync_end, {
|
|
247
|
+
this.publishEvent(events_js_1.eventNames.tryKeepExistingSessionAsync_end, {
|
|
218
248
|
success: true,
|
|
219
249
|
message: 'tokens inside storage are valid',
|
|
220
250
|
});
|
|
221
251
|
return true;
|
|
222
252
|
}
|
|
223
253
|
}
|
|
224
|
-
this.publishEvent(eventNames.tryKeepExistingSessionAsync_end, {
|
|
254
|
+
this.publishEvent(events_js_1.eventNames.tryKeepExistingSessionAsync_end, {
|
|
225
255
|
success: false,
|
|
226
256
|
message: serviceWorker ? 'service worker sessions not retrieved' : 'session storage sessions not retrieved',
|
|
227
257
|
});
|
|
@@ -232,7 +262,7 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
|
|
|
232
262
|
if (serviceWorker) {
|
|
233
263
|
yield serviceWorker.clearAsync();
|
|
234
264
|
}
|
|
235
|
-
this.publishEvent(eventNames.tryKeepExistingSessionAsync_error, 'tokens inside ServiceWorker are invalid');
|
|
265
|
+
this.publishEvent(events_js_1.eventNames.tryKeepExistingSessionAsync_error, 'tokens inside ServiceWorker are invalid');
|
|
236
266
|
return false;
|
|
237
267
|
}
|
|
238
268
|
});
|
|
@@ -245,7 +275,7 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
|
|
|
245
275
|
}
|
|
246
276
|
startCheckSessionAsync(checkSessionIFrameUri, clientId, sessionState, isSilentSignin = false) {
|
|
247
277
|
return __awaiter(this, void 0, void 0, function* () {
|
|
248
|
-
yield
|
|
278
|
+
yield (0, checkSession_js_1.startCheckSessionAsync)(this, oidcDatabase, this.configuration)(checkSessionIFrameUri, clientId, sessionState, isSilentSignin);
|
|
249
279
|
});
|
|
250
280
|
}
|
|
251
281
|
loginAsync(callbackPath = undefined, extras = null, isSilentSignin = false, scope = undefined, silentLoginOnly = false) {
|
|
@@ -254,9 +284,9 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
|
|
|
254
284
|
return this.loginPromise;
|
|
255
285
|
}
|
|
256
286
|
if (silentLoginOnly) {
|
|
257
|
-
return
|
|
287
|
+
return (0, silentLogin_js_1.default)(window, this.configurationName, this.configuration, this.publishEvent.bind(this), this)(extras, scope);
|
|
258
288
|
}
|
|
259
|
-
this.loginPromise = defaultLoginAsync(window, this.configurationName, this.configuration, this.publishEvent.bind(this), this.initAsync.bind(this))(callbackPath, extras, isSilentSignin, scope);
|
|
289
|
+
this.loginPromise = (0, login_js_1.defaultLoginAsync)(window, this.configurationName, this.configuration, this.publishEvent.bind(this), this.initAsync.bind(this))(callbackPath, extras, isSilentSignin, scope);
|
|
260
290
|
return this.loginPromise.then(result => {
|
|
261
291
|
this.loginPromise = null;
|
|
262
292
|
return result;
|
|
@@ -269,14 +299,14 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
|
|
|
269
299
|
return this.loginCallbackPromise;
|
|
270
300
|
}
|
|
271
301
|
const loginCallbackLocalAsync = () => __awaiter(this, void 0, void 0, function* () {
|
|
272
|
-
const response = yield loginCallbackAsync(this)(isSilenSignin);
|
|
302
|
+
const response = yield (0, login_js_1.loginCallbackAsync)(this)(isSilenSignin);
|
|
273
303
|
// @ts-ignore
|
|
274
304
|
const parsedTokens = response.tokens;
|
|
275
305
|
// @ts-ignore
|
|
276
306
|
this.tokens = parsedTokens;
|
|
277
|
-
const serviceWorker = yield initWorkerAsync(this.configuration.service_worker_relative_url, this.configurationName);
|
|
307
|
+
const serviceWorker = yield (0, initWorker_js_1.initWorkerAsync)(this.configuration.service_worker_relative_url, this.configurationName);
|
|
278
308
|
if (!serviceWorker) {
|
|
279
|
-
const session = initSession(this.configurationName, this.configuration.storage);
|
|
309
|
+
const session = (0, initSession_js_1.initSession)(this.configurationName, this.configuration.storage);
|
|
280
310
|
session.setTokens(parsedTokens);
|
|
281
311
|
}
|
|
282
312
|
this.publishEvent(Oidc.eventNames.token_aquired, parsedTokens);
|
|
@@ -293,20 +323,20 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
|
|
|
293
323
|
synchroniseTokensAsync(refreshToken, index = 0, forceRefresh = false, extras = null, updateTokens) {
|
|
294
324
|
return __awaiter(this, void 0, void 0, function* () {
|
|
295
325
|
while (!navigator.onLine && document.hidden) {
|
|
296
|
-
yield sleepAsync(1000);
|
|
297
|
-
this.publishEvent(eventNames.refreshTokensAsync, { message: 'wait because navigator is offline and hidden' });
|
|
326
|
+
yield (0, initWorker_js_1.sleepAsync)(1000);
|
|
327
|
+
this.publishEvent(events_js_1.eventNames.refreshTokensAsync, { message: 'wait because navigator is offline and hidden' });
|
|
298
328
|
}
|
|
299
329
|
let numberTryOnline = 6;
|
|
300
330
|
while (!navigator.onLine && numberTryOnline > 0) {
|
|
301
|
-
yield sleepAsync(1000);
|
|
331
|
+
yield (0, initWorker_js_1.sleepAsync)(1000);
|
|
302
332
|
numberTryOnline--;
|
|
303
|
-
this.publishEvent(eventNames.refreshTokensAsync, { message: `wait because navigator is offline try ${numberTryOnline}` });
|
|
333
|
+
this.publishEvent(events_js_1.eventNames.refreshTokensAsync, { message: `wait because navigator is offline try ${numberTryOnline}` });
|
|
304
334
|
}
|
|
305
335
|
let numberTryHidden = Math.floor(Math.random() * 15) + 10;
|
|
306
336
|
while (document.hidden && numberTryHidden > 0) {
|
|
307
|
-
yield sleepAsync(1000);
|
|
337
|
+
yield (0, initWorker_js_1.sleepAsync)(1000);
|
|
308
338
|
numberTryHidden--;
|
|
309
|
-
this.publishEvent(eventNames.refreshTokensAsync, { message: `wait because navigator is hidden try ${numberTryHidden}` });
|
|
339
|
+
this.publishEvent(events_js_1.eventNames.refreshTokensAsync, { message: `wait because navigator is hidden try ${numberTryHidden}` });
|
|
310
340
|
}
|
|
311
341
|
const isDocumentHidden = document.hidden;
|
|
312
342
|
const nextIndex = isDocumentHidden ? index : index + 1;
|
|
@@ -315,17 +345,17 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
|
|
|
315
345
|
}
|
|
316
346
|
const configuration = this.configuration;
|
|
317
347
|
const silentLoginAsync = (extras, state, scope = null) => {
|
|
318
|
-
return _silentLoginAsync(this.configurationName, this.configuration, this.publishEvent.bind(this))(extras, state, scope);
|
|
348
|
+
return (0, silentLogin_js_1._silentLoginAsync)(this.configurationName, this.configuration, this.publishEvent.bind(this))(extras, state, scope);
|
|
319
349
|
};
|
|
320
350
|
const localsilentLoginAsync = () => __awaiter(this, void 0, void 0, function* () {
|
|
321
351
|
try {
|
|
322
352
|
let loginParams;
|
|
323
|
-
const serviceWorker = yield initWorkerAsync(configuration.service_worker_relative_url, this.configurationName);
|
|
353
|
+
const serviceWorker = yield (0, initWorker_js_1.initWorkerAsync)(configuration.service_worker_relative_url, this.configurationName);
|
|
324
354
|
if (serviceWorker) {
|
|
325
355
|
loginParams = serviceWorker.getLoginParams(this.configurationName);
|
|
326
356
|
}
|
|
327
357
|
else {
|
|
328
|
-
const session = initSession(this.configurationName, configuration.storage);
|
|
358
|
+
const session = (0, initSession_js_1.initSession)(this.configurationName, configuration.storage);
|
|
329
359
|
loginParams = session.getLoginParams(this.configurationName);
|
|
330
360
|
}
|
|
331
361
|
const silent_token_response = yield silentLoginAsync(Object.assign(Object.assign(Object.assign({}, loginParams.extras), extras), { prompt: 'none' }), loginParams.state);
|
|
@@ -337,19 +367,19 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
|
|
|
337
367
|
}
|
|
338
368
|
catch (exceptionSilent) {
|
|
339
369
|
console.error(exceptionSilent);
|
|
340
|
-
this.publishEvent(eventNames.refreshTokensAsync_silent_error, { message: 'exceptionSilent', exception: exceptionSilent.message });
|
|
370
|
+
this.publishEvent(events_js_1.eventNames.refreshTokensAsync_silent_error, { message: 'exceptionSilent', exception: exceptionSilent.message });
|
|
341
371
|
if (exceptionSilent && exceptionSilent.message && exceptionSilent.message.startsWith('oidc')) {
|
|
342
372
|
updateTokens(null);
|
|
343
|
-
this.publishEvent(eventNames.refreshTokensAsync_error, { message: 'refresh token silent' });
|
|
373
|
+
this.publishEvent(events_js_1.eventNames.refreshTokensAsync_error, { message: 'refresh token silent' });
|
|
344
374
|
return { tokens: null, status: 'SESSION_LOST' };
|
|
345
375
|
}
|
|
346
376
|
}
|
|
347
|
-
this.publishEvent(eventNames.refreshTokensAsync_error, { message: 'refresh token silent return' });
|
|
377
|
+
this.publishEvent(events_js_1.eventNames.refreshTokensAsync_error, { message: 'refresh token silent return' });
|
|
348
378
|
return yield this.synchroniseTokensAsync(null, nextIndex, forceRefresh, extras, updateTokens);
|
|
349
379
|
});
|
|
350
380
|
if (index > 4) {
|
|
351
381
|
updateTokens(null);
|
|
352
|
-
this.publishEvent(eventNames.refreshTokensAsync_error, { message: 'refresh token' });
|
|
382
|
+
this.publishEvent(events_js_1.eventNames.refreshTokensAsync_error, { message: 'refresh token' });
|
|
353
383
|
return { tokens: null, status: 'SESSION_LOST' };
|
|
354
384
|
}
|
|
355
385
|
try {
|
|
@@ -357,7 +387,7 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
|
|
|
357
387
|
switch (status) {
|
|
358
388
|
case 'SESSION_LOST':
|
|
359
389
|
updateTokens(null);
|
|
360
|
-
this.publishEvent(eventNames.refreshTokensAsync_error, { message: 'refresh token session lost' });
|
|
390
|
+
this.publishEvent(events_js_1.eventNames.refreshTokensAsync_error, { message: 'refresh token session lost' });
|
|
361
391
|
return { tokens: null, status: 'SESSION_LOST' };
|
|
362
392
|
case 'NOT_CONNECTED':
|
|
363
393
|
updateTokens(null);
|
|
@@ -371,13 +401,13 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
|
|
|
371
401
|
return { tokens, status: 'LOGGED_IN' };
|
|
372
402
|
case 'LOGOUT_FROM_ANOTHER_TAB':
|
|
373
403
|
updateTokens(null);
|
|
374
|
-
this.publishEvent(eventNames.logout_from_another_tab, { status: 'session syncTokensAsync' });
|
|
404
|
+
this.publishEvent(events_js_1.eventNames.logout_from_another_tab, { status: 'session syncTokensAsync' });
|
|
375
405
|
return { tokens: null, status: 'LOGGED_OUT' };
|
|
376
406
|
case 'REQUIRE_SYNC_TOKENS':
|
|
377
|
-
this.publishEvent(eventNames.refreshTokensAsync_begin, { refreshToken, status, tryNumber: index });
|
|
407
|
+
this.publishEvent(events_js_1.eventNames.refreshTokensAsync_begin, { refreshToken, status, tryNumber: index });
|
|
378
408
|
return yield localsilentLoginAsync();
|
|
379
409
|
default: {
|
|
380
|
-
this.publishEvent(eventNames.refreshTokensAsync_begin, { refreshToken, status, tryNumber: index });
|
|
410
|
+
this.publishEvent(events_js_1.eventNames.refreshTokensAsync_begin, { refreshToken, status, tryNumber: index });
|
|
381
411
|
if (!refreshToken) {
|
|
382
412
|
return yield localsilentLoginAsync();
|
|
383
413
|
}
|
|
@@ -400,21 +430,21 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
|
|
|
400
430
|
};
|
|
401
431
|
const oidcServerConfiguration = yield this.initAsync(authority, configuration.authority_configuration);
|
|
402
432
|
const timeoutMs = document.hidden ? 10000 : 30000 * 10;
|
|
403
|
-
const tokenResponse = yield performTokenRequestAsync(oidcServerConfiguration.tokenEndpoint, details, finalExtras, tokens, configuration.token_renew_mode, timeoutMs);
|
|
433
|
+
const tokenResponse = yield (0, requests_js_1.performTokenRequestAsync)(oidcServerConfiguration.tokenEndpoint, details, finalExtras, tokens, configuration.token_renew_mode, timeoutMs);
|
|
404
434
|
if (tokenResponse.success) {
|
|
405
|
-
const { isValid, reason } = isTokensOidcValid(tokenResponse.data, nonce.nonce, oidcServerConfiguration);
|
|
435
|
+
const { isValid, reason } = (0, parseTokens_js_1.isTokensOidcValid)(tokenResponse.data, nonce.nonce, oidcServerConfiguration);
|
|
406
436
|
if (!isValid) {
|
|
407
437
|
updateTokens(null);
|
|
408
|
-
this.publishEvent(eventNames.refreshTokensAsync_error, { message: `refresh token return not valid tokens, reason: ${reason}` });
|
|
438
|
+
this.publishEvent(events_js_1.eventNames.refreshTokensAsync_error, { message: `refresh token return not valid tokens, reason: ${reason}` });
|
|
409
439
|
return { tokens: null, status: 'SESSION_LOST' };
|
|
410
440
|
}
|
|
411
441
|
updateTokens(tokenResponse.data);
|
|
412
|
-
this.publishEvent(eventNames.refreshTokensAsync_end, { success: tokenResponse.success });
|
|
442
|
+
this.publishEvent(events_js_1.eventNames.refreshTokensAsync_end, { success: tokenResponse.success });
|
|
413
443
|
this.publishEvent(Oidc.eventNames.token_renewed, { reason: 'REFRESH_TOKEN' });
|
|
414
444
|
return { tokens: tokenResponse.data, status: 'LOGGED_IN' };
|
|
415
445
|
}
|
|
416
446
|
else {
|
|
417
|
-
this.publishEvent(eventNames.refreshTokensAsync_silent_error, {
|
|
447
|
+
this.publishEvent(events_js_1.eventNames.refreshTokensAsync_silent_error, {
|
|
418
448
|
message: 'bad request',
|
|
419
449
|
tokenResponse,
|
|
420
450
|
});
|
|
@@ -427,7 +457,7 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
|
|
|
427
457
|
}
|
|
428
458
|
catch (exception) {
|
|
429
459
|
console.error(exception);
|
|
430
|
-
this.publishEvent(eventNames.refreshTokensAsync_silent_error, { message: 'exception', exception: exception.message });
|
|
460
|
+
this.publishEvent(events_js_1.eventNames.refreshTokensAsync_silent_error, { message: 'exception', exception: exception.message });
|
|
431
461
|
return this.synchroniseTokensAsync(refreshToken, nextIndex, forceRefresh, extras, updateTokens);
|
|
432
462
|
}
|
|
433
463
|
});
|
|
@@ -443,7 +473,7 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
|
|
|
443
473
|
}
|
|
444
474
|
let nonce = nullNonce;
|
|
445
475
|
const oidcServerConfiguration = yield this.initAsync(configuration.authority, configuration.authority_configuration);
|
|
446
|
-
const serviceWorker = yield initWorkerAsync(configuration.service_worker_relative_url, configurationName);
|
|
476
|
+
const serviceWorker = yield (0, initWorker_js_1.initWorkerAsync)(configuration.service_worker_relative_url, configurationName);
|
|
447
477
|
if (serviceWorker) {
|
|
448
478
|
const { status, tokens } = yield serviceWorker.initAsync(oidcServerConfiguration, 'syncTokensAsync', configuration);
|
|
449
479
|
if (status === 'LOGGED_OUT') {
|
|
@@ -456,7 +486,7 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
|
|
|
456
486
|
return { tokens: null, status: 'REQUIRE_SYNC_TOKENS', nonce: nullNonce };
|
|
457
487
|
}
|
|
458
488
|
else if (tokens.issuedAt !== currentTokens.issuedAt) {
|
|
459
|
-
const timeLeft = computeTimeLeft(configuration.refresh_time_before_tokens_expiration_in_second, tokens.expiresAt);
|
|
489
|
+
const timeLeft = (0, parseTokens_js_1.computeTimeLeft)(configuration.refresh_time_before_tokens_expiration_in_second, tokens.expiresAt);
|
|
460
490
|
const status = (timeLeft > 0) ? 'TOKEN_UPDATED_BY_ANOTHER_TAB_TOKENS_VALID' : 'TOKEN_UPDATED_BY_ANOTHER_TAB_TOKENS_INVALID';
|
|
461
491
|
const nonce = yield serviceWorker.getNonceAsync();
|
|
462
492
|
return { tokens, status, nonce };
|
|
@@ -464,7 +494,7 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
|
|
|
464
494
|
nonce = yield serviceWorker.getNonceAsync();
|
|
465
495
|
}
|
|
466
496
|
else {
|
|
467
|
-
const session = initSession(configurationName, (_a = configuration.storage) !== null && _a !== void 0 ? _a : sessionStorage);
|
|
497
|
+
const session = (0, initSession_js_1.initSession)(configurationName, (_a = configuration.storage) !== null && _a !== void 0 ? _a : sessionStorage);
|
|
468
498
|
const { tokens, status } = yield session.initAsync();
|
|
469
499
|
if (!tokens) {
|
|
470
500
|
return { tokens: null, status: 'LOGOUT_FROM_ANOTHER_TAB', nonce: nullNonce };
|
|
@@ -473,14 +503,14 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
|
|
|
473
503
|
return { tokens: null, status: 'SESSIONS_LOST', nonce: nullNonce };
|
|
474
504
|
}
|
|
475
505
|
else if (tokens.issuedAt !== currentTokens.issuedAt) {
|
|
476
|
-
const timeLeft = computeTimeLeft(configuration.refresh_time_before_tokens_expiration_in_second, tokens.expiresAt);
|
|
506
|
+
const timeLeft = (0, parseTokens_js_1.computeTimeLeft)(configuration.refresh_time_before_tokens_expiration_in_second, tokens.expiresAt);
|
|
477
507
|
const status = (timeLeft > 0) ? 'TOKEN_UPDATED_BY_ANOTHER_TAB_TOKENS_VALID' : 'TOKEN_UPDATED_BY_ANOTHER_TAB_TOKENS_INVALID';
|
|
478
508
|
const nonce = yield session.getNonceAsync();
|
|
479
509
|
return { tokens, status, nonce };
|
|
480
510
|
}
|
|
481
511
|
nonce = yield session.getNonceAsync();
|
|
482
512
|
}
|
|
483
|
-
const timeLeft = computeTimeLeft(configuration.refresh_time_before_tokens_expiration_in_second, currentTokens.expiresAt);
|
|
513
|
+
const timeLeft = (0, parseTokens_js_1.computeTimeLeft)(configuration.refresh_time_before_tokens_expiration_in_second, currentTokens.expiresAt);
|
|
484
514
|
const status = (timeLeft > 0) ? 'TOKENS_VALID' : 'TOKENS_INVALID';
|
|
485
515
|
if (forceRefresh) {
|
|
486
516
|
return { tokens: currentTokens, status: 'FORCE_REFRESH', nonce };
|
|
@@ -502,7 +532,7 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
|
|
|
502
532
|
if (this.userInfoPromise !== null) {
|
|
503
533
|
return this.userInfoPromise;
|
|
504
534
|
}
|
|
505
|
-
this.userInfoPromise = userInfoAsync(this);
|
|
535
|
+
this.userInfoPromise = (0, user_js_1.userInfoAsync)(this);
|
|
506
536
|
return this.userInfoPromise.then(result => {
|
|
507
537
|
this.userInfoPromise = null;
|
|
508
538
|
return result;
|
|
@@ -516,9 +546,9 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
|
|
|
516
546
|
if (!this.timeoutId) {
|
|
517
547
|
return;
|
|
518
548
|
}
|
|
519
|
-
|
|
549
|
+
timer_js_1.default.clearTimeout(this.timeoutId);
|
|
520
550
|
// @ts-ignore
|
|
521
|
-
this.renewTokensPromise = renewTokensAndStartTimerAsync(this, this.tokens.refreshToken, true, extras);
|
|
551
|
+
this.renewTokensPromise = (0, renewTokens_js_1.renewTokensAndStartTimerAsync)(this, this.tokens.refreshToken, true, extras);
|
|
522
552
|
return this.renewTokensPromise.then(result => {
|
|
523
553
|
this.renewTokensPromise = null;
|
|
524
554
|
return result;
|
|
@@ -527,14 +557,14 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
|
|
|
527
557
|
}
|
|
528
558
|
destroyAsync(status) {
|
|
529
559
|
return __awaiter(this, void 0, void 0, function* () {
|
|
530
|
-
return yield destroyAsync(this)(status);
|
|
560
|
+
return yield (0, logout_js_1.destroyAsync)(this)(status);
|
|
531
561
|
});
|
|
532
562
|
}
|
|
533
563
|
logoutSameTabAsync(clientId, sub) {
|
|
534
564
|
return __awaiter(this, void 0, void 0, function* () {
|
|
535
565
|
// @ts-ignore
|
|
536
566
|
if (this.configuration.monitor_session && this.configuration.client_id === clientId && sub && this.tokens && this.tokens.idTokenPayload && this.tokens.idTokenPayload.sub === sub) {
|
|
537
|
-
this.publishEvent(eventNames.logout_from_same_tab, { message: sub });
|
|
567
|
+
this.publishEvent(events_js_1.eventNames.logout_from_same_tab, { message: sub });
|
|
538
568
|
yield this.destroyAsync('LOGGED_OUT');
|
|
539
569
|
}
|
|
540
570
|
});
|
|
@@ -544,7 +574,7 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
|
|
|
544
574
|
// @ts-ignore
|
|
545
575
|
if (this.configuration.monitor_session && this.configuration.client_id === clientId && sub && this.tokens && this.tokens.idTokenPayload && this.tokens.idTokenPayload.sub === sub) {
|
|
546
576
|
yield this.destroyAsync('LOGGED_OUT');
|
|
547
|
-
this.publishEvent(eventNames.logout_from_another_tab, { message: 'SessionMonitor', sub });
|
|
577
|
+
this.publishEvent(events_js_1.eventNames.logout_from_another_tab, { message: 'SessionMonitor', sub });
|
|
548
578
|
}
|
|
549
579
|
});
|
|
550
580
|
}
|
|
@@ -553,7 +583,7 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
|
|
|
553
583
|
if (this.logoutPromise) {
|
|
554
584
|
return this.logoutPromise;
|
|
555
585
|
}
|
|
556
|
-
this.logoutPromise = logoutAsync(this, oidcDatabase)(callbackPathOrUrl, extras);
|
|
586
|
+
this.logoutPromise = (0, logout_js_1.logoutAsync)(this, oidcDatabase)(callbackPathOrUrl, extras);
|
|
557
587
|
return this.logoutPromise.then(result => {
|
|
558
588
|
this.logoutPromise = null;
|
|
559
589
|
return result;
|
|
@@ -561,6 +591,7 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
|
|
|
561
591
|
});
|
|
562
592
|
}
|
|
563
593
|
}
|
|
564
|
-
Oidc
|
|
565
|
-
|
|
594
|
+
exports.Oidc = Oidc;
|
|
595
|
+
Oidc.eventNames = events_js_1.eventNames;
|
|
596
|
+
exports.default = Oidc;
|
|
566
597
|
//# sourceMappingURL=oidc.js.map
|
package/dist/vanilla/oidc.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oidc.js","sourceRoot":"","sources":["../../src/oidc/vanilla/oidc.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"oidc.js","sourceRoot":"","sources":["../../src/oidc/vanilla/oidc.ts"],"names":[],"mappings":"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"}
|