@auth0/auth0-spa-js 1.22.3 → 1.22.4

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.
@@ -207,4 +207,11 @@ export default class Auth0Client {
207
207
  private _getTokenFromIFrame;
208
208
  private _getTokenUsingRefreshToken;
209
209
  private _getEntryFromCache;
210
+ /**
211
+ * Releases any lock acquired by the current page that's not released yet
212
+ *
213
+ * Get's called on the `pagehide` event.
214
+ * https://developer.mozilla.org/en-US/docs/Web/API/Window/pagehide_event
215
+ */
216
+ private _releaseLockOnPageHide;
210
217
  }
@@ -1,2 +1,2 @@
1
- declare const _default: "1.22.3";
1
+ declare const _default: "1.22.4";
2
2
  export default _default;
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "name": "@auth0/auth0-spa-js",
4
4
  "description": "Auth0 SDK for Single Page Applications using Authorization Code Grant Flow with PKCE",
5
5
  "license": "MIT",
6
- "version": "1.22.3",
6
+ "version": "1.22.4",
7
7
  "main": "dist/lib/auth0-spa-js.cjs.js",
8
8
  "types": "dist/typings/index.d.ts",
9
9
  "module": "dist/auth0-spa-js.production.esm.js",
@@ -403,7 +403,9 @@ export default class Auth0Client {
403
403
  cookieDomain: this.options.cookieDomain
404
404
  });
405
405
  } else {
406
- this.cookieStorage.remove(this.orgHintCookieName, { cookieDomain: this.options.cookieDomain });
406
+ this.cookieStorage.remove(this.orgHintCookieName, {
407
+ cookieDomain: this.options.cookieDomain
408
+ });
407
409
  }
408
410
  }
409
411
 
@@ -892,6 +894,8 @@ export default class Auth0Client {
892
894
  )
893
895
  ) {
894
896
  try {
897
+ window.addEventListener('pagehide', this._releaseLockOnPageHide);
898
+
895
899
  // Check the cache a second time, because it may have been populated
896
900
  // by a previous call while this call was waiting to acquire the lock.
897
901
  if (!ignoreCache) {
@@ -936,6 +940,7 @@ export default class Auth0Client {
936
940
  return authResult.access_token;
937
941
  } finally {
938
942
  await lock.releaseLock(GET_TOKEN_SILENTLY_LOCK_KEY);
943
+ window.removeEventListener('pagehide', this._releaseLockOnPageHide);
939
944
  }
940
945
  } else {
941
946
  throw new TimeoutError();
@@ -1048,8 +1053,12 @@ export default class Auth0Client {
1048
1053
  }
1049
1054
 
1050
1055
  const postCacheClear = () => {
1051
- this.cookieStorage.remove(this.orgHintCookieName, { cookieDomain: this.options.cookieDomain });
1052
- this.cookieStorage.remove(this.isAuthenticatedCookieName, { cookieDomain: this.options.cookieDomain });
1056
+ this.cookieStorage.remove(this.orgHintCookieName, {
1057
+ cookieDomain: this.options.cookieDomain
1058
+ });
1059
+ this.cookieStorage.remove(this.isAuthenticatedCookieName, {
1060
+ cookieDomain: this.options.cookieDomain
1061
+ });
1053
1062
 
1054
1063
  if (localOnly) {
1055
1064
  return;
@@ -1308,4 +1317,16 @@ export default class Auth0Client {
1308
1317
  return entry.access_token;
1309
1318
  }
1310
1319
  }
1320
+
1321
+ /**
1322
+ * Releases any lock acquired by the current page that's not released yet
1323
+ *
1324
+ * Get's called on the `pagehide` event.
1325
+ * https://developer.mozilla.org/en-US/docs/Web/API/Window/pagehide_event
1326
+ */
1327
+ private _releaseLockOnPageHide = async () => {
1328
+ await lock.releaseLock(GET_TOKEN_SILENTLY_LOCK_KEY);
1329
+
1330
+ window.removeEventListener('pagehide', this._releaseLockOnPageHide);
1331
+ };
1311
1332
  }
package/src/version.ts CHANGED
@@ -1 +1 @@
1
- export default '1.22.3';
1
+ export default '1.22.4';