@firebase/auth 1.4.0-20231107192534 → 1.4.0-canary.0d29adc97

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 (80) hide show
  1. package/dist/auth-public.d.ts +14 -2
  2. package/dist/auth.d.ts +15 -3
  3. package/dist/browser-cjs/{index-dfd6ff50.js → index-cb1a91bb.js} +23 -8
  4. package/dist/browser-cjs/index-cb1a91bb.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/api/errors.d.ts +1 -0
  8. package/dist/browser-cjs/src/core/errors.d.ts +2 -1
  9. package/dist/browser-cjs/src/core/strategies/email.d.ts +5 -1
  10. package/dist/browser-cjs/src/core/strategies/email_and_password.d.ts +5 -1
  11. package/dist/browser-cjs/src/core/user/account_info.d.ts +3 -0
  12. package/dist/cordova/index.js +2 -2
  13. package/dist/cordova/internal.js +2 -2
  14. package/dist/cordova/{popup_redirect-b8968cb1.js → popup_redirect-12c64509.js} +23 -8
  15. package/dist/cordova/popup_redirect-12c64509.js.map +1 -0
  16. package/dist/cordova/src/api/errors.d.ts +1 -0
  17. package/dist/cordova/src/core/errors.d.ts +2 -1
  18. package/dist/cordova/src/core/strategies/email.d.ts +5 -1
  19. package/dist/cordova/src/core/strategies/email_and_password.d.ts +5 -1
  20. package/dist/cordova/src/core/user/account_info.d.ts +3 -0
  21. package/dist/esm2017/{index-ae3ae6d8.js → index-ef3c8a49.js} +23 -8
  22. package/dist/esm2017/index-ef3c8a49.js.map +1 -0
  23. package/dist/esm2017/index.js +1 -1
  24. package/dist/esm2017/internal.js +2 -2
  25. package/dist/esm2017/src/api/errors.d.ts +1 -0
  26. package/dist/esm2017/src/core/errors.d.ts +2 -1
  27. package/dist/esm2017/src/core/strategies/email.d.ts +5 -1
  28. package/dist/esm2017/src/core/strategies/email_and_password.d.ts +5 -1
  29. package/dist/esm2017/src/core/user/account_info.d.ts +3 -0
  30. package/dist/esm5/{index-7f85f824.js → index-c2f98f6e.js} +23 -8
  31. package/dist/esm5/index-c2f98f6e.js.map +1 -0
  32. package/dist/esm5/index.js +1 -1
  33. package/dist/esm5/internal.js +2 -2
  34. package/dist/esm5/src/api/errors.d.ts +1 -0
  35. package/dist/esm5/src/core/errors.d.ts +2 -1
  36. package/dist/esm5/src/core/strategies/email.d.ts +5 -1
  37. package/dist/esm5/src/core/strategies/email_and_password.d.ts +5 -1
  38. package/dist/esm5/src/core/user/account_info.d.ts +3 -0
  39. package/dist/index.webworker.esm5.js +22 -7
  40. package/dist/index.webworker.esm5.js.map +1 -1
  41. package/dist/node/index.js +2 -2
  42. package/dist/node/internal.js +2 -2
  43. package/dist/node/src/api/errors.d.ts +1 -0
  44. package/dist/node/src/core/errors.d.ts +2 -1
  45. package/dist/node/src/core/strategies/email.d.ts +5 -1
  46. package/dist/node/src/core/strategies/email_and_password.d.ts +5 -1
  47. package/dist/node/src/core/user/account_info.d.ts +3 -0
  48. package/dist/node/{totp-e17814fd.js → totp-2ab16b8b.js} +25 -30
  49. package/dist/node/totp-2ab16b8b.js.map +1 -0
  50. package/dist/node-esm/index.js +2 -2
  51. package/dist/node-esm/internal.js +3 -3
  52. package/dist/node-esm/src/api/errors.d.ts +1 -0
  53. package/dist/node-esm/src/core/errors.d.ts +2 -1
  54. package/dist/node-esm/src/core/strategies/email.d.ts +5 -1
  55. package/dist/node-esm/src/core/strategies/email_and_password.d.ts +5 -1
  56. package/dist/node-esm/src/core/user/account_info.d.ts +3 -0
  57. package/dist/node-esm/{totp-2585fcd6.js → totp-a0c83e98.js} +25 -10
  58. package/dist/node-esm/totp-a0c83e98.js.map +1 -0
  59. package/dist/rn/{index-5104bca5.js → index-948ff209.js} +23 -8
  60. package/dist/rn/index-948ff209.js.map +1 -0
  61. package/dist/rn/index.js +1 -1
  62. package/dist/rn/internal.js +1 -1
  63. package/dist/rn/src/api/errors.d.ts +1 -0
  64. package/dist/rn/src/core/errors.d.ts +2 -1
  65. package/dist/rn/src/core/strategies/email.d.ts +5 -1
  66. package/dist/rn/src/core/strategies/email_and_password.d.ts +5 -1
  67. package/dist/rn/src/core/user/account_info.d.ts +3 -0
  68. package/dist/src/api/errors.d.ts +1 -0
  69. package/dist/src/core/errors.d.ts +2 -1
  70. package/dist/src/core/strategies/email.d.ts +5 -1
  71. package/dist/src/core/strategies/email_and_password.d.ts +5 -1
  72. package/dist/src/core/user/account_info.d.ts +3 -0
  73. package/package.json +7 -7
  74. package/dist/browser-cjs/index-dfd6ff50.js.map +0 -1
  75. package/dist/cordova/popup_redirect-b8968cb1.js.map +0 -1
  76. package/dist/esm2017/index-ae3ae6d8.js.map +0 -1
  77. package/dist/esm5/index-7f85f824.js.map +0 -1
  78. package/dist/node/totp-e17814fd.js.map +0 -1
  79. package/dist/node-esm/totp-2585fcd6.js.map +0 -1
  80. package/dist/rn/index-5104bca5.js.map +0 -1
@@ -534,6 +534,7 @@ export declare const AuthErrorCodes: {
534
534
  readonly INVALID_EMAIL: "auth/invalid-email";
535
535
  readonly INVALID_EMULATOR_SCHEME: "auth/invalid-emulator-scheme";
536
536
  readonly INVALID_IDP_RESPONSE: "auth/invalid-credential";
537
+ readonly INVALID_LOGIN_CREDENTIALS: "auth/invalid-credential";
537
538
  readonly INVALID_MESSAGE_PAYLOAD: "auth/invalid-message-payload";
538
539
  readonly INVALID_MFA_SESSION: "auth/invalid-multi-factor-session";
539
540
  readonly INVALID_OAUTH_CLIENT_ID: "auth/invalid-oauth-client-id";
@@ -1224,7 +1225,9 @@ declare abstract class FederatedAuthProvider implements AuthProvider {
1224
1225
  }
1225
1226
 
1226
1227
  /**
1227
- * Gets the list of possible sign in methods for the given email address.
1228
+ * Gets the list of possible sign in methods for the given email address. This method returns an
1229
+ * empty list when [Email Enumeration Protection](https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection) is enabled, irrespective of the number of
1230
+ * authentication methods available for the given email.
1228
1231
  *
1229
1232
  * @remarks
1230
1233
  * This is useful to differentiate methods of sign-in for the same provider, eg.
@@ -1235,6 +1238,8 @@ declare abstract class FederatedAuthProvider implements AuthProvider {
1235
1238
  * @param auth - The {@link Auth} instance.
1236
1239
  * @param email - The user's email address.
1237
1240
  *
1241
+ * Deprecated. Migrating off of this method is recommended as a security best-practice.
1242
+ * Learn more in the Identity Platform documentation for [Email Enumeration Protection](https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection).
1238
1243
  * @public
1239
1244
  */
1240
1245
  export declare function fetchSignInMethodsForEmail(auth: Auth, email: string): Promise<string[]>;
@@ -3027,7 +3032,9 @@ export declare class SAMLAuthProvider extends FederatedAuthProvider {
3027
3032
  export declare function sendEmailVerification(user: User, actionCodeSettings?: ActionCodeSettings | null): Promise<void>;
3028
3033
 
3029
3034
  /**
3030
- * Sends a password reset email to the given email address.
3035
+ * Sends a password reset email to the given email address. This method does not throw an error when
3036
+ * there's no user account with the given email address and
3037
+ * [Email Enumeration Protection](https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection) is enabled.
3031
3038
  *
3032
3039
  * @remarks
3033
3040
  * To complete the password reset, call {@link confirmPasswordReset} with the code supplied in
@@ -3196,6 +3203,8 @@ export declare function signInWithCustomToken(auth: Auth, customToken: string):
3196
3203
  *
3197
3204
  * @remarks
3198
3205
  * Fails with an error if the email address and password do not match.
3206
+ * When [Email Enumeration Protection](https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection) is enabled,
3207
+ * this method fails with "auth/invalid-credential" in case of an invalid email/password.
3199
3208
  *
3200
3209
  * Note: The user's password is NOT the password used to access the user's email account. The
3201
3210
  * email address serves as a unique identifier for the user, and the password is used to access
@@ -3620,6 +3629,9 @@ export declare function updateCurrentUser(auth: Auth, user: User | null): Promis
3620
3629
  * @param user - The user.
3621
3630
  * @param newEmail - The new email address.
3622
3631
  *
3632
+ * Throws "auth/operation-not-allowed" error when [Email Enumeration Protection](https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection) is enabled.
3633
+ * Deprecated - Use {@link verifyBeforeUpdateEmail} instead.
3634
+ *
3623
3635
  * @public
3624
3636
  */
3625
3637
  export declare function updateEmail(user: User, newEmail: string): Promise<void>;
package/dist/auth.d.ts CHANGED
@@ -554,7 +554,7 @@ declare const enum AuthErrorCode {
554
554
  INVALID_DYNAMIC_LINK_DOMAIN = "invalid-dynamic-link-domain",
555
555
  INVALID_EMAIL = "invalid-email",
556
556
  INVALID_EMULATOR_SCHEME = "invalid-emulator-scheme",
557
- INVALID_IDP_RESPONSE = "invalid-credential",
557
+ INVALID_CREDENTIAL = "invalid-credential",
558
558
  INVALID_MESSAGE_PAYLOAD = "invalid-message-payload",
559
559
  INVALID_MFA_SESSION = "invalid-multi-factor-session",
560
560
  INVALID_OAUTH_CLIENT_ID = "invalid-oauth-client-id",
@@ -676,6 +676,7 @@ export declare const AuthErrorCodes: {
676
676
  readonly INVALID_EMAIL: "auth/invalid-email";
677
677
  readonly INVALID_EMULATOR_SCHEME: "auth/invalid-emulator-scheme";
678
678
  readonly INVALID_IDP_RESPONSE: "auth/invalid-credential";
679
+ readonly INVALID_LOGIN_CREDENTIALS: "auth/invalid-credential";
679
680
  readonly INVALID_MESSAGE_PAYLOAD: "auth/invalid-message-payload";
680
681
  readonly INVALID_MFA_SESSION: "auth/invalid-multi-factor-session";
681
682
  readonly INVALID_OAUTH_CLIENT_ID: "auth/invalid-oauth-client-id";
@@ -1513,7 +1514,9 @@ declare abstract class FederatedAuthProvider implements AuthProvider {
1513
1514
  }
1514
1515
 
1515
1516
  /**
1516
- * Gets the list of possible sign in methods for the given email address.
1517
+ * Gets the list of possible sign in methods for the given email address. This method returns an
1518
+ * empty list when [Email Enumeration Protection](https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection) is enabled, irrespective of the number of
1519
+ * authentication methods available for the given email.
1517
1520
  *
1518
1521
  * @remarks
1519
1522
  * This is useful to differentiate methods of sign-in for the same provider, eg.
@@ -1524,6 +1527,8 @@ declare abstract class FederatedAuthProvider implements AuthProvider {
1524
1527
  * @param auth - The {@link Auth} instance.
1525
1528
  * @param email - The user's email address.
1526
1529
  *
1530
+ * Deprecated. Migrating off of this method is recommended as a security best-practice.
1531
+ * Learn more in the Identity Platform documentation for [Email Enumeration Protection](https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection).
1527
1532
  * @public
1528
1533
  */
1529
1534
  export declare function fetchSignInMethodsForEmail(auth: Auth, email: string): Promise<string[]>;
@@ -3500,7 +3505,9 @@ export declare class SAMLAuthProvider extends FederatedAuthProvider {
3500
3505
  export declare function sendEmailVerification(user: User, actionCodeSettings?: ActionCodeSettings | null): Promise<void>;
3501
3506
 
3502
3507
  /**
3503
- * Sends a password reset email to the given email address.
3508
+ * Sends a password reset email to the given email address. This method does not throw an error when
3509
+ * there's no user account with the given email address and
3510
+ * [Email Enumeration Protection](https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection) is enabled.
3504
3511
  *
3505
3512
  * @remarks
3506
3513
  * To complete the password reset, call {@link confirmPasswordReset} with the code supplied in
@@ -3669,6 +3676,8 @@ export declare function signInWithCustomToken(auth: Auth, customToken: string):
3669
3676
  *
3670
3677
  * @remarks
3671
3678
  * Fails with an error if the email address and password do not match.
3679
+ * When [Email Enumeration Protection](https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection) is enabled,
3680
+ * this method fails with "auth/invalid-credential" in case of an invalid email/password.
3672
3681
  *
3673
3682
  * Note: The user's password is NOT the password used to access the user's email account. The
3674
3683
  * email address serves as a unique identifier for the user, and the password is used to access
@@ -4145,6 +4154,9 @@ export declare function updateCurrentUser(auth: Auth, user: User | null): Promis
4145
4154
  * @param user - The user.
4146
4155
  * @param newEmail - The new email address.
4147
4156
  *
4157
+ * Throws "auth/operation-not-allowed" error when [Email Enumeration Protection](https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection) is enabled.
4158
+ * Deprecated - Use {@link verifyBeforeUpdateEmail} instead.
4159
+ *
4148
4160
  * @public
4149
4161
  */
4150
4162
  export declare function updateEmail(user: User, newEmail: string): Promise<void>;
@@ -176,7 +176,7 @@ function _debugErrorMap() {
176
176
  ["invalid-emulator-scheme" /* AuthErrorCode.INVALID_EMULATOR_SCHEME */]: 'Emulator URL must start with a valid scheme (http:// or https://).',
177
177
  ["invalid-api-key" /* AuthErrorCode.INVALID_API_KEY */]: 'Your API key is invalid, please check you have copied it correctly.',
178
178
  ["invalid-cert-hash" /* AuthErrorCode.INVALID_CERT_HASH */]: 'The SHA-1 certificate hash provided is invalid.',
179
- ["invalid-credential" /* AuthErrorCode.INVALID_IDP_RESPONSE */]: 'The supplied auth credential is malformed or has expired.',
179
+ ["invalid-credential" /* AuthErrorCode.INVALID_CREDENTIAL */]: 'The supplied auth credential is incorrect, malformed or has expired.',
180
180
  ["invalid-message-payload" /* AuthErrorCode.INVALID_MESSAGE_PAYLOAD */]: 'The email template corresponding to this action contains invalid characters in its message. ' +
181
181
  'Please fix by going to the Auth email templates section in the Firebase Console.',
182
182
  ["invalid-multi-factor-session" /* AuthErrorCode.INVALID_MFA_SESSION */]: 'The request does not contain a valid proof of first factor successful sign-in.',
@@ -352,6 +352,7 @@ const AUTH_ERROR_CODES_MAP_DO_NOT_USE_INTERNALLY = {
352
352
  INVALID_EMAIL: 'auth/invalid-email',
353
353
  INVALID_EMULATOR_SCHEME: 'auth/invalid-emulator-scheme',
354
354
  INVALID_IDP_RESPONSE: 'auth/invalid-credential',
355
+ INVALID_LOGIN_CREDENTIALS: 'auth/invalid-credential',
355
356
  INVALID_MESSAGE_PAYLOAD: 'auth/invalid-message-payload',
356
357
  INVALID_MFA_SESSION: 'auth/invalid-multi-factor-session',
357
358
  INVALID_OAUTH_CLIENT_ID: 'auth/invalid-oauth-client-id',
@@ -786,12 +787,15 @@ const SERVER_ERROR_MAP = {
786
787
  ["INVALID_PASSWORD" /* ServerError.INVALID_PASSWORD */]: "wrong-password" /* AuthErrorCode.INVALID_PASSWORD */,
787
788
  // This can only happen if the SDK sends a bad request.
788
789
  ["MISSING_PASSWORD" /* ServerError.MISSING_PASSWORD */]: "missing-password" /* AuthErrorCode.MISSING_PASSWORD */,
790
+ // Thrown if Email Enumeration Protection is enabled in the project and the email or password is
791
+ // invalid.
792
+ ["INVALID_LOGIN_CREDENTIALS" /* ServerError.INVALID_LOGIN_CREDENTIALS */]: "invalid-credential" /* AuthErrorCode.INVALID_CREDENTIAL */,
789
793
  // Sign up with email and password errors.
790
794
  ["EMAIL_EXISTS" /* ServerError.EMAIL_EXISTS */]: "email-already-in-use" /* AuthErrorCode.EMAIL_EXISTS */,
791
795
  ["PASSWORD_LOGIN_DISABLED" /* ServerError.PASSWORD_LOGIN_DISABLED */]: "operation-not-allowed" /* AuthErrorCode.OPERATION_NOT_ALLOWED */,
792
796
  // Verify assertion for sign in with credential errors:
793
- ["INVALID_IDP_RESPONSE" /* ServerError.INVALID_IDP_RESPONSE */]: "invalid-credential" /* AuthErrorCode.INVALID_IDP_RESPONSE */,
794
- ["INVALID_PENDING_TOKEN" /* ServerError.INVALID_PENDING_TOKEN */]: "invalid-credential" /* AuthErrorCode.INVALID_IDP_RESPONSE */,
797
+ ["INVALID_IDP_RESPONSE" /* ServerError.INVALID_IDP_RESPONSE */]: "invalid-credential" /* AuthErrorCode.INVALID_CREDENTIAL */,
798
+ ["INVALID_PENDING_TOKEN" /* ServerError.INVALID_PENDING_TOKEN */]: "invalid-credential" /* AuthErrorCode.INVALID_CREDENTIAL */,
795
799
  ["FEDERATED_USER_ID_ALREADY_LINKED" /* ServerError.FEDERATED_USER_ID_ALREADY_LINKED */]: "credential-already-in-use" /* AuthErrorCode.CREDENTIAL_ALREADY_IN_USE */,
796
800
  // This can only happen if the SDK sends a bad request.
797
801
  ["MISSING_REQ_TYPE" /* ServerError.MISSING_REQ_TYPE */]: "internal-error" /* AuthErrorCode.INTERNAL_ERROR */,
@@ -813,7 +817,7 @@ const SERVER_ERROR_MAP = {
813
817
  // Phone Auth related errors.
814
818
  ["INVALID_CODE" /* ServerError.INVALID_CODE */]: "invalid-verification-code" /* AuthErrorCode.INVALID_CODE */,
815
819
  ["INVALID_SESSION_INFO" /* ServerError.INVALID_SESSION_INFO */]: "invalid-verification-id" /* AuthErrorCode.INVALID_SESSION_INFO */,
816
- ["INVALID_TEMPORARY_PROOF" /* ServerError.INVALID_TEMPORARY_PROOF */]: "invalid-credential" /* AuthErrorCode.INVALID_IDP_RESPONSE */,
820
+ ["INVALID_TEMPORARY_PROOF" /* ServerError.INVALID_TEMPORARY_PROOF */]: "invalid-credential" /* AuthErrorCode.INVALID_CREDENTIAL */,
817
821
  ["MISSING_SESSION_INFO" /* ServerError.MISSING_SESSION_INFO */]: "missing-verification-id" /* AuthErrorCode.MISSING_SESSION_INFO */,
818
822
  ["SESSION_EXPIRED" /* ServerError.SESSION_EXPIRED */]: "code-expired" /* AuthErrorCode.CODE_EXPIRED */,
819
823
  // Other action code errors when additional settings passed.
@@ -5623,7 +5627,9 @@ async function recachePasswordPolicy(auth) {
5623
5627
  }
5624
5628
  }
5625
5629
  /**
5626
- * Sends a password reset email to the given email address.
5630
+ * Sends a password reset email to the given email address. This method does not throw an error when
5631
+ * there's no user account with the given email address and
5632
+ * [Email Enumeration Protection](https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection) is enabled.
5627
5633
  *
5628
5634
  * @remarks
5629
5635
  * To complete the password reset, call {@link confirmPasswordReset} with the code supplied in
@@ -5807,6 +5813,8 @@ async function createUserWithEmailAndPassword(auth, email, password) {
5807
5813
  *
5808
5814
  * @remarks
5809
5815
  * Fails with an error if the email address and password do not match.
5816
+ * When [Email Enumeration Protection](https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection) is enabled,
5817
+ * this method fails with "auth/invalid-credential" in case of an invalid email/password.
5810
5818
  *
5811
5819
  * Note: The user's password is NOT the password used to access the user's email account. The
5812
5820
  * email address serves as a unique identifier for the user, and the password is used to access
@@ -5992,7 +6000,9 @@ async function createAuthUri(auth, request) {
5992
6000
  * limitations under the License.
5993
6001
  */
5994
6002
  /**
5995
- * Gets the list of possible sign in methods for the given email address.
6003
+ * Gets the list of possible sign in methods for the given email address. This method returns an
6004
+ * empty list when [Email Enumeration Protection](https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection) is enabled, irrespective of the number of
6005
+ * authentication methods available for the given email.
5996
6006
  *
5997
6007
  * @remarks
5998
6008
  * This is useful to differentiate methods of sign-in for the same provider, eg.
@@ -6003,6 +6013,8 @@ async function createAuthUri(auth, request) {
6003
6013
  * @param auth - The {@link Auth} instance.
6004
6014
  * @param email - The user's email address.
6005
6015
  *
6016
+ * Deprecated. Migrating off of this method is recommended as a security best-practice.
6017
+ * Learn more in the Identity Platform documentation for [Email Enumeration Protection](https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection).
6006
6018
  * @public
6007
6019
  */
6008
6020
  async function fetchSignInMethodsForEmail(auth, email) {
@@ -6196,6 +6208,9 @@ async function updateProfile(user, { displayName, photoURL: photoUrl }) {
6196
6208
  * @param user - The user.
6197
6209
  * @param newEmail - The new email address.
6198
6210
  *
6211
+ * Throws "auth/operation-not-allowed" error when [Email Enumeration Protection](https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection) is enabled.
6212
+ * Deprecated - Use {@link verifyBeforeUpdateEmail} instead.
6213
+ *
6199
6214
  * @public
6200
6215
  */
6201
6216
  function updateEmail(user, newEmail) {
@@ -10267,7 +10282,7 @@ function _isEmptyString(input) {
10267
10282
  }
10268
10283
 
10269
10284
  var name = "@firebase/auth";
10270
- var version = "1.4.0-20231107192534";
10285
+ var version = "1.4.0-canary.0d29adc97";
10271
10286
 
10272
10287
  /**
10273
10288
  * @license
@@ -10594,4 +10609,4 @@ exports.useDeviceLanguage = useDeviceLanguage;
10594
10609
  exports.validatePassword = validatePassword;
10595
10610
  exports.verifyBeforeUpdateEmail = verifyBeforeUpdateEmail;
10596
10611
  exports.verifyPasswordResetCode = verifyPasswordResetCode;
10597
- //# sourceMappingURL=index-dfd6ff50.js.map
10612
+ //# sourceMappingURL=index-cb1a91bb.js.map