@firebase/auth 1.6.2 → 1.7.0-canary.42fcdfe4c
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 +60 -10
- package/dist/auth.d.ts +61 -10
- package/dist/browser-cjs/{index-6a907fc6.js → index-fcf80d66.js} +202 -22
- package/dist/browser-cjs/index-fcf80d66.js.map +1 -0
- package/dist/browser-cjs/index.js +2 -2
- package/dist/browser-cjs/internal.js +1 -1
- package/dist/browser-cjs/src/core/auth/auth_impl.d.ts +1 -0
- package/dist/browser-cjs/src/core/index.d.ts +9 -1
- package/dist/browser-cjs/src/core/strategies/anonymous.d.ts +3 -0
- package/dist/browser-cjs/src/core/strategies/credential.d.ts +6 -0
- package/dist/browser-cjs/src/core/strategies/custom_token.d.ts +3 -0
- package/dist/browser-cjs/src/core/strategies/email_and_password.d.ts +7 -0
- package/dist/browser-cjs/src/core/strategies/email_link.d.ts +4 -0
- package/dist/browser-cjs/src/core/user/account_info.d.ts +3 -0
- package/dist/browser-cjs/src/core/user/reload.d.ts +3 -1
- package/dist/browser-cjs/src/core/user/token_manager.d.ts +1 -0
- package/dist/browser-cjs/src/core/user/user_impl.d.ts +7 -1
- package/dist/browser-cjs/src/core/util/assert.d.ts +1 -0
- package/dist/browser-cjs/src/model/public_types.d.ts +7 -0
- package/dist/browser-cjs/src/platform_browser/strategies/phone.d.ts +6 -3
- package/dist/browser-cjs/src/platform_browser/strategies/popup.d.ts +4 -2
- package/dist/browser-cjs/src/platform_browser/strategies/redirect.d.ts +8 -4
- package/dist/browser-cjs/test/helpers/integration/helpers.d.ts +2 -0
- package/dist/browser-cjs/test/integration/flows/firebaseserverapp.test.d.ts +17 -0
- package/dist/cordova/index.js +2 -2
- package/dist/cordova/internal.js +45 -17
- package/dist/cordova/internal.js.map +1 -1
- package/dist/cordova/{popup_redirect-58faecee.js → popup_redirect-65e04583.js} +197 -17
- package/dist/cordova/popup_redirect-65e04583.js.map +1 -0
- package/dist/cordova/src/core/auth/auth_impl.d.ts +1 -0
- package/dist/cordova/src/core/index.d.ts +9 -1
- package/dist/cordova/src/core/strategies/anonymous.d.ts +3 -0
- package/dist/cordova/src/core/strategies/credential.d.ts +6 -0
- package/dist/cordova/src/core/strategies/custom_token.d.ts +3 -0
- package/dist/cordova/src/core/strategies/email_and_password.d.ts +7 -0
- package/dist/cordova/src/core/strategies/email_link.d.ts +4 -0
- package/dist/cordova/src/core/user/account_info.d.ts +3 -0
- package/dist/cordova/src/core/user/reload.d.ts +3 -1
- package/dist/cordova/src/core/user/token_manager.d.ts +1 -0
- package/dist/cordova/src/core/user/user_impl.d.ts +7 -1
- package/dist/cordova/src/core/util/assert.d.ts +1 -0
- package/dist/cordova/src/model/public_types.d.ts +7 -0
- package/dist/cordova/src/platform_browser/strategies/phone.d.ts +6 -3
- package/dist/cordova/src/platform_browser/strategies/popup.d.ts +4 -2
- package/dist/cordova/src/platform_browser/strategies/redirect.d.ts +8 -4
- package/dist/cordova/test/helpers/integration/helpers.d.ts +2 -0
- package/dist/cordova/test/integration/flows/firebaseserverapp.test.d.ts +17 -0
- package/dist/esm2017/{index-e939beb5.js → index-3ad9a9b9.js} +202 -22
- package/dist/esm2017/index-3ad9a9b9.js.map +1 -0
- package/dist/esm2017/index.js +2 -2
- package/dist/esm2017/internal.js +2 -2
- package/dist/esm2017/src/core/auth/auth_impl.d.ts +1 -0
- package/dist/esm2017/src/core/index.d.ts +9 -1
- package/dist/esm2017/src/core/strategies/anonymous.d.ts +3 -0
- package/dist/esm2017/src/core/strategies/credential.d.ts +6 -0
- package/dist/esm2017/src/core/strategies/custom_token.d.ts +3 -0
- package/dist/esm2017/src/core/strategies/email_and_password.d.ts +7 -0
- package/dist/esm2017/src/core/strategies/email_link.d.ts +4 -0
- package/dist/esm2017/src/core/user/account_info.d.ts +3 -0
- package/dist/esm2017/src/core/user/reload.d.ts +3 -1
- package/dist/esm2017/src/core/user/token_manager.d.ts +1 -0
- package/dist/esm2017/src/core/user/user_impl.d.ts +7 -1
- package/dist/esm2017/src/core/util/assert.d.ts +1 -0
- package/dist/esm2017/src/model/public_types.d.ts +7 -0
- package/dist/esm2017/src/platform_browser/strategies/phone.d.ts +6 -3
- package/dist/esm2017/src/platform_browser/strategies/popup.d.ts +4 -2
- package/dist/esm2017/src/platform_browser/strategies/redirect.d.ts +8 -4
- package/dist/esm2017/test/helpers/integration/helpers.d.ts +2 -0
- package/dist/esm2017/test/integration/flows/firebaseserverapp.test.d.ts +17 -0
- package/dist/esm5/{index-3bd54529.js → index-dcfb76ea.js} +238 -30
- package/dist/esm5/index-dcfb76ea.js.map +1 -0
- package/dist/esm5/index.js +2 -2
- package/dist/esm5/internal.js +2 -2
- package/dist/esm5/src/core/auth/auth_impl.d.ts +1 -0
- package/dist/esm5/src/core/index.d.ts +9 -1
- package/dist/esm5/src/core/strategies/anonymous.d.ts +3 -0
- package/dist/esm5/src/core/strategies/credential.d.ts +6 -0
- package/dist/esm5/src/core/strategies/custom_token.d.ts +3 -0
- package/dist/esm5/src/core/strategies/email_and_password.d.ts +7 -0
- package/dist/esm5/src/core/strategies/email_link.d.ts +4 -0
- package/dist/esm5/src/core/user/account_info.d.ts +3 -0
- package/dist/esm5/src/core/user/reload.d.ts +3 -1
- package/dist/esm5/src/core/user/token_manager.d.ts +1 -0
- package/dist/esm5/src/core/user/user_impl.d.ts +7 -1
- package/dist/esm5/src/core/util/assert.d.ts +1 -0
- package/dist/esm5/src/model/public_types.d.ts +7 -0
- package/dist/esm5/src/platform_browser/strategies/phone.d.ts +6 -3
- package/dist/esm5/src/platform_browser/strategies/popup.d.ts +4 -2
- package/dist/esm5/src/platform_browser/strategies/redirect.d.ts +8 -4
- package/dist/esm5/test/helpers/integration/helpers.d.ts +2 -0
- package/dist/esm5/test/integration/flows/firebaseserverapp.test.d.ts +17 -0
- package/dist/index.webworker.esm5.js +178 -11
- package/dist/index.webworker.esm5.js.map +1 -1
- package/dist/node/index.js +2 -2
- package/dist/node/internal.js +4 -1
- package/dist/node/internal.js.map +1 -1
- package/dist/node/src/core/auth/auth_impl.d.ts +1 -0
- package/dist/node/src/core/index.d.ts +9 -1
- package/dist/node/src/core/strategies/anonymous.d.ts +3 -0
- package/dist/node/src/core/strategies/credential.d.ts +6 -0
- package/dist/node/src/core/strategies/custom_token.d.ts +3 -0
- package/dist/node/src/core/strategies/email_and_password.d.ts +7 -0
- package/dist/node/src/core/strategies/email_link.d.ts +4 -0
- package/dist/node/src/core/user/account_info.d.ts +3 -0
- package/dist/node/src/core/user/reload.d.ts +3 -1
- package/dist/node/src/core/user/token_manager.d.ts +1 -0
- package/dist/node/src/core/user/user_impl.d.ts +7 -1
- package/dist/node/src/core/util/assert.d.ts +1 -0
- package/dist/node/src/model/public_types.d.ts +7 -0
- package/dist/node/src/platform_browser/strategies/phone.d.ts +6 -3
- package/dist/node/src/platform_browser/strategies/popup.d.ts +4 -2
- package/dist/node/src/platform_browser/strategies/redirect.d.ts +8 -4
- package/dist/node/test/helpers/integration/helpers.d.ts +2 -0
- package/dist/node/test/integration/flows/firebaseserverapp.test.d.ts +17 -0
- package/dist/node/{totp-7d693c11.js → totp-fbe187a4.js} +180 -12
- package/dist/node/totp-fbe187a4.js.map +1 -0
- package/dist/node-esm/index.js +2 -2
- package/dist/node-esm/internal.js +6 -3
- package/dist/node-esm/internal.js.map +1 -1
- package/dist/node-esm/src/core/auth/auth_impl.d.ts +1 -0
- package/dist/node-esm/src/core/index.d.ts +9 -1
- package/dist/node-esm/src/core/strategies/anonymous.d.ts +3 -0
- package/dist/node-esm/src/core/strategies/credential.d.ts +6 -0
- package/dist/node-esm/src/core/strategies/custom_token.d.ts +3 -0
- package/dist/node-esm/src/core/strategies/email_and_password.d.ts +7 -0
- package/dist/node-esm/src/core/strategies/email_link.d.ts +4 -0
- package/dist/node-esm/src/core/user/account_info.d.ts +3 -0
- package/dist/node-esm/src/core/user/reload.d.ts +3 -1
- package/dist/node-esm/src/core/user/token_manager.d.ts +1 -0
- package/dist/node-esm/src/core/user/user_impl.d.ts +7 -1
- package/dist/node-esm/src/core/util/assert.d.ts +1 -0
- package/dist/node-esm/src/model/public_types.d.ts +7 -0
- package/dist/node-esm/src/platform_browser/strategies/phone.d.ts +6 -3
- package/dist/node-esm/src/platform_browser/strategies/popup.d.ts +4 -2
- package/dist/node-esm/src/platform_browser/strategies/redirect.d.ts +8 -4
- package/dist/node-esm/test/helpers/integration/helpers.d.ts +2 -0
- package/dist/node-esm/test/integration/flows/firebaseserverapp.test.d.ts +17 -0
- package/dist/node-esm/{totp-56a8eeec.js → totp-4d1c9ab1.js} +148 -7
- package/dist/node-esm/totp-4d1c9ab1.js.map +1 -0
- package/dist/rn/{index-8ee80bdc.js → index-bbdaa838.js} +199 -16
- package/dist/rn/index-bbdaa838.js.map +1 -0
- package/dist/rn/index.js +1 -1
- package/dist/rn/internal.js +41 -15
- package/dist/rn/internal.js.map +1 -1
- package/dist/rn/src/core/auth/auth_impl.d.ts +1 -0
- package/dist/rn/src/core/index.d.ts +9 -1
- package/dist/rn/src/core/strategies/anonymous.d.ts +3 -0
- package/dist/rn/src/core/strategies/credential.d.ts +6 -0
- package/dist/rn/src/core/strategies/custom_token.d.ts +3 -0
- package/dist/rn/src/core/strategies/email_and_password.d.ts +7 -0
- package/dist/rn/src/core/strategies/email_link.d.ts +4 -0
- package/dist/rn/src/core/user/account_info.d.ts +3 -0
- package/dist/rn/src/core/user/reload.d.ts +3 -1
- package/dist/rn/src/core/user/token_manager.d.ts +1 -0
- package/dist/rn/src/core/user/user_impl.d.ts +7 -1
- package/dist/rn/src/core/util/assert.d.ts +1 -0
- package/dist/rn/src/model/public_types.d.ts +7 -0
- package/dist/rn/src/platform_browser/strategies/phone.d.ts +6 -3
- package/dist/rn/src/platform_browser/strategies/popup.d.ts +4 -2
- package/dist/rn/src/platform_browser/strategies/redirect.d.ts +8 -4
- package/dist/rn/test/helpers/integration/helpers.d.ts +2 -0
- package/dist/rn/test/integration/flows/firebaseserverapp.test.d.ts +17 -0
- package/dist/src/core/auth/auth_impl.d.ts +1 -0
- package/dist/src/core/index.d.ts +9 -1
- package/dist/src/core/strategies/anonymous.d.ts +3 -0
- package/dist/src/core/strategies/credential.d.ts +6 -0
- package/dist/src/core/strategies/custom_token.d.ts +3 -0
- package/dist/src/core/strategies/email_and_password.d.ts +7 -0
- package/dist/src/core/strategies/email_link.d.ts +4 -0
- package/dist/src/core/user/account_info.d.ts +3 -0
- package/dist/src/core/user/reload.d.ts +3 -1
- package/dist/src/core/user/token_manager.d.ts +1 -0
- package/dist/src/core/user/user_impl.d.ts +7 -1
- package/dist/src/core/util/assert.d.ts +1 -0
- package/dist/src/model/public_types.d.ts +7 -0
- package/dist/src/platform_browser/strategies/phone.d.ts +6 -3
- package/dist/src/platform_browser/strategies/popup.d.ts +4 -2
- package/dist/src/platform_browser/strategies/redirect.d.ts +8 -4
- package/dist/test/helpers/integration/helpers.d.ts +2 -0
- package/dist/test/integration/flows/firebaseserverapp.test.d.ts +17 -0
- package/dist/web-extension-cjs/index.js +1 -1
- package/dist/web-extension-cjs/internal.js +57 -18
- package/dist/web-extension-cjs/internal.js.map +1 -1
- package/dist/web-extension-cjs/{register-9438f377.js → register-4ce22251.js} +148 -6
- package/dist/web-extension-cjs/register-4ce22251.js.map +1 -0
- package/dist/web-extension-cjs/src/core/auth/auth_impl.d.ts +1 -0
- package/dist/web-extension-cjs/src/core/index.d.ts +9 -1
- package/dist/web-extension-cjs/src/core/strategies/anonymous.d.ts +3 -0
- package/dist/web-extension-cjs/src/core/strategies/credential.d.ts +6 -0
- package/dist/web-extension-cjs/src/core/strategies/custom_token.d.ts +3 -0
- package/dist/web-extension-cjs/src/core/strategies/email_and_password.d.ts +7 -0
- package/dist/web-extension-cjs/src/core/strategies/email_link.d.ts +4 -0
- package/dist/web-extension-cjs/src/core/user/account_info.d.ts +3 -0
- package/dist/web-extension-cjs/src/core/user/reload.d.ts +3 -1
- package/dist/web-extension-cjs/src/core/user/token_manager.d.ts +1 -0
- package/dist/web-extension-cjs/src/core/user/user_impl.d.ts +7 -1
- package/dist/web-extension-cjs/src/core/util/assert.d.ts +1 -0
- package/dist/web-extension-cjs/src/model/public_types.d.ts +7 -0
- package/dist/web-extension-cjs/src/platform_browser/strategies/phone.d.ts +6 -3
- package/dist/web-extension-cjs/src/platform_browser/strategies/popup.d.ts +4 -2
- package/dist/web-extension-cjs/src/platform_browser/strategies/redirect.d.ts +8 -4
- package/dist/web-extension-cjs/test/helpers/integration/helpers.d.ts +2 -0
- package/dist/web-extension-cjs/test/integration/flows/firebaseserverapp.test.d.ts +17 -0
- package/dist/web-extension-esm2017/index.js +2 -2
- package/dist/web-extension-esm2017/internal.js +58 -19
- package/dist/web-extension-esm2017/internal.js.map +1 -1
- package/dist/web-extension-esm2017/{register-7b89e556.js → register-3473374b.js} +148 -7
- package/dist/web-extension-esm2017/register-3473374b.js.map +1 -0
- package/dist/web-extension-esm2017/src/core/auth/auth_impl.d.ts +1 -0
- package/dist/web-extension-esm2017/src/core/index.d.ts +9 -1
- package/dist/web-extension-esm2017/src/core/strategies/anonymous.d.ts +3 -0
- package/dist/web-extension-esm2017/src/core/strategies/credential.d.ts +6 -0
- package/dist/web-extension-esm2017/src/core/strategies/custom_token.d.ts +3 -0
- package/dist/web-extension-esm2017/src/core/strategies/email_and_password.d.ts +7 -0
- package/dist/web-extension-esm2017/src/core/strategies/email_link.d.ts +4 -0
- package/dist/web-extension-esm2017/src/core/user/account_info.d.ts +3 -0
- package/dist/web-extension-esm2017/src/core/user/reload.d.ts +3 -1
- package/dist/web-extension-esm2017/src/core/user/token_manager.d.ts +1 -0
- package/dist/web-extension-esm2017/src/core/user/user_impl.d.ts +7 -1
- package/dist/web-extension-esm2017/src/core/util/assert.d.ts +1 -0
- package/dist/web-extension-esm2017/src/model/public_types.d.ts +7 -0
- package/dist/web-extension-esm2017/src/platform_browser/strategies/phone.d.ts +6 -3
- package/dist/web-extension-esm2017/src/platform_browser/strategies/popup.d.ts +4 -2
- package/dist/web-extension-esm2017/src/platform_browser/strategies/redirect.d.ts +8 -4
- package/dist/web-extension-esm2017/test/helpers/integration/helpers.d.ts +2 -0
- package/dist/web-extension-esm2017/test/integration/flows/firebaseserverapp.test.d.ts +17 -0
- package/package.json +7 -7
- package/dist/browser-cjs/index-6a907fc6.js.map +0 -1
- package/dist/cordova/popup_redirect-58faecee.js.map +0 -1
- package/dist/esm2017/index-e939beb5.js.map +0 -1
- package/dist/esm5/index-3bd54529.js.map +0 -1
- package/dist/node/totp-7d693c11.js.map +0 -1
- package/dist/node-esm/totp-56a8eeec.js.map +0 -1
- package/dist/rn/index-8ee80bdc.js.map +0 -1
- package/dist/web-extension-cjs/register-9438f377.js.map +0 -1
- package/dist/web-extension-esm2017/register-7b89e556.js.map +0 -1
|
@@ -14,9 +14,11 @@
|
|
|
14
14
|
* See the License for the specific language governing permissions and
|
|
15
15
|
* limitations under the License.
|
|
16
16
|
*/
|
|
17
|
+
import { FirebaseServerApp } from '@firebase/app';
|
|
17
18
|
import { Auth } from '@firebase/auth';
|
|
18
19
|
export declare function randomEmail(): string;
|
|
19
20
|
export declare function getTestInstance(requireEmulator?: boolean): Auth;
|
|
21
|
+
export declare function getTestInstanceForServerApp(serverApp: FirebaseServerApp): Auth;
|
|
20
22
|
export declare function cleanUpTestInstance(auth: Auth): Promise<void>;
|
|
21
23
|
export declare function getTotpCode(sharedSecretKey: string, periodSec: number, verificationCodeLength: number, timestamp: Date): string;
|
|
22
24
|
export declare const email = "totpuser-donotdelete@test.com";
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2024 Google LLC
|
|
4
|
+
*
|
|
5
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
+
* you may not use this file except in compliance with the License.
|
|
7
|
+
* You may obtain a copy of the License at
|
|
8
|
+
*
|
|
9
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
*
|
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
* See the License for the specific language governing permissions and
|
|
15
|
+
* limitations under the License.
|
|
16
|
+
*/
|
|
17
|
+
export {};
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var register = require('./register-
|
|
5
|
+
var register = require('./register-4ce22251.js');
|
|
6
6
|
var app = require('@firebase/app');
|
|
7
7
|
var util = require('@firebase/util');
|
|
8
8
|
require('tslib');
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var register = require('./register-
|
|
5
|
+
var register = require('./register-4ce22251.js');
|
|
6
6
|
var util = require('@firebase/util');
|
|
7
|
-
require('tslib');
|
|
8
7
|
var app = require('@firebase/app');
|
|
8
|
+
require('tslib');
|
|
9
9
|
require('@firebase/component');
|
|
10
10
|
require('@firebase/logger');
|
|
11
11
|
|
|
@@ -897,7 +897,8 @@ class ConfirmationResultImpl {
|
|
|
897
897
|
* {@link RecaptchaVerifier} (like React Native), but you need to use a
|
|
898
898
|
* third-party {@link ApplicationVerifier} implementation.
|
|
899
899
|
*
|
|
900
|
-
* This method does not work in a Node.js environment
|
|
900
|
+
* This method does not work in a Node.js environment or with {@link Auth} instances created with a
|
|
901
|
+
* {@link @firebase/app#FirebaseServerApp}.
|
|
901
902
|
*
|
|
902
903
|
* @example
|
|
903
904
|
* ```javascript
|
|
@@ -915,6 +916,9 @@ class ConfirmationResultImpl {
|
|
|
915
916
|
* @public
|
|
916
917
|
*/
|
|
917
918
|
async function signInWithPhoneNumber(auth, phoneNumber, appVerifier) {
|
|
919
|
+
if (app._isFirebaseServerApp(auth.app)) {
|
|
920
|
+
return Promise.reject(register._serverAppCurrentUserOperationNotSupportedError(auth));
|
|
921
|
+
}
|
|
918
922
|
const authInternal = register._castAuth(auth);
|
|
919
923
|
const verificationId = await _verifyPhoneNumber(authInternal, phoneNumber, util.getModularInstance(appVerifier));
|
|
920
924
|
return new ConfirmationResultImpl(verificationId, cred => register.signInWithCredential(authInternal, cred));
|
|
@@ -943,7 +947,8 @@ async function linkWithPhoneNumber(user, phoneNumber, appVerifier) {
|
|
|
943
947
|
* @remarks
|
|
944
948
|
* Use before operations such as {@link updatePassword} that require tokens from recent sign-in attempts.
|
|
945
949
|
*
|
|
946
|
-
* This method does not work in a Node.js environment
|
|
950
|
+
* This method does not work in a Node.js environment or on any {@link User} signed in by
|
|
951
|
+
* {@link Auth} instances created with a {@link @firebase/app#FirebaseServerApp}.
|
|
947
952
|
*
|
|
948
953
|
* @param user - The user.
|
|
949
954
|
* @param phoneNumber - The user's phone number in E.164 format (e.g. +16505550101).
|
|
@@ -953,6 +958,9 @@ async function linkWithPhoneNumber(user, phoneNumber, appVerifier) {
|
|
|
953
958
|
*/
|
|
954
959
|
async function reauthenticateWithPhoneNumber(user, phoneNumber, appVerifier) {
|
|
955
960
|
const userInternal = util.getModularInstance(user);
|
|
961
|
+
if (app._isFirebaseServerApp(userInternal.auth.app)) {
|
|
962
|
+
return Promise.reject(register._serverAppCurrentUserOperationNotSupportedError(userInternal.auth));
|
|
963
|
+
}
|
|
956
964
|
const verificationId = await _verifyPhoneNumber(userInternal.auth, phoneNumber, util.getModularInstance(appVerifier));
|
|
957
965
|
return new ConfirmationResultImpl(verificationId, cred => register.reauthenticateWithCredential(userInternal, cred));
|
|
958
966
|
}
|
|
@@ -1019,7 +1027,8 @@ async function _verifyPhoneNumber(auth, options, verifier) {
|
|
|
1019
1027
|
* Updates the user's phone number.
|
|
1020
1028
|
*
|
|
1021
1029
|
* @remarks
|
|
1022
|
-
* This method does not work in a Node.js environment
|
|
1030
|
+
* This method does not work in a Node.js environment or on any {@link User} signed in by
|
|
1031
|
+
* {@link Auth} instances created with a {@link @firebase/app#FirebaseServerApp}.
|
|
1023
1032
|
*
|
|
1024
1033
|
* @example
|
|
1025
1034
|
* ```
|
|
@@ -1038,7 +1047,11 @@ async function _verifyPhoneNumber(auth, options, verifier) {
|
|
|
1038
1047
|
* @public
|
|
1039
1048
|
*/
|
|
1040
1049
|
async function updatePhoneNumber(user, credential) {
|
|
1041
|
-
|
|
1050
|
+
const userInternal = util.getModularInstance(user);
|
|
1051
|
+
if (app._isFirebaseServerApp(userInternal.auth.app)) {
|
|
1052
|
+
return Promise.reject(register._serverAppCurrentUserOperationNotSupportedError(userInternal.auth));
|
|
1053
|
+
}
|
|
1054
|
+
await register._link(userInternal, credential);
|
|
1042
1055
|
}
|
|
1043
1056
|
|
|
1044
1057
|
/**
|
|
@@ -1424,7 +1437,8 @@ const _POLL_WINDOW_CLOSE_TIMEOUT = new register.Delay(2000, 10000);
|
|
|
1424
1437
|
* If succeeds, returns the signed in user along with the provider's credential. If sign in was
|
|
1425
1438
|
* unsuccessful, returns an error object containing additional information about the error.
|
|
1426
1439
|
*
|
|
1427
|
-
* This method does not work in a Node.js environment
|
|
1440
|
+
* This method does not work in a Node.js environment or with {@link Auth} instances created with a
|
|
1441
|
+
* {@link @firebase/app#FirebaseServerApp}.
|
|
1428
1442
|
*
|
|
1429
1443
|
* @example
|
|
1430
1444
|
* ```javascript
|
|
@@ -1448,6 +1462,9 @@ const _POLL_WINDOW_CLOSE_TIMEOUT = new register.Delay(2000, 10000);
|
|
|
1448
1462
|
* @public
|
|
1449
1463
|
*/
|
|
1450
1464
|
async function signInWithPopup(auth, provider, resolver) {
|
|
1465
|
+
if (app._isFirebaseServerApp(auth.app)) {
|
|
1466
|
+
return Promise.reject(register._createError(auth, "operation-not-supported-in-this-environment" /* AuthErrorCode.OPERATION_NOT_SUPPORTED */));
|
|
1467
|
+
}
|
|
1451
1468
|
const authInternal = register._castAuth(auth);
|
|
1452
1469
|
register._assertInstanceOf(auth, provider, register.FederatedAuthProvider);
|
|
1453
1470
|
const resolverInternal = _withDefaultResolver(authInternal, resolver);
|
|
@@ -1462,7 +1479,8 @@ async function signInWithPopup(auth, provider, resolver) {
|
|
|
1462
1479
|
* If the reauthentication is successful, the returned result will contain the user and the
|
|
1463
1480
|
* provider's credential.
|
|
1464
1481
|
*
|
|
1465
|
-
* This method does not work in a Node.js environment
|
|
1482
|
+
* This method does not work in a Node.js environment or on any {@link User} signed in by
|
|
1483
|
+
* {@link Auth} instances created with a {@link @firebase/app#FirebaseServerApp}.
|
|
1466
1484
|
*
|
|
1467
1485
|
* @example
|
|
1468
1486
|
* ```javascript
|
|
@@ -1483,6 +1501,9 @@ async function signInWithPopup(auth, provider, resolver) {
|
|
|
1483
1501
|
*/
|
|
1484
1502
|
async function reauthenticateWithPopup(user, provider, resolver) {
|
|
1485
1503
|
const userInternal = util.getModularInstance(user);
|
|
1504
|
+
if (app._isFirebaseServerApp(userInternal.auth.app)) {
|
|
1505
|
+
return Promise.reject(register._createError(userInternal.auth, "operation-not-supported-in-this-environment" /* AuthErrorCode.OPERATION_NOT_SUPPORTED */));
|
|
1506
|
+
}
|
|
1486
1507
|
register._assertInstanceOf(userInternal.auth, provider, register.FederatedAuthProvider);
|
|
1487
1508
|
const resolverInternal = _withDefaultResolver(userInternal.auth, resolver);
|
|
1488
1509
|
const action = new PopupOperation(userInternal.auth, "reauthViaPopup" /* AuthEventType.REAUTH_VIA_POPUP */, provider, resolverInternal, userInternal);
|
|
@@ -1734,7 +1755,8 @@ function pendingRedirectKey(auth) {
|
|
|
1734
1755
|
* Follow the {@link https://firebase.google.com/docs/auth/web/redirect-best-practices
|
|
1735
1756
|
* | best practices} when using {@link signInWithRedirect}.
|
|
1736
1757
|
*
|
|
1737
|
-
* This method does not work in a Node.js environment
|
|
1758
|
+
* This method does not work in a Node.js environment or with {@link Auth} instances created with a
|
|
1759
|
+
* {@link @firebase/app#FirebaseServerApp}.
|
|
1738
1760
|
*
|
|
1739
1761
|
* @example
|
|
1740
1762
|
* ```javascript
|
|
@@ -1773,6 +1795,9 @@ function signInWithRedirect(auth, provider, resolver) {
|
|
|
1773
1795
|
return _signInWithRedirect(auth, provider, resolver);
|
|
1774
1796
|
}
|
|
1775
1797
|
async function _signInWithRedirect(auth, provider, resolver) {
|
|
1798
|
+
if (app._isFirebaseServerApp(auth.app)) {
|
|
1799
|
+
return Promise.reject(register._serverAppCurrentUserOperationNotSupportedError(auth));
|
|
1800
|
+
}
|
|
1776
1801
|
const authInternal = register._castAuth(auth);
|
|
1777
1802
|
register._assertInstanceOf(auth, provider, register.FederatedAuthProvider);
|
|
1778
1803
|
// Wait for auth initialization to complete, this will process pending redirects and clear the
|
|
@@ -1790,7 +1815,8 @@ async function _signInWithRedirect(auth, provider, resolver) {
|
|
|
1790
1815
|
* Follow the {@link https://firebase.google.com/docs/auth/web/redirect-best-practices
|
|
1791
1816
|
* | best practices} when using {@link reauthenticateWithRedirect}.
|
|
1792
1817
|
*
|
|
1793
|
-
* This method does not work in a Node.js environment
|
|
1818
|
+
* This method does not work in a Node.js environment or with {@link Auth} instances
|
|
1819
|
+
* created with a {@link @firebase/app#FirebaseServerApp}.
|
|
1794
1820
|
*
|
|
1795
1821
|
* @example
|
|
1796
1822
|
* ```javascript
|
|
@@ -1823,6 +1849,9 @@ function reauthenticateWithRedirect(user, provider, resolver) {
|
|
|
1823
1849
|
async function _reauthenticateWithRedirect(user, provider, resolver) {
|
|
1824
1850
|
const userInternal = util.getModularInstance(user);
|
|
1825
1851
|
register._assertInstanceOf(userInternal.auth, provider, register.FederatedAuthProvider);
|
|
1852
|
+
if (app._isFirebaseServerApp(userInternal.auth.app)) {
|
|
1853
|
+
return Promise.reject(register._serverAppCurrentUserOperationNotSupportedError(userInternal.auth));
|
|
1854
|
+
}
|
|
1826
1855
|
// Wait for auth initialization to complete, this will process pending redirects and clear the
|
|
1827
1856
|
// PENDING_REDIRECT_KEY in persistence. This should be completed before starting a new
|
|
1828
1857
|
// redirect and creating a PENDING_REDIRECT_KEY entry.
|
|
@@ -1840,7 +1869,8 @@ async function _reauthenticateWithRedirect(user, provider, resolver) {
|
|
|
1840
1869
|
* Follow the {@link https://firebase.google.com/docs/auth/web/redirect-best-practices
|
|
1841
1870
|
* | best practices} when using {@link linkWithRedirect}.
|
|
1842
1871
|
*
|
|
1843
|
-
* This method does not work in a Node.js environment
|
|
1872
|
+
* This method does not work in a Node.js environment or with {@link Auth} instances
|
|
1873
|
+
* created with a {@link @firebase/app#FirebaseServerApp}.
|
|
1844
1874
|
*
|
|
1845
1875
|
* @example
|
|
1846
1876
|
* ```javascript
|
|
@@ -1887,7 +1917,8 @@ async function _linkWithRedirect(user, provider, resolver) {
|
|
|
1887
1917
|
* If sign-in succeeded, returns the signed in user. If sign-in was unsuccessful, fails with an
|
|
1888
1918
|
* error. If no redirect operation was called, returns `null`.
|
|
1889
1919
|
*
|
|
1890
|
-
* This method does not work in a Node.js environment
|
|
1920
|
+
* This method does not work in a Node.js environment or with {@link Auth} instances created with a
|
|
1921
|
+
* {@link @firebase/app#FirebaseServerApp}.
|
|
1891
1922
|
*
|
|
1892
1923
|
* @example
|
|
1893
1924
|
* ```javascript
|
|
@@ -1925,6 +1956,9 @@ async function getRedirectResult(auth, resolver) {
|
|
|
1925
1956
|
return _getRedirectResult(auth, resolver, false);
|
|
1926
1957
|
}
|
|
1927
1958
|
async function _getRedirectResult(auth, resolverExtern, bypassAuthState = false) {
|
|
1959
|
+
if (app._isFirebaseServerApp(auth.app)) {
|
|
1960
|
+
return Promise.reject(register._serverAppCurrentUserOperationNotSupportedError(auth));
|
|
1961
|
+
}
|
|
1928
1962
|
const authInternal = register._castAuth(auth);
|
|
1929
1963
|
const resolver = _withDefaultResolver(authInternal, resolverExtern);
|
|
1930
1964
|
const action = new RedirectAction(authInternal, resolver, bypassAuthState);
|
|
@@ -2751,12 +2785,17 @@ function getAuth(app$1 = app.getApp()) {
|
|
|
2751
2785
|
]
|
|
2752
2786
|
});
|
|
2753
2787
|
const authTokenSyncPath = util.getExperimentalSetting('authTokenSyncURL');
|
|
2754
|
-
//
|
|
2755
|
-
|
|
2756
|
-
|
|
2757
|
-
|
|
2758
|
-
|
|
2759
|
-
|
|
2788
|
+
// Only do the Cookie exchange in a secure context
|
|
2789
|
+
if (authTokenSyncPath &&
|
|
2790
|
+
typeof isSecureContext === 'boolean' &&
|
|
2791
|
+
isSecureContext) {
|
|
2792
|
+
// Don't allow urls (XSS possibility), only paths on the same domain
|
|
2793
|
+
const authTokenSyncUrl = new URL(authTokenSyncPath, location.origin);
|
|
2794
|
+
if (location.origin === authTokenSyncUrl.origin) {
|
|
2795
|
+
const mintCookie = mintCookieFactory(authTokenSyncUrl.toString());
|
|
2796
|
+
register.beforeAuthStateChanged(auth, mintCookie, () => mintCookie(auth.currentUser));
|
|
2797
|
+
register.onIdTokenChanged(auth, user => mintCookie(user));
|
|
2798
|
+
}
|
|
2760
2799
|
}
|
|
2761
2800
|
const authEmulatorHost = util.getDefaultEmulatorHost('auth');
|
|
2762
2801
|
if (authEmulatorHost) {
|