@axa-fr/react-oidc 6.0.0-alpha0 → 6.0.0-alpha3

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/README.md CHANGED
@@ -112,6 +112,7 @@ const configuration = {
112
112
  client_id: 'interactive.public.short',
113
113
  redirect_uri: 'http://localhost:4200/authentication/callback',
114
114
  silent_redirect_uri: 'http://localhost:4200/authentication/silent-callback',
115
+ silent_signin_uri: 'http://localhost:4200/authentication/silent-signin',
115
116
  scope: 'openid profile email api offline_access', // offline_access scope allow your client to retrieve the refresh_token
116
117
  authority: 'https://demo.identityserver.io',
117
118
  service_worker_relative_url:'/OidcServiceWorker.js',
@@ -144,6 +145,7 @@ const propTypes = {
144
145
  client_id: PropTypes.string.isRequired, // oidc client id
145
146
  redirect_uri: PropTypes.string.isRequired, // oidc redirect url
146
147
  silent_redirect_uri: PropTypes.string, // Optional activate silent-signin that use cookies between OIDC server and client javascript to restore sessions
148
+ silent_sigin_uri: PropTypes.string, // Optional but require if silent_redirect_uri is set
147
149
  silent_signin_timeout: PropTypes.number, // Optional default is 12000 milliseconds
148
150
  scope: PropTypes.string.isRequired, // oidc scope (you need to set "offline_access")
149
151
  authority: PropTypes.string.isRequired,
@@ -160,6 +162,9 @@ const propTypes = {
160
162
  service_worker_only: PropTypes.boolean, // default false
161
163
  extras: StringMap|undefined, // ex: {'prompt': 'consent', 'access_type': 'offline'} list of key/value that are send to the oidc server (more info: https://github.com/openid/AppAuth-JS)
162
164
  withCustomHistory: PropTypes.function, // Override history modification, return instance with replaceState(url, stateHistory) implemented (like History.replaceState())
165
+ authority_time_cache_wellknowurl_in_second: 60* 60, // Time to cache in second of openid wellknowurl, default is 1 hour
166
+ monitor_session:true, // Add OpenId monitor session, default is true (more information https://openid.net/specs/openid-connect-session-1_0.html)
167
+ onLogout: Function // Optional, can be set to override the default behavior, this function is triggered when user is logout from another tab
163
168
  }).isRequired
164
169
  };
165
170
  ```
@@ -448,6 +453,7 @@ const configuration = {
448
453
  client_id: 'interactive.public.short',
449
454
  redirect_uri: 'http://localhost:4200/authentication/callback',
450
455
  silent_redirect_uri: 'http://localhost:4200/authentication/silent-callback',
456
+ silent_signin_uri: 'http://localhost:4200/authentication/silent-signin',
451
457
  scope: 'openid profile email api offline_access',
452
458
  authority: 'https://demo.identityserver.io',
453
459
  service_worker_relative_url:'/OidcServiceWorker.js',
@@ -514,15 +520,9 @@ const configuration = {
514
520
  client_id: 'interactive.public.short',
515
521
  redirect_uri: 'http://localhost:3001/#authentication/callback',
516
522
  silent_redirect_uri: 'http://localhost:3001/#authentication/silent-callback', // Optional activate silent-signin that use cookies between OIDC server and client javascript to restore the session
523
+ silent_signin_uri: 'http://localhost:4200/authentication/silent-signin',
517
524
  scope: 'openid profile email api offline_access',
518
- authority: 'https://demo.identityserver.io',
519
- authority_configuration: {
520
- authorization_endpoint: 'https://demo.duendesoftware.com/connect/authorize',
521
- token_endpoint: 'https://demo.duendesoftware.com/connect/token',
522
- userinfo_endpoint: 'https://demo.duendesoftware.com/connect/userinfo',
523
- end_session_endpoint: 'https://demo.duendesoftware.com/connect/endsession',
524
- revocation_endpoint: 'https://demo.duendesoftware.com/connect/revocation',
525
- },
525
+ authority: 'https://demo.duendesoftware.com',
526
526
  };
527
527
 
528
528
  const onEvent=(configurationName, eventName, data )=>{
@@ -564,7 +564,8 @@ React oidc work also with hash router.
564
564
  export const configurationIdentityServerWithHash = {
565
565
  client_id: 'interactive.public.short',
566
566
  redirect_uri: window.location.origin+'#authentication-callback',
567
- silent_redirect_uri: window.location.origin+'#authentication-silent-callback',
567
+ silent_redirect_uri: window.location.origin+'#authentication-silent-callback',
568
+ silent_signin_uri: window.location.origin+'#authentication-silent-signin',
568
569
  scope: 'openid profile email api offline_access',
569
570
  authority: 'https://demo.duendesoftware.com',
570
571
  refresh_time_before_tokens_expiration_in_second: 70,
@@ -120,11 +120,12 @@ const keepAliveAsync = async (event) => {
120
120
  const init = {"status": 200, "statusText": 'oidc-service-worker'};
121
121
  const response = new Response('{}', init);
122
122
  if(!isFromVanilla) {
123
- for(let i=0; i<240;i++){
124
- await sleep(1000 + Math.floor(Math.random() * 1000));
123
+ /*for(let i=0; i<10;i++){
124
+ await sleep(1000);
125
125
  const cache = await caches.open("oidc_dummy_cache");
126
126
  await cache.put(event.request, response.clone());
127
- }
127
+ }*/
128
+ await sleep(15000);
128
129
  }
129
130
 
130
131
  return response;
@@ -218,6 +219,14 @@ self.addEventListener('install', handleInstall);
218
219
  self.addEventListener('activate', handleActivate);
219
220
  self.addEventListener('fetch', handleFetch);
220
221
 
222
+
223
+ const checkDomain =(domains, tokenEndpoint) => {
224
+ const domain = domains.find(domain => tokenEndpoint.startsWith(domain));
225
+ if(!domain){
226
+ throw new Error("Domain " + tokenEndpoint+ " is not trusted, please add domain in TrustedDomains.js");
227
+ }
228
+ }
229
+
221
230
  addEventListener('message', event => {
222
231
  const port = event.ports[0];
223
232
  const data = event.data;
@@ -229,6 +238,7 @@ addEventListener('message', event => {
229
238
  tokens: null,
230
239
  items:[],
231
240
  oidcServerConfiguration: null,
241
+ isLogin:null,
232
242
  configurationName: configurationName,
233
243
  };
234
244
  currentDatabase = database[configurationName];
@@ -247,7 +257,13 @@ addEventListener('message', event => {
247
257
  port.postMessage({configurationName});
248
258
  return;
249
259
  case "init":
250
- currentDatabase.oidcServerConfiguration = data.data.oidcServerConfiguration;
260
+ const oidcServerConfiguration = data.data.oidcServerConfiguration;
261
+ const tokenEndpoint = oidcServerConfiguration.tokenEndpoint;
262
+ const domains = trustedDomains[configurationName];
263
+ checkDomain(domains, tokenEndpoint);
264
+ const userInfoEndpoint = oidcServerConfiguration.userInfoEndpoint;
265
+ checkDomain(domains, userInfoEndpoint);
266
+ currentDatabase.oidcServerConfiguration = oidcServerConfiguration;
251
267
  const where = data.data.where;
252
268
  if(where === "loginCallbackAsync" || where === "tryKeepExistingSessionAsync") {
253
269
  currentLoginCallbackConfigurationName = configurationName;
@@ -1,6 +1,9 @@
1
1
  
2
- // Add here trusted domains, access tokens will be send to
2
+ // Add here trusted domains, access tokens will be send to
3
3
  const trustedDomains = {
4
- default:["http://localhost:4200"],
5
- auth0:[]
6
- };
4
+ default:["http://localhost:4200", "https://demo.duendesoftware.com"],
5
+ config_classic: ["https://demo.duendesoftware.com"] ,
6
+ config_without_refresh_token: ["https://demo.duendesoftware.com"],
7
+ config_google: ["https://oauth2.googleapis.com", "https://openidconnect.googleapis.com"],
8
+ config_with_hash: ["https://demo.duendesoftware.com"]
9
+ };
@@ -12,6 +12,6 @@ export declare const initWorkerAsync: (serviceWorkerRelativeUrl: any, configurat
12
12
  isServiceWorkerProxyActiveAsync: () => Promise<boolean>;
13
13
  setSessionStateAsync: (sessionState: any) => Promise<unknown>;
14
14
  getSessionStateAsync: () => Promise<any>;
15
- unregisterAsync: () => Promise<void>;
15
+ unregisterAsync: () => Promise<boolean>;
16
16
  }>;
17
17
  //# sourceMappingURL=initWorker.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"initWorker.d.ts","sourceRoot":"","sources":["../../src/oidc/vanilla/initWorker.ts"],"names":[],"mappings":"AAkCA,eAAO,MAAM,UAAU,yCAEtB,CAAA;AA+BD,eAAO,MAAM,eAAe;;;;;;;;;;;;;;EA8F3B,CAAA"}
1
+ {"version":3,"file":"initWorker.d.ts","sourceRoot":"","sources":["../../src/oidc/vanilla/initWorker.ts"],"names":[],"mappings":"AAkCA,eAAO,MAAM,UAAU,yCAEtB,CAAA;AAgCD,eAAO,MAAM,eAAe;;;;;;;;;;;;;;EA8F3B,CAAA"}
@@ -75,8 +75,9 @@ var sleepAsync = function (milliseconds) {
75
75
  };
76
76
  exports.sleepAsync = sleepAsync;
77
77
  var keepAlive = function () {
78
- fetch('/OidcKeepAliveServiceWorker.json');
79
- (0, exports.sleepAsync)(230 * 1000).then(keepAlive);
78
+ fetch('/OidcKeepAliveServiceWorker.json').then(function () {
79
+ keepAlive();
80
+ });
80
81
  };
81
82
  var isServiceWorkerProxyActiveAsync = function () {
82
83
  return fetch('/OidcKeepAliveServiceWorker.json', {
@@ -149,9 +150,7 @@ var initWorkerAsync = function (serviceWorkerRelativeUrl, configurationName) { r
149
150
  return __generator(this, function (_a) {
150
151
  switch (_a.label) {
151
152
  case 0: return [4 /*yield*/, registration.unregister()];
152
- case 1:
153
- _a.sent();
154
- return [2 /*return*/];
153
+ case 1: return [2 /*return*/, _a.sent()];
155
154
  }
156
155
  });
157
156
  }); };
@@ -1 +1 @@
1
- {"version":3,"file":"initWorker.js","sourceRoot":"","sources":["../../src/oidc/vanilla/initWorker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"initWorker.js","sourceRoot":"","sources":["../../src/oidc/vanilla/initWorker.ts"],"names":[],"mappings":"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"}
@@ -69,10 +69,9 @@ export declare class Oidc {
69
69
  loginCallbackAsync_end: string;
70
70
  loginCallbackAsync_error: string;
71
71
  refreshTokensAsync_begin: string;
72
+ refreshTokensAsync: string;
72
73
  refreshTokensAsync_end: string;
73
74
  refreshTokensAsync_error: string;
74
- refreshTokensAsync_silent_begin: string;
75
- refreshTokensAsync_silent_end: string;
76
75
  refreshTokensAsync_silent_error: string;
77
76
  tryKeepExistingSessionAsync_begin: string;
78
77
  tryKeepExistingSessionAsync_end: string;
@@ -98,7 +97,7 @@ export declare class Oidc {
98
97
  loginCallbackPromise: Promise<any>;
99
98
  loginCallbackAsync(isSilenSignin?: boolean): Promise<any>;
100
99
  _loginCallbackAsync(isSilentSignin?: boolean): Promise<unknown>;
101
- refreshTokensAsync(refreshToken: any, silentEvent?: boolean): Promise<any>;
100
+ refreshTokensAsync(refreshToken: any): Promise<any>;
102
101
  syncTokensAsyncPromise: any;
103
102
  syncTokensAsync(): Promise<void>;
104
103
  loginCallbackWithAutoTokensRenewPromise: Promise<loginCallbackResult>;
@@ -1 +1 @@
1
- {"version":3,"file":"oidc.d.ts","sourceRoot":"","sources":["../../src/oidc/vanilla/oidc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oidc.d.ts","sourceRoot":"","sources":["../../src/oidc/vanilla/oidc.ts"],"names":[],"mappings":"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"}
@@ -88,14 +88,6 @@ var OidcAuthorizationServiceConfiguration = /** @class */ (function (_super) {
88
88
  return OidcAuthorizationServiceConfiguration;
89
89
  }(appauth_1.AuthorizationServiceConfiguration));
90
90
  exports.OidcAuthorizationServiceConfiguration = OidcAuthorizationServiceConfiguration;
91
- var isInIframe = function () {
92
- try {
93
- return window.self !== window.top;
94
- }
95
- catch (e) {
96
- return true;
97
- }
98
- };
99
91
  var idTokenPayload = function (token) {
100
92
  var base64Url = token.split('.')[1];
101
93
  var base64 = base64Url.replace(/-/g, '+').replace(/_/g, '/');
@@ -176,7 +168,7 @@ var autoRenewTokens = function (oidc, refreshToken, expiresAt) {
176
168
  }
177
169
  return [2 /*return*/];
178
170
  }
179
- oidc.publishEvent(Oidc.eventNames.token_renewed, oidc.tokens);
171
+ oidc.publishEvent(Oidc.eventNames.token_renewed, {});
180
172
  if (oidc.timeoutId) {
181
173
  oidc.timeoutId = autoRenewTokens(oidc, tokens.refreshToken, oidc.tokens.expiresAt);
182
174
  }
@@ -287,10 +279,9 @@ var eventNames = {
287
279
  loginCallbackAsync_end: "loginCallbackAsync_end",
288
280
  loginCallbackAsync_error: "loginCallbackAsync_error",
289
281
  refreshTokensAsync_begin: "refreshTokensAsync_begin",
282
+ refreshTokensAsync: "refreshTokensAsync",
290
283
  refreshTokensAsync_end: "refreshTokensAsync_end",
291
284
  refreshTokensAsync_error: "refreshTokensAsync_error",
292
- refreshTokensAsync_silent_begin: "refreshTokensAsync_silent_begin",
293
- refreshTokensAsync_silent_end: "refreshTokensAsync_silent_end",
294
285
  refreshTokensAsync_silent_error: "refreshTokensAsync_silent_error",
295
286
  tryKeepExistingSessionAsync_begin: "tryKeepExistingSessionAsync_begin",
296
287
  tryKeepExistingSessionAsync_end: "tryKeepExistingSessionAsync_end",
@@ -312,7 +303,7 @@ var oneHourSecond = 60 * 60;
312
303
  var fetchFromIssuer = function (openIdIssuerUrl, timeCacheSecond) {
313
304
  if (timeCacheSecond === void 0) { timeCacheSecond = oneHourSecond; }
314
305
  return __awaiter(void 0, void 0, void 0, function () {
315
- var fullUrl, localStorageKey, cacheJson, oneHourMinisecond, res, result;
306
+ var fullUrl, localStorageKey, cacheJson, oneHourMinisecond, response, result;
316
307
  return __generator(this, function (_a) {
317
308
  switch (_a.label) {
318
309
  case 0:
@@ -326,11 +317,11 @@ var fetchFromIssuer = function (openIdIssuerUrl, timeCacheSecond) {
326
317
  }
327
318
  return [4 /*yield*/, fetch(fullUrl)];
328
319
  case 1:
329
- res = _a.sent();
330
- if (res.status != 200) {
320
+ response = _a.sent();
321
+ if (response.status != 200) {
331
322
  return [2 /*return*/, null];
332
323
  }
333
- return [4 /*yield*/, res.json()];
324
+ return [4 /*yield*/, response.json()];
334
325
  case 2:
335
326
  result = _a.sent();
336
327
  window.localStorage.setItem(localStorageKey, JSON.stringify({ result: result, timestamp: Date.now() }));
@@ -491,7 +482,7 @@ var Oidc = /** @class */ (function () {
491
482
  if (!isResolved_1) {
492
483
  if (data.startsWith(key)) {
493
484
  var result = JSON.parse(e.data.replace(key, ''));
494
- self_1.publishEvent(eventNames.silentSigninAsync_end, result);
485
+ self_1.publishEvent(eventNames.silentSigninAsync_end, {});
495
486
  iframe_1.remove();
496
487
  isResolved_1 = true;
497
488
  resolve(result);
@@ -571,7 +562,7 @@ var Oidc = /** @class */ (function () {
571
562
  return [2 /*return*/, this.tryKeepExistingSessionPromise];
572
563
  }
573
564
  funcAsync = function () { return __awaiter(_this, void 0, void 0, function () {
574
- var serviceWorker, configuration, oidcServerConfiguration, tokens, sessionState, reformattedToken, _a, session, tokens, sessionState, _b, exception_1;
565
+ var serviceWorker, configuration, oidcServerConfiguration, tokens, reformattedToken, _a, sessionState, session, tokens, _b, sessionState, exception_1;
575
566
  var _c;
576
567
  return __generator(this, function (_d) {
577
568
  switch (_d.label) {
@@ -596,14 +587,9 @@ var Oidc = /** @class */ (function () {
596
587
  tokens = (_d.sent()).tokens;
597
588
  if (!tokens) return [3 /*break*/, 8];
598
589
  serviceWorker.startKeepAliveServiceWorker();
599
- return [4 /*yield*/, serviceWorker.getSessionStateAsync()];
600
- case 5:
601
- sessionState = _d.sent();
602
- return [4 /*yield*/, this.startCheckSessionAsync(oidcServerConfiguration.check_session_iframe, configuration.client_id, sessionState)];
603
- case 6:
604
- _d.sent();
605
590
  reformattedToken = {
606
591
  accessToken: tokens.access_token,
592
+ refreshToken: tokens.refresh_token,
607
593
  expiresIn: tokens.expires_in,
608
594
  idToken: tokens.id_token,
609
595
  scope: tokens.scope,
@@ -611,11 +597,17 @@ var Oidc = /** @class */ (function () {
611
597
  };
612
598
  _a = this;
613
599
  return [4 /*yield*/, setTokensAsync(serviceWorker, reformattedToken)];
614
- case 7:
600
+ case 5:
615
601
  _a.tokens = _d.sent();
616
602
  this.serviceWorker = serviceWorker;
617
603
  // @ts-ignore
618
- this.timeoutId = autoRenewTokens(this, tokens.refreshToken, this.tokens.expiresAt);
604
+ this.timeoutId = autoRenewTokens(this, this.tokens.refreshToken, this.tokens.expiresAt);
605
+ return [4 /*yield*/, serviceWorker.getSessionStateAsync()];
606
+ case 6:
607
+ sessionState = _d.sent();
608
+ return [4 /*yield*/, this.startCheckSessionAsync(oidcServerConfiguration.check_session_iframe, configuration.client_id, sessionState)];
609
+ case 7:
610
+ _d.sent();
619
611
  this.publishEvent(eventNames.tryKeepExistingSessionAsync_end, {
620
612
  success: true,
621
613
  message: "tokens inside ServiceWorker are valid"
@@ -637,25 +629,21 @@ var Oidc = /** @class */ (function () {
637
629
  return [4 /*yield*/, session.initAsync()];
638
630
  case 10:
639
631
  tokens = (_d.sent()).tokens;
640
- console.log("const {tokens} = await session.initAsync();");
641
- console.log(tokens);
642
632
  if (!tokens) return [3 /*break*/, 13];
643
- sessionState = session.getSessionState();
644
- return [4 /*yield*/, this.startCheckSessionAsync(oidcServerConfiguration.check_session_iframe, configuration.client_id, sessionState)];
645
- case 11:
646
- _d.sent();
647
- //const updatedTokens = await this.refreshTokensAsync(tokens.refreshToken, true);
648
633
  // @ts-ignore
649
634
  _b = this;
650
635
  return [4 /*yield*/, setTokensAsync(serviceWorker, tokens)];
651
- case 12:
652
- //const updatedTokens = await this.refreshTokensAsync(tokens.refreshToken, true);
636
+ case 11:
653
637
  // @ts-ignore
654
638
  _b.tokens = _d.sent();
655
639
  //session.setTokens(this.tokens);
656
640
  this.session = session;
657
641
  // @ts-ignore
658
642
  this.timeoutId = autoRenewTokens(this, tokens.refreshToken, this.tokens.expiresAt);
643
+ sessionState = session.getSessionState();
644
+ return [4 /*yield*/, this.startCheckSessionAsync(oidcServerConfiguration.check_session_iframe, configuration.client_id, sessionState)];
645
+ case 12:
646
+ _d.sent();
659
647
  this.publishEvent(eventNames.tryKeepExistingSessionAsync_end, {
660
648
  success: true,
661
649
  message: "tokens inside storage are valid"
@@ -705,12 +693,12 @@ var Oidc = /** @class */ (function () {
705
693
  return [2 /*return*/, this.loginPromise];
706
694
  }
707
695
  loginLocalAsync = function () { return __awaiter(_this, void 0, void 0, function () {
708
- var location_1, url, configuration, redirectUri, sessionKey, serviceWorker, oidcServerConfiguration, storage, session, extraFinal, queryStringUtil, authorizationHandler, authRequest, exception_2;
696
+ var location_1, url, configuration, redirectUri, sessionKey, serviceWorker, oidcServerConfiguration, isServiceWorkerProxyActive, isUnregistered, storage, session, extraFinal, queryStringUtil, authorizationHandler, authRequest, exception_2;
709
697
  var _a;
710
698
  return __generator(this, function (_b) {
711
699
  switch (_b.label) {
712
700
  case 0:
713
- _b.trys.push([0, 7, , 8]);
701
+ _b.trys.push([0, 11, , 12]);
714
702
  location_1 = window.location;
715
703
  url = callbackPath || location_1.pathname + (location_1.search || '') + (location_1.hash || '');
716
704
  this.publishEvent(eventNames.loginAsync_begin, {});
@@ -727,22 +715,38 @@ var Oidc = /** @class */ (function () {
727
715
  return [4 /*yield*/, this.initAsync(configuration.authority, configuration.authority_configuration)];
728
716
  case 2:
729
717
  oidcServerConfiguration = _b.sent();
718
+ if (!(serviceWorker && installServiceWorker)) return [3 /*break*/, 6];
719
+ return [4 /*yield*/, serviceWorker.isServiceWorkerProxyActiveAsync()];
720
+ case 3:
721
+ isServiceWorkerProxyActive = _b.sent();
722
+ if (!!isServiceWorkerProxyActive) return [3 /*break*/, 6];
723
+ return [4 /*yield*/, serviceWorker.unregisterAsync()];
724
+ case 4:
725
+ isUnregistered = _b.sent();
726
+ console.log("isUnregistered");
727
+ console.log(isUnregistered);
728
+ if (!isUnregistered) return [3 /*break*/, 6];
729
+ return [4 /*yield*/, (0, initWorker_1.initWorkerAsync)(configuration.service_worker_relative_url, this.configurationName)];
730
+ case 5:
731
+ serviceWorker = _b.sent();
732
+ _b.label = 6;
733
+ case 6:
730
734
  storage = void 0;
731
- if (!serviceWorker) return [3 /*break*/, 5];
735
+ if (!serviceWorker) return [3 /*break*/, 9];
732
736
  serviceWorker.startKeepAliveServiceWorker();
733
737
  return [4 /*yield*/, serviceWorker.initAsync(oidcServerConfiguration, "loginAsync")];
734
- case 3:
738
+ case 7:
735
739
  _b.sent();
736
740
  storage = new memoryStorageBackend_1.MemoryStorageBackend(serviceWorker.saveItemsAsync, {});
737
741
  return [4 /*yield*/, storage.setItem("dummy", {})];
738
- case 4:
742
+ case 8:
739
743
  _b.sent();
740
- return [3 /*break*/, 6];
741
- case 5:
744
+ return [3 /*break*/, 10];
745
+ case 9:
742
746
  session = (0, initSession_1.initSession)(this.configurationName, redirectUri);
743
747
  storage = new memoryStorageBackend_1.MemoryStorageBackend(session.saveItemsAsync, {});
744
- _b.label = 6;
745
- case 6:
748
+ _b.label = 10;
749
+ case 10:
746
750
  extraFinal = (_a = extras !== null && extras !== void 0 ? extras : configuration.extras) !== null && _a !== void 0 ? _a : {};
747
751
  queryStringUtil = redirectUri.includes("#") ? new noHashQueryStringUtils_1.HashQueryStringUtils() : new noHashQueryStringUtils_1.NoHashQueryStringUtils();
748
752
  authorizationHandler = new appauth_1.RedirectRequestHandler(storage, queryStringUtil, window.location, new appauth_1.DefaultCrypto());
@@ -755,12 +759,12 @@ var Oidc = /** @class */ (function () {
755
759
  extras: extraFinal
756
760
  });
757
761
  authorizationHandler.performAuthorizationRequest(oidcServerConfiguration, authRequest);
758
- return [3 /*break*/, 8];
759
- case 7:
762
+ return [3 /*break*/, 12];
763
+ case 11:
760
764
  exception_2 = _b.sent();
761
765
  this.publishEvent(eventNames.loginAsync_error, exception_2);
762
766
  throw exception_2;
763
- case 8: return [2 /*return*/];
767
+ case 12: return [2 /*return*/];
764
768
  }
765
769
  });
766
770
  }); };
@@ -1010,10 +1014,9 @@ var Oidc = /** @class */ (function () {
1010
1014
  });
1011
1015
  });
1012
1016
  };
1013
- Oidc.prototype.refreshTokensAsync = function (refreshToken, silentEvent) {
1014
- if (silentEvent === void 0) { silentEvent = false; }
1017
+ Oidc.prototype.refreshTokensAsync = function (refreshToken) {
1015
1018
  return __awaiter(this, void 0, void 0, function () {
1016
- var localSilentSigninAsync, configuration, clientId, redirectUri, authority, tokenHandler, extras, _i, _a, _b, key, value, request, oidcServerConfiguration, token_response, exception_4;
1019
+ var localSilentSigninAsync, configuration, clientId_2, redirectUri_2, authority, extras_1, _i, _a, _b, key, value, oidcServerConfiguration, performTokenRequestAsync, tokenResponse, exception_4;
1017
1020
  var _this = this;
1018
1021
  return __generator(this, function (_c) {
1019
1022
  switch (_c.label) {
@@ -1042,7 +1045,7 @@ var Oidc = /** @class */ (function () {
1042
1045
  timer_1.default.clearTimeout(this.timeoutId);
1043
1046
  this.timeoutId = null;
1044
1047
  }
1045
- this.publishEvent(silentEvent ? eventNames.refreshTokensAsync_silent_error : eventNames.refreshTokensAsync_error, exception);
1048
+ this.publishEvent(eventNames.refreshTokensAsync_error, exception);
1046
1049
  return [2 /*return*/, null];
1047
1050
  }
1048
1051
  });
@@ -1051,43 +1054,81 @@ var Oidc = /** @class */ (function () {
1051
1054
  _c.label = 1;
1052
1055
  case 1:
1053
1056
  _c.trys.push([1, 6, , 8]);
1054
- this.publishEvent(silentEvent ? eventNames.refreshTokensAsync_silent_begin : eventNames.refreshTokensAsync_begin, {});
1057
+ this.publishEvent(eventNames.refreshTokensAsync_begin, { refreshToken: refreshToken });
1055
1058
  configuration = this.configuration;
1056
- clientId = configuration.client_id;
1057
- redirectUri = configuration.redirect_uri;
1059
+ clientId_2 = configuration.client_id;
1060
+ redirectUri_2 = configuration.redirect_uri;
1058
1061
  authority = configuration.authority;
1059
1062
  if (!!refreshToken) return [3 /*break*/, 3];
1060
1063
  return [4 /*yield*/, localSilentSigninAsync()];
1061
1064
  case 2: return [2 /*return*/, _c.sent()];
1062
1065
  case 3:
1063
- tokenHandler = new appauth_1.BaseTokenRequestHandler(new appauth_1.FetchRequestor());
1064
- extras = undefined;
1066
+ extras_1 = {};
1065
1067
  if (configuration.token_request_extras) {
1066
- extras = {};
1067
1068
  for (_i = 0, _a = Object.entries(configuration.token_request_extras); _i < _a.length; _i++) {
1068
1069
  _b = _a[_i], key = _b[0], value = _b[1];
1069
- extras[key] = value;
1070
+ extras_1[key] = value;
1070
1071
  }
1071
1072
  }
1072
- request = new appauth_1.TokenRequest({
1073
- client_id: clientId,
1074
- redirect_uri: redirectUri,
1075
- grant_type: appauth_1.GRANT_TYPE_REFRESH_TOKEN,
1076
- code: undefined,
1077
- refresh_token: refreshToken,
1078
- extras: extras
1079
- });
1080
1073
  return [4 /*yield*/, this.initAsync(authority, configuration.authority_configuration)];
1081
1074
  case 4:
1082
1075
  oidcServerConfiguration = _c.sent();
1083
- return [4 /*yield*/, tokenHandler.performTokenRequest(oidcServerConfiguration, request)];
1076
+ performTokenRequestAsync = function (url) { return __awaiter(_this, void 0, void 0, function () {
1077
+ var details, _i, _a, _b, key, value, formBody, property, encodedKey, encodedValue, formBodyString, response, result;
1078
+ return __generator(this, function (_c) {
1079
+ switch (_c.label) {
1080
+ case 0:
1081
+ details = {
1082
+ client_id: clientId_2,
1083
+ redirect_uri: redirectUri_2,
1084
+ grant_type: appauth_1.GRANT_TYPE_REFRESH_TOKEN,
1085
+ refresh_token: refreshToken,
1086
+ };
1087
+ for (_i = 0, _a = Object.entries(extras_1); _i < _a.length; _i++) {
1088
+ _b = _a[_i], key = _b[0], value = _b[1];
1089
+ if (details[key] === undefined) {
1090
+ details[key] = value;
1091
+ }
1092
+ }
1093
+ formBody = [];
1094
+ for (property in details) {
1095
+ encodedKey = encodeURIComponent(property);
1096
+ encodedValue = encodeURIComponent(details[property]);
1097
+ formBody.push("".concat(encodedKey, "=").concat(encodedValue));
1098
+ }
1099
+ formBodyString = formBody.join("&");
1100
+ return [4 /*yield*/, fetch(url, {
1101
+ method: 'POST',
1102
+ headers: {
1103
+ 'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8',
1104
+ },
1105
+ body: formBodyString,
1106
+ })];
1107
+ case 1:
1108
+ response = _c.sent();
1109
+ return [4 /*yield*/, response.json()];
1110
+ case 2:
1111
+ result = _c.sent();
1112
+ return [2 /*return*/, {
1113
+ accessToken: result.access_token,
1114
+ expiresIn: result.expires_in,
1115
+ idToken: result.id_token,
1116
+ refreshToken: result.refresh_token,
1117
+ scope: result.scope,
1118
+ tokenType: result.token_type,
1119
+ }];
1120
+ }
1121
+ });
1122
+ }); };
1123
+ return [4 /*yield*/, performTokenRequestAsync(oidcServerConfiguration.tokenEndpoint)];
1084
1124
  case 5:
1085
- token_response = _c.sent();
1086
- this.publishEvent(silentEvent ? eventNames.refreshTokensAsync_silent_end : eventNames.refreshTokensAsync_end, { message: "success" });
1087
- return [2 /*return*/, token_response];
1125
+ tokenResponse = _c.sent();
1126
+ this.publishEvent(eventNames.refreshTokensAsync_end, { message: "success" });
1127
+ return [2 /*return*/, tokenResponse];
1088
1128
  case 6:
1089
1129
  exception_4 = _c.sent();
1090
1130
  console.error(exception_4);
1131
+ this.publishEvent(eventNames.refreshTokensAsync_silent_error, exception_4);
1091
1132
  return [4 /*yield*/, localSilentSigninAsync(exception_4)];
1092
1133
  case 7: return [2 /*return*/, _c.sent()];
1093
1134
  case 8: return [2 /*return*/];
@@ -1195,6 +1236,8 @@ var Oidc = /** @class */ (function () {
1195
1236
  return __generator(this, function (_a) {
1196
1237
  switch (_a.label) {
1197
1238
  case 0:
1239
+ timer_1.default.clearTimeout(this.timeoutId);
1240
+ this.timeoutId = null;
1198
1241
  if (this.checkSessionIFrame) {
1199
1242
  this.checkSessionIFrame.stop();
1200
1243
  }
@@ -1213,8 +1256,6 @@ var Oidc = /** @class */ (function () {
1213
1256
  this.tokens = null;
1214
1257
  this.userInfo = null;
1215
1258
  this.events = [];
1216
- timer_1.default.clearTimeout(this.timeoutId);
1217
- this.timeoutId = null;
1218
1259
  return [2 /*return*/];
1219
1260
  }
1220
1261
  });
@@ -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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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@axa-fr/react-oidc",
3
- "version": "6.0.0-alpha0",
3
+ "version": "6.0.0-alpha3",
4
4
  "private": false,
5
5
  "main": "dist/index.js",
6
6
  "jsnext:main": "dist/index.js",
package/src/MultiAuth.tsx CHANGED
@@ -31,7 +31,7 @@ const MultiAuth = ( {configurationName, handleConfigurationChange }) => {
31
31
  <select value={configurationName} onChange={handleConfigurationChange} >
32
32
  <option value="config_classic">config_classic</option>
33
33
  <option value="config_without_refresh_token">config_without_refresh_token</option>
34
- <option value="google">google</option>
34
+ <option value="config_google">google</option>
35
35
  <option value="config_with_hash">config_with_hash</option>
36
36
  </select>
37
37
  {!isAuthenticated && <button type="button" className="btn btn-primary" onClick={() => login()}>Login</button>}
@@ -61,7 +61,7 @@ export const MultiAuthContainer = () => {
61
61
  redirect_uri:callBack,
62
62
  silent_redirect_uri: "",
63
63
  scope: 'openid profile email api'},
64
- google: { ...configurationGoogle },
64
+ config_google: { ...configurationGoogle },
65
65
  config_with_hash: { ...configurationIdentityServerWithHash}
66
66
  }
67
67
  const handleConfigurationChange = (event) => {
@@ -5,11 +5,11 @@ export const configurationIdentityServer = {
5
5
  silent_signin_uri: window.location.origin+'/authentication/silent-sign-in',
6
6
  scope: 'openid profile email api offline_access',
7
7
  authority: 'https://demo.duendesoftware.com',
8
- authority_time_cache_wellknowurl_in_second: 60* 60,
9
- refresh_time_before_tokens_expiration_in_second: 260,
10
- //service_worker_relative_url:'/OidcServiceWorker.js',
11
- //service_worker_only: false,
12
- storage: localStorage,
8
+ //authority_time_cache_wellknowurl_in_second: 60* 60,
9
+ refresh_time_before_tokens_expiration_in_second: 280,
10
+ service_worker_relative_url:'/OidcServiceWorker.js',
11
+ service_worker_only: false,
12
+ //storage: localStorage,
13
13
  //silent_signin_timeout: 3333000
14
14
  monitor_session:true,
15
15
  };
@@ -18,6 +18,7 @@ export const configurationIdentityServerWithHash = {
18
18
  client_id: 'interactive.public.short',
19
19
  redirect_uri: window.location.origin+'/multi-auth/authentification#authentication-callback',
20
20
  silent_redirect_uri: window.location.origin+'/multi-auth/authentification#authentication-silent-callback',
21
+ silent_signin_uri: window.location.origin+'#authentication-silent-signin',
21
22
  scope: 'openid profile email api offline_access',
22
23
  authority: 'https://demo.duendesoftware.com',
23
24
  refresh_time_before_tokens_expiration_in_second: 70,
@@ -29,6 +30,7 @@ export const configurationIdentityServerWithoutDiscovery = {
29
30
  client_id: 'interactive.public.short',
30
31
  redirect_uri: window.location.origin+'/authentication/callback',
31
32
  silent_redirect_uri: window.location.origin+'/authentication/silent-callback',
33
+ silent_signin_uri: window.location.origin+'/authentication/silent-sign-in',
32
34
  scope: 'openid profile email api offline_access',
33
35
  authority: 'https://demo.duendesoftware.com',
34
36
  authority_configuration: {
@@ -57,6 +59,7 @@ export const configurationGoogle = {
57
59
  client_id: '908893276222-f2drloh56ll0g99md38lv2k810d0nk0p.apps.googleusercontent.com',
58
60
  redirect_uri: `${window.location.origin}/multi-auth/callback-google`,
59
61
  silent_redirect_uri: window.location.origin+'/multi-auth/silent-callback-google',
62
+ silent_signin_uri: window.location.origin+'/multi-auth/silent-signin-google',
60
63
  scope: 'openid profile email',
61
64
  authority: 'https://accounts.google.com/',
62
65
  service_worker_relative_url:'/OidcServiceWorker.js',
@@ -120,11 +120,12 @@ const keepAliveAsync = async (event) => {
120
120
  const init = {"status": 200, "statusText": 'oidc-service-worker'};
121
121
  const response = new Response('{}', init);
122
122
  if(!isFromVanilla) {
123
- for(let i=0; i<240;i++){
124
- await sleep(1000 + Math.floor(Math.random() * 1000));
123
+ /*for(let i=0; i<10;i++){
124
+ await sleep(1000);
125
125
  const cache = await caches.open("oidc_dummy_cache");
126
126
  await cache.put(event.request, response.clone());
127
- }
127
+ }*/
128
+ await sleep(15000);
128
129
  }
129
130
 
130
131
  return response;
@@ -218,6 +219,14 @@ self.addEventListener('install', handleInstall);
218
219
  self.addEventListener('activate', handleActivate);
219
220
  self.addEventListener('fetch', handleFetch);
220
221
 
222
+
223
+ const checkDomain =(domains, tokenEndpoint) => {
224
+ const domain = domains.find(domain => tokenEndpoint.startsWith(domain));
225
+ if(!domain){
226
+ throw new Error("Domain " + tokenEndpoint+ " is not trusted, please add domain in TrustedDomains.js");
227
+ }
228
+ }
229
+
221
230
  addEventListener('message', event => {
222
231
  const port = event.ports[0];
223
232
  const data = event.data;
@@ -229,6 +238,7 @@ addEventListener('message', event => {
229
238
  tokens: null,
230
239
  items:[],
231
240
  oidcServerConfiguration: null,
241
+ isLogin:null,
232
242
  configurationName: configurationName,
233
243
  };
234
244
  currentDatabase = database[configurationName];
@@ -247,7 +257,13 @@ addEventListener('message', event => {
247
257
  port.postMessage({configurationName});
248
258
  return;
249
259
  case "init":
250
- currentDatabase.oidcServerConfiguration = data.data.oidcServerConfiguration;
260
+ const oidcServerConfiguration = data.data.oidcServerConfiguration;
261
+ const tokenEndpoint = oidcServerConfiguration.tokenEndpoint;
262
+ const domains = trustedDomains[configurationName];
263
+ checkDomain(domains, tokenEndpoint);
264
+ const userInfoEndpoint = oidcServerConfiguration.userInfoEndpoint;
265
+ checkDomain(domains, userInfoEndpoint);
266
+ currentDatabase.oidcServerConfiguration = oidcServerConfiguration;
251
267
  const where = data.data.where;
252
268
  if(where === "loginCallbackAsync" || where === "tryKeepExistingSessionAsync") {
253
269
  currentLoginCallbackConfigurationName = configurationName;
@@ -1,6 +1,9 @@
1
1
  
2
- // Add here trusted domains, access tokens will be send to
2
+ // Add here trusted domains, access tokens will be send to
3
3
  const trustedDomains = {
4
- default:["http://localhost:4200"],
5
- auth0:[]
6
- };
4
+ default:["http://localhost:4200", "https://demo.duendesoftware.com"],
5
+ config_classic: ["https://demo.duendesoftware.com"] ,
6
+ config_without_refresh_token: ["https://demo.duendesoftware.com"],
7
+ config_google: ["https://oauth2.googleapis.com", "https://openidconnect.googleapis.com"],
8
+ config_with_hash: ["https://demo.duendesoftware.com"]
9
+ };
@@ -37,8 +37,9 @@ export const sleepAsync = (milliseconds) => {
37
37
  }
38
38
 
39
39
  const keepAlive = () => {
40
- fetch('/OidcKeepAliveServiceWorker.json');
41
- sleepAsync(230*1000).then(keepAlive);
40
+ fetch('/OidcKeepAliveServiceWorker.json').then(() => {
41
+ keepAlive();
42
+ })
42
43
  }
43
44
 
44
45
  const isServiceWorkerProxyActiveAsync = () => {
@@ -104,7 +105,7 @@ export const initWorkerAsync = async(serviceWorkerRelativeUrl, configurationName
104
105
  }
105
106
 
106
107
  const unregisterAsync = async () => {
107
- await registration.unregister()
108
+ return await registration.unregister();
108
109
  }
109
110
 
110
111
  const getAccessTokenPayloadAsync=async () => {
@@ -38,14 +38,6 @@ export class OidcAuthorizationServiceConfiguration extends AuthorizationServiceC
38
38
 
39
39
  }
40
40
 
41
- const isInIframe = () => {
42
- try {
43
- return window.self !== window.top;
44
- } catch (e) {
45
- return true;
46
- }
47
- }
48
-
49
41
  const idTokenPayload = (token) => {
50
42
  const base64Url = token.split('.')[1];
51
43
  const base64 = base64Url.replace(/-/g, '+').replace(/_/g, '/');
@@ -134,7 +126,7 @@ const autoRenewTokens = (oidc, refreshToken, expiresAt) => {
134
126
  const refreshTimeBeforeTokensExpirationInSecond = oidc.configuration.refresh_time_before_tokens_expiration_in_second ?? 60;
135
127
  return timer.setTimeout(async () => {
136
128
  const currentTimeUnixSecond = new Date().getTime() /1000;
137
- const timeInfo = { timeLeft: Math.round(((expiresAt - refreshTimeBeforeTokensExpirationInSecond)- currentTimeUnixSecond))};
129
+ const timeInfo = { timeLeft: Math.round(((expiresAt - refreshTimeBeforeTokensExpirationInSecond) - currentTimeUnixSecond))};
138
130
  oidc.publishEvent(Oidc.eventNames.token_timer, timeInfo);
139
131
  if(currentTimeUnixSecond > (expiresAt - refreshTimeBeforeTokensExpirationInSecond)) {
140
132
  const tokens = await oidc.refreshTokensAsync(refreshToken);
@@ -149,7 +141,7 @@ const autoRenewTokens = (oidc, refreshToken, expiresAt) => {
149
141
  }
150
142
  return;
151
143
  }
152
- oidc.publishEvent(Oidc.eventNames.token_renewed, oidc.tokens);
144
+ oidc.publishEvent(Oidc.eventNames.token_renewed, {});
153
145
  if(oidc.timeoutId) {
154
146
  oidc.timeoutId = autoRenewTokens(oidc, tokens.refreshToken, oidc.tokens.expiresAt);
155
147
  }
@@ -233,10 +225,9 @@ const eventNames = {
233
225
  loginCallbackAsync_end:"loginCallbackAsync_end",
234
226
  loginCallbackAsync_error:"loginCallbackAsync_error",
235
227
  refreshTokensAsync_begin: "refreshTokensAsync_begin",
228
+ refreshTokensAsync: "refreshTokensAsync",
236
229
  refreshTokensAsync_end: "refreshTokensAsync_end",
237
230
  refreshTokensAsync_error: "refreshTokensAsync_error",
238
- refreshTokensAsync_silent_begin: "refreshTokensAsync_silent_begin",
239
- refreshTokensAsync_silent_end: "refreshTokensAsync_silent_end",
240
231
  refreshTokensAsync_silent_error: "refreshTokensAsync_silent_error",
241
232
  tryKeepExistingSessionAsync_begin: "tryKeepExistingSessionAsync_begin",
242
233
  tryKeepExistingSessionAsync_end: "tryKeepExistingSessionAsync_end",
@@ -273,14 +264,14 @@ const fetchFromIssuer = async (openIdIssuerUrl: string, timeCacheSecond = oneHou
273
264
  return new OidcAuthorizationServiceConfiguration(JSON.parse(cacheJson));
274
265
  }
275
266
 
276
- const res = await fetch(fullUrl);
267
+ const response = await fetch(fullUrl);
277
268
 
278
- if (res.status != 200) {
269
+ if (response.status != 200) {
279
270
  return null;
280
271
  }
281
272
 
282
273
 
283
- const result = await res.json();
274
+ const result = await response.json();
284
275
  window.localStorage.setItem(localStorageKey, JSON.stringify({result, timestamp:Date.now()}));
285
276
 
286
277
  return new OidcAuthorizationServiceConfiguration(result);
@@ -433,7 +424,7 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
433
424
  if (!isResolved) {
434
425
  if(data.startsWith(key)) {
435
426
  const result = JSON.parse(e.data.replace(key, ''));
436
- self.publishEvent(eventNames.silentSigninAsync_end, result);
427
+ self.publishEvent(eventNames.silentSigninAsync_end, {});
437
428
  iframe.remove();
438
429
  isResolved = true;
439
430
  resolve(result);
@@ -509,12 +500,10 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
509
500
  const {tokens} = await serviceWorker.initAsync(oidcServerConfiguration, "tryKeepExistingSessionAsync");
510
501
  if (tokens) {
511
502
  serviceWorker.startKeepAliveServiceWorker();
512
- const sessionState = await serviceWorker.getSessionStateAsync();
513
- await this.startCheckSessionAsync(oidcServerConfiguration.check_session_iframe, configuration.client_id, sessionState);
514
- //const updatedTokens = await this.refreshTokensAsync(tokens.refresh_token, true);
515
503
  // @ts-ignore
516
504
  const reformattedToken = {
517
505
  accessToken : tokens.access_token,
506
+ refreshToken : tokens.refresh_token,
518
507
  expiresIn: tokens.expires_in,
519
508
  idToken: tokens.id_token,
520
509
  scope: tokens.scope,
@@ -523,7 +512,9 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
523
512
  this.tokens = await setTokensAsync(serviceWorker, reformattedToken);
524
513
  this.serviceWorker = serviceWorker;
525
514
  // @ts-ignore
526
- this.timeoutId = autoRenewTokens(this, tokens.refreshToken, this.tokens.expiresAt);
515
+ this.timeoutId = autoRenewTokens(this, this.tokens.refreshToken, this.tokens.expiresAt);
516
+ const sessionState = await serviceWorker.getSessionStateAsync();
517
+ await this.startCheckSessionAsync(oidcServerConfiguration.check_session_iframe, configuration.client_id, sessionState);
527
518
  this.publishEvent(eventNames.tryKeepExistingSessionAsync_end, {
528
519
  success: true,
529
520
  message: "tokens inside ServiceWorker are valid"
@@ -542,18 +533,15 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
542
533
  }
543
534
  const session = initSession(this.configurationName, configuration.redirect_uri, configuration.storage ?? sessionStorage);
544
535
  const {tokens} = await session.initAsync();
545
- console.log("const {tokens} = await session.initAsync();")
546
- console.log(tokens)
547
536
  if (tokens) {
548
- const sessionState = session.getSessionState();
549
- await this.startCheckSessionAsync(oidcServerConfiguration.check_session_iframe, configuration.client_id, sessionState);
550
- //const updatedTokens = await this.refreshTokensAsync(tokens.refreshToken, true);
551
537
  // @ts-ignore
552
538
  this.tokens = await setTokensAsync(serviceWorker, tokens);
553
539
  //session.setTokens(this.tokens);
554
540
  this.session = session;
555
541
  // @ts-ignore
556
542
  this.timeoutId = autoRenewTokens(this, tokens.refreshToken, this.tokens.expiresAt);
543
+ const sessionState = session.getSessionState();
544
+ await this.startCheckSessionAsync(oidcServerConfiguration.check_session_iframe, configuration.client_id, sessionState);
557
545
  this.publishEvent(eventNames.tryKeepExistingSessionAsync_end, {
558
546
  success: true,
559
547
  message: `tokens inside storage are valid`
@@ -606,18 +594,23 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
606
594
 
607
595
  let serviceWorker = await initWorkerAsync(configuration.service_worker_relative_url, this.configurationName);
608
596
  const oidcServerConfiguration = await this.initAsync(configuration.authority, configuration.authority_configuration);
609
- /*if (serviceWorker && installServiceWorker) {
597
+ if (serviceWorker && installServiceWorker) {
610
598
  const isServiceWorkerProxyActive = await serviceWorker.isServiceWorkerProxyActiveAsync();
611
599
  if (!isServiceWorkerProxyActive) {
612
- await serviceWorker.unregisterAsync();
613
- const extrasQueries = extras != null ? {...extras}: {};
600
+ const isUnregistered = await serviceWorker.unregisterAsync();
601
+ console.log("isUnregistered")
602
+ console.log(isUnregistered)
603
+ if(isUnregistered){
604
+ serviceWorker = await initWorkerAsync(configuration.service_worker_relative_url, this.configurationName);
605
+ }
606
+ /*const extrasQueries = extras != null ? {...extras}: {};
614
607
  extrasQueries.callbackPath = url;
615
608
  extrasQueries.state = state;
616
609
  const queryString = buildQueries(extrasQueries);
617
- window.location.href = `${redirectUri}/service-worker-install${queryString}`;
618
- return;
610
+ window.location.href = `${redirectUri}/service-worker-install${queryString}`;*/
611
+ //return;
619
612
  }
620
- }*/
613
+ }
621
614
  let storage;
622
615
  if (serviceWorker) {
623
616
  serviceWorker.startKeepAliveServiceWorker();
@@ -691,7 +684,6 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
691
684
  this.publishEvent(eventNames.logout_from_another_tab, {});
692
685
  this.destroyAsync();
693
686
  });
694
-
695
687
  };
696
688
 
697
689
  this.checkSessionIFrame = new CheckSessionIFrame(checkSessionCallback, clientId, checkSessionIFrameUri);
@@ -851,7 +843,13 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
851
843
  }
852
844
  }
853
845
 
854
- async refreshTokensAsync(refreshToken, silentEvent = false) {
846
+ async refreshTokensAsync(refreshToken) {
847
+
848
+ /*while (document.hidden) {
849
+ await sleepAsync(1000);
850
+ this.publishEvent(eventNames.refreshTokensAsync, {message:"wait because document is hidden"});
851
+ }*/
852
+
855
853
  const localSilentSigninAsync= async (exception=null) => {
856
854
  try {
857
855
  const silent_token_response = await this.silentSigninAsync();
@@ -865,12 +863,13 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
865
863
  timer.clearTimeout(this.timeoutId);
866
864
  this.timeoutId=null;
867
865
  }
868
- this.publishEvent(silentEvent ? eventNames.refreshTokensAsync_silent_error : eventNames.refreshTokensAsync_error, exception);
866
+ this.publishEvent(eventNames.refreshTokensAsync_error, exception);
869
867
  return null;
870
868
  }
871
869
 
872
870
  try{
873
- this.publishEvent(silentEvent ? eventNames.refreshTokensAsync_silent_begin : eventNames.refreshTokensAsync_begin, {})
871
+ this.publishEvent(eventNames.refreshTokensAsync_begin, {refreshToken:refreshToken});
872
+
874
873
  const configuration = this.configuration;
875
874
  const clientId = configuration.client_id;
876
875
  const redirectUri = configuration.redirect_uri;
@@ -880,16 +879,17 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
880
879
  {
881
880
  return await localSilentSigninAsync();
882
881
  }
883
- const tokenHandler = new BaseTokenRequestHandler(new FetchRequestor());
882
+
884
883
 
885
- let extras = undefined;
884
+ let extras = {};
886
885
  if(configuration.token_request_extras) {
887
- extras = {}
888
886
  for (let [key, value] of Object.entries(configuration.token_request_extras)) {
889
887
  extras[key] = value;
890
888
  }
891
889
  }
890
+ const oidcServerConfiguration = await this.initAsync(authority, configuration.authority_configuration);
892
891
 
892
+ /*const tokenHandler = new BaseTokenRequestHandler(new FetchRequestor());
893
893
  // use the token response to make a request for an access token
894
894
  const request = new TokenRequest({
895
895
  client_id: clientId,
@@ -900,12 +900,56 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
900
900
  extras
901
901
  });
902
902
 
903
- const oidcServerConfiguration = await this.initAsync(authority, configuration.authority_configuration);
903
+
904
904
  const token_response = await tokenHandler.performTokenRequest(oidcServerConfiguration, request);
905
- this.publishEvent(silentEvent ? eventNames.refreshTokensAsync_silent_end :eventNames.refreshTokensAsync_end, {message:"success"});
906
- return token_response;
905
+ */
906
+ const performTokenRequestAsync= async (url) => {
907
+ const details = {
908
+ client_id: clientId,
909
+ redirect_uri: redirectUri,
910
+ grant_type: GRANT_TYPE_REFRESH_TOKEN,
911
+ refresh_token: refreshToken,
912
+ };
913
+
914
+ for (let [key, value] of Object.entries(extras)) {
915
+ if (details[key] === undefined) {
916
+ details[key] = value;
917
+ }
918
+ }
919
+
920
+ let formBody = [];
921
+ for (const property in details) {
922
+ const encodedKey = encodeURIComponent(property);
923
+ const encodedValue = encodeURIComponent(details[property]);
924
+ formBody.push(`${encodedKey}=${encodedValue}`);
925
+ }
926
+ const formBodyString = formBody.join("&");
927
+
928
+ const response = await fetch(url, {
929
+ method: 'POST',
930
+ headers: {
931
+ 'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8',
932
+ },
933
+ body: formBodyString,
934
+ });
935
+ const result = await response.json();
936
+ return {
937
+ accessToken: result.access_token,
938
+ expiresIn: result.expires_in,
939
+ idToken: result.id_token,
940
+ refreshToken: result.refresh_token,
941
+ scope: result.scope,
942
+ tokenType: result.token_type,
943
+ };
944
+ }
945
+
946
+ const tokenResponse = await performTokenRequestAsync(oidcServerConfiguration.tokenEndpoint)
947
+
948
+ this.publishEvent(eventNames.refreshTokensAsync_end, {message:"success"});
949
+ return tokenResponse;
907
950
  } catch(exception) {
908
951
  console.error(exception);
952
+ this.publishEvent(eventNames.refreshTokensAsync_silent_error, exception);
909
953
  return await localSilentSigninAsync(exception);
910
954
  }
911
955
  }
@@ -981,6 +1025,8 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
981
1025
  }
982
1026
 
983
1027
  async destroyAsync() {
1028
+ timer.clearTimeout(this.timeoutId);
1029
+ this.timeoutId=null;
984
1030
  if(this.checkSessionIFrame){
985
1031
  this.checkSessionIFrame.stop();
986
1032
  }
@@ -993,8 +1039,7 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
993
1039
  this.tokens = null;
994
1040
  this.userInfo = null;
995
1041
  this.events = [];
996
- timer.clearTimeout(this.timeoutId);
997
- this.timeoutId=null;
1042
+
998
1043
  }
999
1044
 
1000
1045
  async logoutAsync(callbackPathOrUrl: string | undefined = undefined, extras: StringMap = null) {