@firebase/auth 1.13.5 → 1.13.6

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.
Files changed (62) hide show
  1. package/dist/auth-public.d.ts +4 -1
  2. package/dist/auth.d.ts +5 -1
  3. package/dist/browser-cjs/{index-DY73Er5u.js → index-DBOuNQej.js} +75 -24
  4. package/dist/browser-cjs/index-DBOuNQej.js.map +1 -0
  5. package/dist/browser-cjs/index.js +1 -1
  6. package/dist/browser-cjs/internal.js +1 -1
  7. package/dist/browser-cjs/src/core/user/account_info.d.ts +1 -1
  8. package/dist/cordova/auth-cordova-public.d.ts +4 -1
  9. package/dist/cordova/auth-cordova.d.ts +5 -1
  10. package/dist/cordova/index.js +2 -2
  11. package/dist/cordova/internal.js +2 -2
  12. package/dist/cordova/{popup_redirect-D_ZWtJhY.js → popup_redirect-CHQiJtfZ.js} +75 -24
  13. package/dist/cordova/popup_redirect-CHQiJtfZ.js.map +1 -0
  14. package/dist/cordova/src/core/user/account_info.d.ts +1 -1
  15. package/dist/cordova/tsdoc-metadata.json +1 -1
  16. package/dist/esm/{index-CvXU3_1x.js → index-4NFEPWkC.js} +75 -24
  17. package/dist/esm/index-4NFEPWkC.js.map +1 -0
  18. package/dist/esm/index.js +1 -1
  19. package/dist/esm/internal.js +2 -2
  20. package/dist/esm/src/core/user/account_info.d.ts +1 -1
  21. package/dist/index.webworker.js +74 -23
  22. package/dist/index.webworker.js.map +1 -1
  23. package/dist/node/index.js +1 -1
  24. package/dist/node/internal.js +1 -1
  25. package/dist/node/src/core/user/account_info.d.ts +1 -1
  26. package/dist/node/{totp-B19JzI52.js → totp-C8DKrPQi.js} +69 -16
  27. package/dist/node/totp-C8DKrPQi.js.map +1 -0
  28. package/dist/node-esm/index.js +1 -1
  29. package/dist/node-esm/internal.js +2 -2
  30. package/dist/node-esm/src/core/user/account_info.d.ts +1 -1
  31. package/dist/node-esm/{totp-C24pd8aS.js → totp-BU9AvxK8.js} +69 -16
  32. package/dist/node-esm/totp-BU9AvxK8.js.map +1 -0
  33. package/dist/rn/{index-CiDS6PaG.js → index-DSVEw5ju.js} +69 -16
  34. package/dist/rn/index-DSVEw5ju.js.map +1 -0
  35. package/dist/rn/index.js +1 -1
  36. package/dist/rn/internal.js +7 -9
  37. package/dist/rn/internal.js.map +1 -1
  38. package/dist/rn/src/core/user/account_info.d.ts +1 -1
  39. package/dist/src/core/user/account_info.d.ts +1 -1
  40. package/dist/tsdoc-metadata.json +1 -1
  41. package/dist/web-extension-cjs/index.js +1 -1
  42. package/dist/web-extension-cjs/internal.js +1 -1
  43. package/dist/web-extension-cjs/{register-dQ43sygv.js → register-eaUKtaNP.js} +75 -24
  44. package/dist/web-extension-cjs/register-eaUKtaNP.js.map +1 -0
  45. package/dist/web-extension-cjs/src/core/user/account_info.d.ts +1 -1
  46. package/dist/web-extension-esm/auth-web-extension-public.d.ts +1 -1
  47. package/dist/web-extension-esm/auth-web-extension.d.ts +1 -1
  48. package/dist/web-extension-esm/index.js +2 -2
  49. package/dist/web-extension-esm/internal.js +2 -2
  50. package/dist/web-extension-esm/{register-DN05P0kB.js → register-CPcgXhGD.js} +75 -24
  51. package/dist/web-extension-esm/register-CPcgXhGD.js.map +1 -0
  52. package/dist/web-extension-esm/src/core/user/account_info.d.ts +1 -1
  53. package/dist/web-extension-esm/tsdoc-metadata.json +1 -1
  54. package/package.json +3 -3
  55. package/dist/browser-cjs/index-DY73Er5u.js.map +0 -1
  56. package/dist/cordova/popup_redirect-D_ZWtJhY.js.map +0 -1
  57. package/dist/esm/index-CvXU3_1x.js.map +0 -1
  58. package/dist/node/totp-B19JzI52.js.map +0 -1
  59. package/dist/node-esm/totp-C24pd8aS.js.map +0 -1
  60. package/dist/rn/index-CiDS6PaG.js.map +0 -1
  61. package/dist/web-extension-cjs/register-dQ43sygv.js.map +0 -1
  62. package/dist/web-extension-esm/register-DN05P0kB.js.map +0 -1
@@ -1992,7 +1992,12 @@ class PersistenceUserManager {
1992
1992
  this.fullUserKey = _persistenceKeyName(this.userKey, config.apiKey, name);
1993
1993
  this.fullPersistenceKey = _persistenceKeyName("persistence" /* KeyName.PERSISTENCE_USER */, config.apiKey, name);
1994
1994
  this.boundEventHandler = auth._onStorageEvent.bind(auth);
1995
- this.persistence._addListener(this.fullUserKey, this.boundEventHandler);
1995
+ try {
1996
+ this.persistence._addListener(this.fullUserKey, this.boundEventHandler);
1997
+ }
1998
+ catch {
1999
+ // Best effort; ignore errors if addListener throws
2000
+ }
1996
2001
  }
1997
2002
  setCurrentUser(user) {
1998
2003
  return this.persistence._set(this.fullUserKey, user.toJSON());
@@ -2029,7 +2034,10 @@ class PersistenceUserManager {
2029
2034
  }
2030
2035
  }
2031
2036
  delete() {
2032
- this.persistence._removeListener(this.fullUserKey, this.boundEventHandler);
2037
+ try {
2038
+ this.persistence._removeListener(this.fullUserKey, this.boundEventHandler);
2039
+ }
2040
+ catch { }
2033
2041
  }
2034
2042
  static async create(auth, persistenceHierarchy, userKey = "authUser" /* KeyName.AUTH_USER */) {
2035
2043
  if (!persistenceHierarchy.length) {
@@ -2037,8 +2045,13 @@ class PersistenceUserManager {
2037
2045
  }
2038
2046
  // Eliminate any persistences that are not available
2039
2047
  const availablePersistences = (await Promise.all(persistenceHierarchy.map(async (persistence) => {
2040
- if (await persistence._isAvailable()) {
2041
- return persistence;
2048
+ try {
2049
+ if (await persistence._isAvailable()) {
2050
+ return persistence;
2051
+ }
2052
+ }
2053
+ catch {
2054
+ return undefined;
2042
2055
  }
2043
2056
  return undefined;
2044
2057
  }))).filter(persistence => persistence);
@@ -2588,8 +2601,16 @@ class AuthImpl {
2588
2601
  if (this._deleted) {
2589
2602
  return;
2590
2603
  }
2591
- this.persistenceManager = await PersistenceUserManager.create(this, persistenceHierarchy);
2592
- this._resolvePersistenceManagerAvailable?.();
2604
+ try {
2605
+ this.persistenceManager = await PersistenceUserManager.create(this, persistenceHierarchy);
2606
+ }
2607
+ catch (e) {
2608
+ _logWarn(`Failed to initialize persistence: ${e}`);
2609
+ this.persistenceManager = await PersistenceUserManager.create(this, []);
2610
+ }
2611
+ finally {
2612
+ this._resolvePersistenceManagerAvailable?.();
2613
+ }
2593
2614
  if (this._deleted) {
2594
2615
  return;
2595
2616
  }
@@ -2604,7 +2625,13 @@ class AuthImpl {
2604
2625
  /* Ignore the error */
2605
2626
  }
2606
2627
  }
2607
- await this.initializeCurrentUser(popupRedirectResolver);
2628
+ try {
2629
+ await this.initializeCurrentUser(popupRedirectResolver);
2630
+ }
2631
+ catch (e) {
2632
+ _logWarn(`Failed to initialize current user: ${e}`);
2633
+ await this.directlySetCurrentUser(null).catch(() => { });
2634
+ }
2608
2635
  this.lastNotifiedUid = this.currentUser?.uid || null;
2609
2636
  if (this._deleted) {
2610
2637
  return;
@@ -3002,11 +3029,26 @@ class AuthImpl {
3002
3029
  _assert(promise, this, "internal-error" /* AuthErrorCode.INTERNAL_ERROR */);
3003
3030
  // The callback needs to be called asynchronously per the spec.
3004
3031
  // eslint-disable-next-line @typescript-eslint/no-floating-promises
3005
- promise.then(() => {
3032
+ promise
3033
+ .then(() => {
3006
3034
  if (isUnsubscribed) {
3007
3035
  return;
3008
3036
  }
3009
3037
  cb(this.currentUser);
3038
+ })
3039
+ .catch(err => {
3040
+ if (isUnsubscribed) {
3041
+ return;
3042
+ }
3043
+ if (typeof nextOrObserver !== 'function' && nextOrObserver.error) {
3044
+ nextOrObserver.error(err);
3045
+ }
3046
+ else if (error) {
3047
+ error(err);
3048
+ }
3049
+ else {
3050
+ throw err;
3051
+ }
3010
3052
  });
3011
3053
  if (typeof nextOrObserver === 'function') {
3012
3054
  const unsubscribe = subscription.addObserver(nextOrObserver, error, completed);
@@ -3036,11 +3078,21 @@ class AuthImpl {
3036
3078
  user._startProactiveRefresh();
3037
3079
  }
3038
3080
  this.currentUser = user;
3039
- if (user) {
3040
- await this.assertedPersistence.setCurrentUser(user);
3041
- }
3042
- else {
3043
- await this.assertedPersistence.removeCurrentUser();
3081
+ if (this.persistenceManager) {
3082
+ try {
3083
+ if (user) {
3084
+ await this.persistenceManager.setCurrentUser(user);
3085
+ }
3086
+ else {
3087
+ await this.persistenceManager.removeCurrentUser();
3088
+ }
3089
+ }
3090
+ catch (e) {
3091
+ const originalMessage = e?.message || String(e);
3092
+ const error = _errorWithCustomMessage(this, "internal-error" /* AuthErrorCode.INTERNAL_ERROR */, `An internal AuthError has occurred: ${originalMessage}`);
3093
+ error.customData = { originalError: e };
3094
+ throw error;
3095
+ }
3044
3096
  }
3045
3097
  }
3046
3098
  queue(action) {
@@ -6617,7 +6669,8 @@ async function updateProfile$1(auth, request) {
6617
6669
  *
6618
6670
  * @public
6619
6671
  */
6620
- async function updateProfile(user, { displayName, photoURL: photoUrl }) {
6672
+ async function updateProfile(user, profile) {
6673
+ const { displayName, photoURL: photoUrl } = profile;
6621
6674
  if (displayName === undefined && photoUrl === undefined) {
6622
6675
  return;
6623
6676
  }
@@ -7275,7 +7328,7 @@ function multiFactor(user) {
7275
7328
  }
7276
7329
 
7277
7330
  var name = "@firebase/auth";
7278
- var version = "1.13.5";
7331
+ var version = "1.13.6";
7279
7332
 
7280
7333
  /**
7281
7334
  * @license
@@ -8730,4 +8783,4 @@ exports.useDeviceLanguage = useDeviceLanguage;
8730
8783
  exports.validatePassword = validatePassword;
8731
8784
  exports.verifyBeforeUpdateEmail = verifyBeforeUpdateEmail;
8732
8785
  exports.verifyPasswordResetCode = verifyPasswordResetCode;
8733
- //# sourceMappingURL=index-CiDS6PaG.js.map
8786
+ //# sourceMappingURL=index-DSVEw5ju.js.map