@firebase/auth 1.3.0-canary.60e4a07d2 → 1.3.0-canary.698eeb67d
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/auth-public.d.ts +25 -4
- package/dist/auth.d.ts +25 -4
- package/dist/browser-cjs/{index-9e6c4f37.js → index-6c320c88.js} +115 -127
- package/dist/browser-cjs/index-6c320c88.js.map +1 -0
- package/dist/browser-cjs/index.js +1 -1
- package/dist/browser-cjs/internal.js +1 -1
- package/dist/browser-cjs/src/api/authentication/recaptcha.d.ts +2 -2
- package/dist/browser-cjs/src/api/index.d.ts +10 -0
- package/dist/browser-cjs/src/platform_browser/recaptcha/recaptcha.d.ts +18 -3
- package/dist/browser-cjs/src/platform_browser/recaptcha/recaptcha_enterprise_verifier.d.ts +3 -0
- package/dist/cordova/index.js +2 -2
- package/dist/cordova/internal.js +2 -2
- package/dist/cordova/{popup_redirect-4758cdae.js → popup_redirect-96bd7835.js} +165 -214
- package/dist/cordova/popup_redirect-96bd7835.js.map +1 -0
- package/dist/cordova/src/api/authentication/recaptcha.d.ts +2 -2
- package/dist/cordova/src/api/index.d.ts +10 -0
- package/dist/cordova/src/platform_browser/recaptcha/recaptcha.d.ts +18 -3
- package/dist/cordova/src/platform_browser/recaptcha/recaptcha_enterprise_verifier.d.ts +3 -0
- package/dist/esm2017/{index-c088af8a.js → index-57aefb02.js} +115 -127
- package/dist/esm2017/index-57aefb02.js.map +1 -0
- package/dist/esm2017/index.js +1 -1
- package/dist/esm2017/internal.js +2 -2
- package/dist/esm2017/src/api/authentication/recaptcha.d.ts +2 -2
- package/dist/esm2017/src/api/index.d.ts +10 -0
- package/dist/esm2017/src/platform_browser/recaptcha/recaptcha.d.ts +18 -3
- package/dist/esm2017/src/platform_browser/recaptcha/recaptcha_enterprise_verifier.d.ts +3 -0
- package/dist/esm5/{index-f6b0662a.js → index-6728b711.js} +165 -214
- package/dist/esm5/index-6728b711.js.map +1 -0
- package/dist/esm5/index.js +1 -1
- package/dist/esm5/internal.js +2 -2
- package/dist/esm5/src/api/authentication/recaptcha.d.ts +2 -2
- package/dist/esm5/src/api/index.d.ts +10 -0
- package/dist/esm5/src/platform_browser/recaptcha/recaptcha.d.ts +18 -3
- package/dist/esm5/src/platform_browser/recaptcha/recaptcha_enterprise_verifier.d.ts +3 -0
- package/dist/index.webworker.esm5.js +123 -172
- package/dist/index.webworker.esm5.js.map +1 -1
- package/dist/node/index.js +1 -1
- package/dist/node/internal.js +1 -1
- package/dist/node/src/api/authentication/recaptcha.d.ts +2 -2
- package/dist/node/src/api/index.d.ts +10 -0
- package/dist/node/src/platform_browser/recaptcha/recaptcha.d.ts +18 -3
- package/dist/node/src/platform_browser/recaptcha/recaptcha_enterprise_verifier.d.ts +3 -0
- package/dist/node/{totp-2cc6b74c.js → totp-8ef4e9a8.js} +161 -210
- package/dist/node/totp-8ef4e9a8.js.map +1 -0
- package/dist/node-esm/index.js +1 -1
- package/dist/node-esm/internal.js +2 -2
- package/dist/node-esm/src/api/authentication/recaptcha.d.ts +2 -2
- package/dist/node-esm/src/api/index.d.ts +10 -0
- package/dist/node-esm/src/platform_browser/recaptcha/recaptcha.d.ts +18 -3
- package/dist/node-esm/src/platform_browser/recaptcha/recaptcha_enterprise_verifier.d.ts +3 -0
- package/dist/node-esm/{totp-bfa3ee61.js → totp-19c74b23.js} +111 -123
- package/dist/node-esm/totp-19c74b23.js.map +1 -0
- package/dist/rn/{index-6ea1dd0a.js → index-95a9f1bd.js} +165 -214
- package/dist/rn/index-95a9f1bd.js.map +1 -0
- package/dist/rn/index.js +1 -1
- package/dist/rn/internal.js +1 -1
- package/dist/rn/src/api/authentication/recaptcha.d.ts +2 -2
- package/dist/rn/src/api/index.d.ts +10 -0
- package/dist/rn/src/platform_browser/recaptcha/recaptcha.d.ts +18 -3
- package/dist/rn/src/platform_browser/recaptcha/recaptcha_enterprise_verifier.d.ts +3 -0
- package/dist/src/api/authentication/recaptcha.d.ts +2 -2
- package/dist/src/api/index.d.ts +10 -0
- package/dist/src/platform_browser/recaptcha/recaptcha.d.ts +18 -3
- package/dist/src/platform_browser/recaptcha/recaptcha_enterprise_verifier.d.ts +3 -0
- package/package.json +12 -12
- package/dist/browser-cjs/index-9e6c4f37.js.map +0 -1
- package/dist/cordova/popup_redirect-4758cdae.js.map +0 -1
- package/dist/esm2017/index-c088af8a.js.map +0 -1
- package/dist/esm5/index-f6b0662a.js.map +0 -1
- package/dist/node/totp-2cc6b74c.js.map +0 -1
- package/dist/node-esm/totp-bfa3ee61.js.map +0 -1
- package/dist/rn/index-6ea1dd0a.js.map +0 -1
|
@@ -6,53 +6,6 @@ var app = require('@firebase/app');
|
|
|
6
6
|
var component = require('@firebase/component');
|
|
7
7
|
var logger = require('@firebase/logger');
|
|
8
8
|
|
|
9
|
-
/**
|
|
10
|
-
* @license
|
|
11
|
-
* Copyright 2020 Google LLC
|
|
12
|
-
*
|
|
13
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
14
|
-
* you may not use this file except in compliance with the License.
|
|
15
|
-
* You may obtain a copy of the License at
|
|
16
|
-
*
|
|
17
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
18
|
-
*
|
|
19
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
20
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
21
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
22
|
-
* See the License for the specific language governing permissions and
|
|
23
|
-
* limitations under the License.
|
|
24
|
-
*/
|
|
25
|
-
function isV2(grecaptcha) {
|
|
26
|
-
return (grecaptcha !== undefined &&
|
|
27
|
-
grecaptcha.getResponse !== undefined);
|
|
28
|
-
}
|
|
29
|
-
function isEnterprise(grecaptcha) {
|
|
30
|
-
return (grecaptcha !== undefined &&
|
|
31
|
-
grecaptcha.enterprise !== undefined);
|
|
32
|
-
}
|
|
33
|
-
var RecaptchaConfig = /** @class */ (function () {
|
|
34
|
-
function RecaptchaConfig(response) {
|
|
35
|
-
/**
|
|
36
|
-
* The reCAPTCHA site key.
|
|
37
|
-
*/
|
|
38
|
-
this.siteKey = '';
|
|
39
|
-
/**
|
|
40
|
-
* The reCAPTCHA enablement status of the {@link EmailAuthProvider} for the current tenant.
|
|
41
|
-
*/
|
|
42
|
-
this.emailPasswordEnabled = false;
|
|
43
|
-
if (response.recaptchaKey === undefined) {
|
|
44
|
-
throw new Error('recaptchaKey undefined');
|
|
45
|
-
}
|
|
46
|
-
// Example response.recaptchaKey: "projects/proj123/keys/sitekey123"
|
|
47
|
-
this.siteKey = response.recaptchaKey.split('/')[3];
|
|
48
|
-
this.emailPasswordEnabled = response.recaptchaEnforcementState.some(function (enforcementState) {
|
|
49
|
-
return enforcementState.provider === 'EMAIL_PASSWORD_PROVIDER' &&
|
|
50
|
-
enforcementState.enforcementState !== 'OFF';
|
|
51
|
-
});
|
|
52
|
-
}
|
|
53
|
-
return RecaptchaConfig;
|
|
54
|
-
}());
|
|
55
|
-
|
|
56
9
|
/**
|
|
57
10
|
* @license
|
|
58
11
|
* Copyright 2020 Google LLC
|
|
@@ -963,6 +916,18 @@ function _getFinalTarget(auth, host, path, query) {
|
|
|
963
916
|
}
|
|
964
917
|
return _emulatorUrl(auth.config, base);
|
|
965
918
|
}
|
|
919
|
+
function _parseEnforcementState(enforcementStateStr) {
|
|
920
|
+
switch (enforcementStateStr) {
|
|
921
|
+
case 'ENFORCE':
|
|
922
|
+
return "ENFORCE" /* EnforcementState.ENFORCE */;
|
|
923
|
+
case 'AUDIT':
|
|
924
|
+
return "AUDIT" /* EnforcementState.AUDIT */;
|
|
925
|
+
case 'OFF':
|
|
926
|
+
return "OFF" /* EnforcementState.OFF */;
|
|
927
|
+
default:
|
|
928
|
+
return "ENFORCEMENT_STATE_UNSPECIFIED" /* EnforcementState.ENFORCEMENT_STATE_UNSPECIFIED */;
|
|
929
|
+
}
|
|
930
|
+
}
|
|
966
931
|
var NetworkTimeout = /** @class */ (function () {
|
|
967
932
|
function NetworkTimeout(auth) {
|
|
968
933
|
var _this = this;
|
|
@@ -998,6 +963,81 @@ function _makeTaggedError(auth, code, response) {
|
|
|
998
963
|
return error;
|
|
999
964
|
}
|
|
1000
965
|
|
|
966
|
+
/**
|
|
967
|
+
* @license
|
|
968
|
+
* Copyright 2020 Google LLC
|
|
969
|
+
*
|
|
970
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
971
|
+
* you may not use this file except in compliance with the License.
|
|
972
|
+
* You may obtain a copy of the License at
|
|
973
|
+
*
|
|
974
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
975
|
+
*
|
|
976
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
977
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
978
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
979
|
+
* See the License for the specific language governing permissions and
|
|
980
|
+
* limitations under the License.
|
|
981
|
+
*/
|
|
982
|
+
function isV2(grecaptcha) {
|
|
983
|
+
return (grecaptcha !== undefined &&
|
|
984
|
+
grecaptcha.getResponse !== undefined);
|
|
985
|
+
}
|
|
986
|
+
function isEnterprise(grecaptcha) {
|
|
987
|
+
return (grecaptcha !== undefined &&
|
|
988
|
+
grecaptcha.enterprise !== undefined);
|
|
989
|
+
}
|
|
990
|
+
var RecaptchaConfig = /** @class */ (function () {
|
|
991
|
+
function RecaptchaConfig(response) {
|
|
992
|
+
/**
|
|
993
|
+
* The reCAPTCHA site key.
|
|
994
|
+
*/
|
|
995
|
+
this.siteKey = '';
|
|
996
|
+
/**
|
|
997
|
+
* The list of providers and their enablement status for reCAPTCHA Enterprise.
|
|
998
|
+
*/
|
|
999
|
+
this.recaptchaEnforcementState = [];
|
|
1000
|
+
if (response.recaptchaKey === undefined) {
|
|
1001
|
+
throw new Error('recaptchaKey undefined');
|
|
1002
|
+
}
|
|
1003
|
+
// Example response.recaptchaKey: "projects/proj123/keys/sitekey123"
|
|
1004
|
+
this.siteKey = response.recaptchaKey.split('/')[3];
|
|
1005
|
+
this.recaptchaEnforcementState = response.recaptchaEnforcementState;
|
|
1006
|
+
}
|
|
1007
|
+
/**
|
|
1008
|
+
* Returns the reCAPTCHA Enterprise enforcement state for the given provider.
|
|
1009
|
+
*
|
|
1010
|
+
* @param providerStr - The provider whose enforcement state is to be returned.
|
|
1011
|
+
* @returns The reCAPTCHA Enterprise enforcement state for the given provider.
|
|
1012
|
+
*/
|
|
1013
|
+
RecaptchaConfig.prototype.getProviderEnforcementState = function (providerStr) {
|
|
1014
|
+
if (!this.recaptchaEnforcementState ||
|
|
1015
|
+
this.recaptchaEnforcementState.length === 0) {
|
|
1016
|
+
return null;
|
|
1017
|
+
}
|
|
1018
|
+
for (var _i = 0, _a = this.recaptchaEnforcementState; _i < _a.length; _i++) {
|
|
1019
|
+
var recaptchaEnforcementState = _a[_i];
|
|
1020
|
+
if (recaptchaEnforcementState.provider &&
|
|
1021
|
+
recaptchaEnforcementState.provider === providerStr) {
|
|
1022
|
+
return _parseEnforcementState(recaptchaEnforcementState.enforcementState);
|
|
1023
|
+
}
|
|
1024
|
+
}
|
|
1025
|
+
return null;
|
|
1026
|
+
};
|
|
1027
|
+
/**
|
|
1028
|
+
* Returns true if the reCAPTCHA Enterprise enforcement state for the provider is set to ENFORCE or AUDIT.
|
|
1029
|
+
*
|
|
1030
|
+
* @param providerStr - The provider whose enablement state is to be returned.
|
|
1031
|
+
* @returns Whether or not reCAPTCHA Enterprise protection is enabled for the given provider.
|
|
1032
|
+
*/
|
|
1033
|
+
RecaptchaConfig.prototype.isProviderEnabled = function (providerStr) {
|
|
1034
|
+
return (this.getProviderEnforcementState(providerStr) ===
|
|
1035
|
+
"ENFORCE" /* EnforcementState.ENFORCE */ ||
|
|
1036
|
+
this.getProviderEnforcementState(providerStr) === "AUDIT" /* EnforcementState.AUDIT */);
|
|
1037
|
+
};
|
|
1038
|
+
return RecaptchaConfig;
|
|
1039
|
+
}());
|
|
1040
|
+
|
|
1001
1041
|
/**
|
|
1002
1042
|
* @license
|
|
1003
1043
|
* Copyright 2020 Google LLC
|
|
@@ -3680,6 +3720,39 @@ function injectRecaptchaFields(auth, request, action, captchaResp) {
|
|
|
3680
3720
|
});
|
|
3681
3721
|
});
|
|
3682
3722
|
}
|
|
3723
|
+
function handleRecaptchaFlow(authInstance, request, actionName, actionMethod) {
|
|
3724
|
+
var _a;
|
|
3725
|
+
return tslib.__awaiter(this, void 0, void 0, function () {
|
|
3726
|
+
var requestWithRecaptcha;
|
|
3727
|
+
var _this = this;
|
|
3728
|
+
return tslib.__generator(this, function (_b) {
|
|
3729
|
+
switch (_b.label) {
|
|
3730
|
+
case 0:
|
|
3731
|
+
if (!((_a = authInstance
|
|
3732
|
+
._getRecaptchaConfig()) === null || _a === void 0 ? void 0 : _a.isProviderEnabled("EMAIL_PASSWORD_PROVIDER" /* RecaptchaProvider.EMAIL_PASSWORD_PROVIDER */))) return [3 /*break*/, 2];
|
|
3733
|
+
return [4 /*yield*/, injectRecaptchaFields(authInstance, request, actionName, actionName === "getOobCode" /* RecaptchaActionName.GET_OOB_CODE */)];
|
|
3734
|
+
case 1:
|
|
3735
|
+
requestWithRecaptcha = _b.sent();
|
|
3736
|
+
return [2 /*return*/, actionMethod(authInstance, requestWithRecaptcha)];
|
|
3737
|
+
case 2: return [2 /*return*/, actionMethod(authInstance, request).catch(function (error) { return tslib.__awaiter(_this, void 0, void 0, function () {
|
|
3738
|
+
var requestWithRecaptcha;
|
|
3739
|
+
return tslib.__generator(this, function (_a) {
|
|
3740
|
+
switch (_a.label) {
|
|
3741
|
+
case 0:
|
|
3742
|
+
if (!(error.code === "auth/".concat("missing-recaptcha-token" /* AuthErrorCode.MISSING_RECAPTCHA_TOKEN */))) return [3 /*break*/, 2];
|
|
3743
|
+
console.log("".concat(actionName, " is protected by reCAPTCHA Enterprise for this project. Automatically triggering the reCAPTCHA flow and restarting the flow."));
|
|
3744
|
+
return [4 /*yield*/, injectRecaptchaFields(authInstance, request, actionName, actionName === "getOobCode" /* RecaptchaActionName.GET_OOB_CODE */)];
|
|
3745
|
+
case 1:
|
|
3746
|
+
requestWithRecaptcha = _a.sent();
|
|
3747
|
+
return [2 /*return*/, actionMethod(authInstance, requestWithRecaptcha)];
|
|
3748
|
+
case 2: return [2 /*return*/, Promise.reject(error)];
|
|
3749
|
+
}
|
|
3750
|
+
});
|
|
3751
|
+
}); })];
|
|
3752
|
+
}
|
|
3753
|
+
});
|
|
3754
|
+
});
|
|
3755
|
+
}
|
|
3683
3756
|
function _initializeRecaptchaConfig(auth) {
|
|
3684
3757
|
return tslib.__awaiter(this, void 0, void 0, function () {
|
|
3685
3758
|
var authInternal, response, config, verifier;
|
|
@@ -3700,7 +3773,7 @@ function _initializeRecaptchaConfig(auth) {
|
|
|
3700
3773
|
else {
|
|
3701
3774
|
authInternal._tenantRecaptchaConfigs[authInternal.tenantId] = config;
|
|
3702
3775
|
}
|
|
3703
|
-
if (config.
|
|
3776
|
+
if (config.isProviderEnabled("EMAIL_PASSWORD_PROVIDER" /* RecaptchaProvider.EMAIL_PASSWORD_PROVIDER */)) {
|
|
3704
3777
|
verifier = new RecaptchaEnterpriseVerifier(authInternal);
|
|
3705
3778
|
void verifier.verify();
|
|
3706
3779
|
}
|
|
@@ -4166,55 +4239,27 @@ var EmailAuthCredential = /** @class */ (function (_super) {
|
|
|
4166
4239
|
};
|
|
4167
4240
|
/** @internal */
|
|
4168
4241
|
EmailAuthCredential.prototype._getIdTokenResponse = function (auth) {
|
|
4169
|
-
var _a;
|
|
4170
4242
|
return tslib.__awaiter(this, void 0, void 0, function () {
|
|
4171
|
-
var
|
|
4172
|
-
|
|
4173
|
-
|
|
4174
|
-
|
|
4175
|
-
|
|
4176
|
-
_b = this.signInMethod;
|
|
4177
|
-
switch (_b) {
|
|
4178
|
-
case "password" /* SignInMethod.EMAIL_PASSWORD */: return [3 /*break*/, 1];
|
|
4179
|
-
case "emailLink" /* SignInMethod.EMAIL_LINK */: return [3 /*break*/, 4];
|
|
4180
|
-
}
|
|
4181
|
-
return [3 /*break*/, 5];
|
|
4182
|
-
case 1:
|
|
4183
|
-
request_1 = {
|
|
4243
|
+
var request;
|
|
4244
|
+
return tslib.__generator(this, function (_a) {
|
|
4245
|
+
switch (this.signInMethod) {
|
|
4246
|
+
case "password" /* SignInMethod.EMAIL_PASSWORD */:
|
|
4247
|
+
request = {
|
|
4184
4248
|
returnSecureToken: true,
|
|
4185
4249
|
email: this._email,
|
|
4186
4250
|
password: this._password,
|
|
4187
4251
|
clientType: "CLIENT_TYPE_WEB" /* RecaptchaClientType.WEB */
|
|
4188
4252
|
};
|
|
4189
|
-
|
|
4190
|
-
|
|
4191
|
-
|
|
4192
|
-
|
|
4193
|
-
|
|
4194
|
-
|
|
4195
|
-
|
|
4196
|
-
return tslib.__generator(this, function (_a) {
|
|
4197
|
-
switch (_a.label) {
|
|
4198
|
-
case 0:
|
|
4199
|
-
if (!(error.code === "auth/".concat("missing-recaptcha-token" /* AuthErrorCode.MISSING_RECAPTCHA_TOKEN */))) return [3 /*break*/, 2];
|
|
4200
|
-
console.log('Sign-in with email address and password is protected by reCAPTCHA for this project. Automatically triggering the reCAPTCHA flow and restarting the sign-in flow.');
|
|
4201
|
-
return [4 /*yield*/, injectRecaptchaFields(auth, request_1, "signInWithPassword" /* RecaptchaActionName.SIGN_IN_WITH_PASSWORD */)];
|
|
4202
|
-
case 1:
|
|
4203
|
-
requestWithRecaptcha = _a.sent();
|
|
4204
|
-
return [2 /*return*/, signInWithPassword(auth, requestWithRecaptcha)];
|
|
4205
|
-
case 2: return [2 /*return*/, Promise.reject(error)];
|
|
4206
|
-
}
|
|
4207
|
-
});
|
|
4208
|
-
}); })];
|
|
4209
|
-
case 4: return [2 /*return*/, signInWithEmailLink$1(auth, {
|
|
4210
|
-
email: this._email,
|
|
4211
|
-
oobCode: this._password
|
|
4212
|
-
})];
|
|
4213
|
-
case 5:
|
|
4253
|
+
return [2 /*return*/, handleRecaptchaFlow(auth, request, "signInWithPassword" /* RecaptchaActionName.SIGN_IN_WITH_PASSWORD */, signInWithPassword)];
|
|
4254
|
+
case "emailLink" /* SignInMethod.EMAIL_LINK */:
|
|
4255
|
+
return [2 /*return*/, signInWithEmailLink$1(auth, {
|
|
4256
|
+
email: this._email,
|
|
4257
|
+
oobCode: this._password
|
|
4258
|
+
})];
|
|
4259
|
+
default:
|
|
4214
4260
|
_fail(auth, "internal-error" /* AuthErrorCode.INTERNAL_ERROR */);
|
|
4215
|
-
_c.label = 6;
|
|
4216
|
-
case 6: return [2 /*return*/];
|
|
4217
4261
|
}
|
|
4262
|
+
return [2 /*return*/];
|
|
4218
4263
|
});
|
|
4219
4264
|
});
|
|
4220
4265
|
};
|
|
@@ -6431,12 +6476,10 @@ function recachePasswordPolicy(auth) {
|
|
|
6431
6476
|
* @public
|
|
6432
6477
|
*/
|
|
6433
6478
|
function sendPasswordResetEmail(auth, email, actionCodeSettings) {
|
|
6434
|
-
var _a;
|
|
6435
6479
|
return tslib.__awaiter(this, void 0, void 0, function () {
|
|
6436
|
-
var authInternal, request
|
|
6437
|
-
|
|
6438
|
-
|
|
6439
|
-
switch (_b.label) {
|
|
6480
|
+
var authInternal, request;
|
|
6481
|
+
return tslib.__generator(this, function (_a) {
|
|
6482
|
+
switch (_a.label) {
|
|
6440
6483
|
case 0:
|
|
6441
6484
|
authInternal = _castAuth(auth);
|
|
6442
6485
|
request = {
|
|
@@ -6444,48 +6487,13 @@ function sendPasswordResetEmail(auth, email, actionCodeSettings) {
|
|
|
6444
6487
|
email: email,
|
|
6445
6488
|
clientType: "CLIENT_TYPE_WEB" /* RecaptchaClientType.WEB */
|
|
6446
6489
|
};
|
|
6447
|
-
if (!((_a = authInternal._getRecaptchaConfig()) === null || _a === void 0 ? void 0 : _a.emailPasswordEnabled)) return [3 /*break*/, 3];
|
|
6448
|
-
return [4 /*yield*/, injectRecaptchaFields(authInternal, request, "getOobCode" /* RecaptchaActionName.GET_OOB_CODE */, true)];
|
|
6449
|
-
case 1:
|
|
6450
|
-
requestWithRecaptcha = _b.sent();
|
|
6451
|
-
if (actionCodeSettings) {
|
|
6452
|
-
_setActionCodeSettingsOnRequest(authInternal, requestWithRecaptcha, actionCodeSettings);
|
|
6453
|
-
}
|
|
6454
|
-
return [4 /*yield*/, sendPasswordResetEmail$1(authInternal, requestWithRecaptcha)];
|
|
6455
|
-
case 2:
|
|
6456
|
-
_b.sent();
|
|
6457
|
-
return [3 /*break*/, 5];
|
|
6458
|
-
case 3:
|
|
6459
6490
|
if (actionCodeSettings) {
|
|
6460
6491
|
_setActionCodeSettingsOnRequest(authInternal, request, actionCodeSettings);
|
|
6461
6492
|
}
|
|
6462
|
-
return [4 /*yield*/,
|
|
6463
|
-
|
|
6464
|
-
|
|
6465
|
-
|
|
6466
|
-
switch (_a.label) {
|
|
6467
|
-
case 0:
|
|
6468
|
-
if (!(error.code === "auth/".concat("missing-recaptcha-token" /* AuthErrorCode.MISSING_RECAPTCHA_TOKEN */))) return [3 /*break*/, 3];
|
|
6469
|
-
console.log('Password resets are protected by reCAPTCHA for this project. Automatically triggering the reCAPTCHA flow and restarting the password reset flow.');
|
|
6470
|
-
return [4 /*yield*/, injectRecaptchaFields(authInternal, request, "getOobCode" /* RecaptchaActionName.GET_OOB_CODE */, true)];
|
|
6471
|
-
case 1:
|
|
6472
|
-
requestWithRecaptcha = _a.sent();
|
|
6473
|
-
if (actionCodeSettings) {
|
|
6474
|
-
_setActionCodeSettingsOnRequest(authInternal, requestWithRecaptcha, actionCodeSettings);
|
|
6475
|
-
}
|
|
6476
|
-
return [4 /*yield*/, sendPasswordResetEmail$1(authInternal, requestWithRecaptcha)];
|
|
6477
|
-
case 2:
|
|
6478
|
-
_a.sent();
|
|
6479
|
-
return [3 /*break*/, 4];
|
|
6480
|
-
case 3: return [2 /*return*/, Promise.reject(error)];
|
|
6481
|
-
case 4: return [2 /*return*/];
|
|
6482
|
-
}
|
|
6483
|
-
});
|
|
6484
|
-
}); })];
|
|
6485
|
-
case 4:
|
|
6486
|
-
_b.sent();
|
|
6487
|
-
_b.label = 5;
|
|
6488
|
-
case 5: return [2 /*return*/];
|
|
6493
|
+
return [4 /*yield*/, handleRecaptchaFlow(authInternal, request, "getOobCode" /* RecaptchaActionName.GET_OOB_CODE */, sendPasswordResetEmail$1)];
|
|
6494
|
+
case 1:
|
|
6495
|
+
_a.sent();
|
|
6496
|
+
return [2 /*return*/];
|
|
6489
6497
|
}
|
|
6490
6498
|
});
|
|
6491
6499
|
});
|
|
@@ -6640,12 +6648,10 @@ function verifyPasswordResetCode(auth, code) {
|
|
|
6640
6648
|
* @public
|
|
6641
6649
|
*/
|
|
6642
6650
|
function createUserWithEmailAndPassword(auth, email, password) {
|
|
6643
|
-
var _a;
|
|
6644
6651
|
return tslib.__awaiter(this, void 0, void 0, function () {
|
|
6645
|
-
var authInternal, request, signUpResponse,
|
|
6646
|
-
|
|
6647
|
-
|
|
6648
|
-
switch (_b.label) {
|
|
6652
|
+
var authInternal, request, signUpResponse, response, userCredential;
|
|
6653
|
+
return tslib.__generator(this, function (_a) {
|
|
6654
|
+
switch (_a.label) {
|
|
6649
6655
|
case 0:
|
|
6650
6656
|
authInternal = _castAuth(auth);
|
|
6651
6657
|
request = {
|
|
@@ -6654,43 +6660,21 @@ function createUserWithEmailAndPassword(auth, email, password) {
|
|
|
6654
6660
|
password: password,
|
|
6655
6661
|
clientType: "CLIENT_TYPE_WEB" /* RecaptchaClientType.WEB */
|
|
6656
6662
|
};
|
|
6657
|
-
|
|
6658
|
-
return [4 /*yield*/,
|
|
6659
|
-
|
|
6660
|
-
|
|
6661
|
-
signUpResponse = signUp(authInternal, requestWithRecaptcha);
|
|
6662
|
-
return [3 /*break*/, 3];
|
|
6663
|
-
case 2:
|
|
6664
|
-
signUpResponse = signUp(authInternal, request).catch(function (error) { return tslib.__awaiter(_this, void 0, void 0, function () {
|
|
6665
|
-
var requestWithRecaptcha;
|
|
6666
|
-
return tslib.__generator(this, function (_a) {
|
|
6667
|
-
switch (_a.label) {
|
|
6668
|
-
case 0:
|
|
6669
|
-
if (!(error.code === "auth/".concat("missing-recaptcha-token" /* AuthErrorCode.MISSING_RECAPTCHA_TOKEN */))) return [3 /*break*/, 2];
|
|
6670
|
-
console.log('Sign-up is protected by reCAPTCHA for this project. Automatically triggering the reCAPTCHA flow and restarting the sign-up flow.');
|
|
6671
|
-
return [4 /*yield*/, injectRecaptchaFields(authInternal, request, "signUpPassword" /* RecaptchaActionName.SIGN_UP_PASSWORD */)];
|
|
6672
|
-
case 1:
|
|
6673
|
-
requestWithRecaptcha = _a.sent();
|
|
6674
|
-
return [2 /*return*/, signUp(authInternal, requestWithRecaptcha)];
|
|
6675
|
-
case 2: throw error;
|
|
6663
|
+
signUpResponse = handleRecaptchaFlow(authInternal, request, "signUpPassword" /* RecaptchaActionName.SIGN_UP_PASSWORD */, signUp);
|
|
6664
|
+
return [4 /*yield*/, signUpResponse.catch(function (error) {
|
|
6665
|
+
if (error.code === "auth/".concat("password-does-not-meet-requirements" /* AuthErrorCode.PASSWORD_DOES_NOT_MEET_REQUIREMENTS */)) {
|
|
6666
|
+
void recachePasswordPolicy(auth);
|
|
6676
6667
|
}
|
|
6677
|
-
|
|
6678
|
-
|
|
6679
|
-
|
|
6680
|
-
|
|
6681
|
-
if (error.code === "auth/".concat("password-does-not-meet-requirements" /* AuthErrorCode.PASSWORD_DOES_NOT_MEET_REQUIREMENTS */)) {
|
|
6682
|
-
void recachePasswordPolicy(auth);
|
|
6683
|
-
}
|
|
6684
|
-
throw error;
|
|
6685
|
-
})];
|
|
6686
|
-
case 4:
|
|
6687
|
-
response = _b.sent();
|
|
6668
|
+
throw error;
|
|
6669
|
+
})];
|
|
6670
|
+
case 1:
|
|
6671
|
+
response = _a.sent();
|
|
6688
6672
|
return [4 /*yield*/, UserCredentialImpl._fromIdTokenResponse(authInternal, "signIn" /* OperationType.SIGN_IN */, response)];
|
|
6689
|
-
case
|
|
6690
|
-
userCredential =
|
|
6673
|
+
case 2:
|
|
6674
|
+
userCredential = _a.sent();
|
|
6691
6675
|
return [4 /*yield*/, authInternal._updateCurrentUser(userCredential.user)];
|
|
6692
|
-
case
|
|
6693
|
-
|
|
6676
|
+
case 3:
|
|
6677
|
+
_a.sent();
|
|
6694
6678
|
return [2 /*return*/, userCredential];
|
|
6695
6679
|
}
|
|
6696
6680
|
});
|
|
@@ -6779,7 +6763,6 @@ function signInWithEmailAndPassword(auth, email, password) {
|
|
|
6779
6763
|
* @public
|
|
6780
6764
|
*/
|
|
6781
6765
|
function sendSignInLinkToEmail(auth, email, actionCodeSettings) {
|
|
6782
|
-
var _a;
|
|
6783
6766
|
return tslib.__awaiter(this, void 0, void 0, function () {
|
|
6784
6767
|
function setActionCodeSettings(request, actionCodeSettings) {
|
|
6785
6768
|
_assert(actionCodeSettings.handleCodeInApp, authInternal, "argument-error" /* AuthErrorCode.ARGUMENT_ERROR */);
|
|
@@ -6787,10 +6770,9 @@ function sendSignInLinkToEmail(auth, email, actionCodeSettings) {
|
|
|
6787
6770
|
_setActionCodeSettingsOnRequest(authInternal, request, actionCodeSettings);
|
|
6788
6771
|
}
|
|
6789
6772
|
}
|
|
6790
|
-
var authInternal, request
|
|
6791
|
-
|
|
6792
|
-
|
|
6793
|
-
switch (_b.label) {
|
|
6773
|
+
var authInternal, request;
|
|
6774
|
+
return tslib.__generator(this, function (_a) {
|
|
6775
|
+
switch (_a.label) {
|
|
6794
6776
|
case 0:
|
|
6795
6777
|
authInternal = _castAuth(auth);
|
|
6796
6778
|
request = {
|
|
@@ -6798,42 +6780,11 @@ function sendSignInLinkToEmail(auth, email, actionCodeSettings) {
|
|
|
6798
6780
|
email: email,
|
|
6799
6781
|
clientType: "CLIENT_TYPE_WEB" /* RecaptchaClientType.WEB */
|
|
6800
6782
|
};
|
|
6801
|
-
if (!((_a = authInternal._getRecaptchaConfig()) === null || _a === void 0 ? void 0 : _a.emailPasswordEnabled)) return [3 /*break*/, 3];
|
|
6802
|
-
return [4 /*yield*/, injectRecaptchaFields(authInternal, request, "getOobCode" /* RecaptchaActionName.GET_OOB_CODE */, true)];
|
|
6803
|
-
case 1:
|
|
6804
|
-
requestWithRecaptcha = _b.sent();
|
|
6805
|
-
setActionCodeSettings(requestWithRecaptcha, actionCodeSettings);
|
|
6806
|
-
return [4 /*yield*/, sendSignInLinkToEmail$1(authInternal, requestWithRecaptcha)];
|
|
6807
|
-
case 2:
|
|
6808
|
-
_b.sent();
|
|
6809
|
-
return [3 /*break*/, 5];
|
|
6810
|
-
case 3:
|
|
6811
6783
|
setActionCodeSettings(request, actionCodeSettings);
|
|
6812
|
-
return [4 /*yield*/,
|
|
6813
|
-
|
|
6814
|
-
|
|
6815
|
-
|
|
6816
|
-
switch (_a.label) {
|
|
6817
|
-
case 0:
|
|
6818
|
-
if (!(error.code === "auth/".concat("missing-recaptcha-token" /* AuthErrorCode.MISSING_RECAPTCHA_TOKEN */))) return [3 /*break*/, 3];
|
|
6819
|
-
console.log('Email link sign-in is protected by reCAPTCHA for this project. Automatically triggering the reCAPTCHA flow and restarting the sign-in flow.');
|
|
6820
|
-
return [4 /*yield*/, injectRecaptchaFields(authInternal, request, "getOobCode" /* RecaptchaActionName.GET_OOB_CODE */, true)];
|
|
6821
|
-
case 1:
|
|
6822
|
-
requestWithRecaptcha = _a.sent();
|
|
6823
|
-
setActionCodeSettings(requestWithRecaptcha, actionCodeSettings);
|
|
6824
|
-
return [4 /*yield*/, sendSignInLinkToEmail$1(authInternal, requestWithRecaptcha)];
|
|
6825
|
-
case 2:
|
|
6826
|
-
_a.sent();
|
|
6827
|
-
return [3 /*break*/, 4];
|
|
6828
|
-
case 3: return [2 /*return*/, Promise.reject(error)];
|
|
6829
|
-
case 4: return [2 /*return*/];
|
|
6830
|
-
}
|
|
6831
|
-
});
|
|
6832
|
-
}); })];
|
|
6833
|
-
case 4:
|
|
6834
|
-
_b.sent();
|
|
6835
|
-
_b.label = 5;
|
|
6836
|
-
case 5: return [2 /*return*/];
|
|
6784
|
+
return [4 /*yield*/, handleRecaptchaFlow(authInternal, request, "getOobCode" /* RecaptchaActionName.GET_OOB_CODE */, sendSignInLinkToEmail$1)];
|
|
6785
|
+
case 1:
|
|
6786
|
+
_a.sent();
|
|
6787
|
+
return [2 /*return*/];
|
|
6837
6788
|
}
|
|
6838
6789
|
});
|
|
6839
6790
|
});
|
|
@@ -7913,7 +7864,7 @@ function multiFactor(user) {
|
|
|
7913
7864
|
}
|
|
7914
7865
|
|
|
7915
7866
|
var name = "@firebase/auth";
|
|
7916
|
-
var version = "1.3.0-canary.
|
|
7867
|
+
var version = "1.3.0-canary.698eeb67d";
|
|
7917
7868
|
|
|
7918
7869
|
/**
|
|
7919
7870
|
* @license
|
|
@@ -9398,4 +9349,4 @@ exports.useDeviceLanguage = useDeviceLanguage;
|
|
|
9398
9349
|
exports.validatePassword = validatePassword;
|
|
9399
9350
|
exports.verifyBeforeUpdateEmail = verifyBeforeUpdateEmail;
|
|
9400
9351
|
exports.verifyPasswordResetCode = verifyPasswordResetCode;
|
|
9401
|
-
//# sourceMappingURL=index-
|
|
9352
|
+
//# sourceMappingURL=index-95a9f1bd.js.map
|