diff --git a/packages-exp/analytics-exp/src/api.ts b/packages-exp/analytics-exp/src/api.ts index 7816668651..e99332aaca 100644 --- a/packages-exp/analytics-exp/src/api.ts +++ b/packages-exp/analytics-exp/src/api.ts @@ -17,7 +17,7 @@ * limitations under the License. */ -import { _getProvider, FirebaseApp } from '@firebase/app-exp'; +import { _getProvider, FirebaseApp, getApp } from '@firebase/app-exp'; import { Analytics, AnalyticsCallOptions, @@ -63,7 +63,7 @@ declare module '@firebase/component' { * * @param app - The FirebaseApp to use. */ -export function getAnalytics(app: FirebaseApp): Analytics { +export function getAnalytics(app: FirebaseApp = getApp()): Analytics { app = getModularInstance(app); // Dependencies const analyticsProvider: Provider<'analytics-exp'> = _getProvider( diff --git a/packages-exp/auth-exp/index.ts b/packages-exp/auth-exp/index.ts index 3d3cca3f8d..2f985384ab 100644 --- a/packages-exp/auth-exp/index.ts +++ b/packages-exp/auth-exp/index.ts @@ -15,7 +15,7 @@ * limitations under the License. */ -import { FirebaseApp, _getProvider } from '@firebase/app-exp'; +import { FirebaseApp, getApp, _getProvider } from '@firebase/app-exp'; import { initializeAuth } from './src'; import { registerAuth } from './src/core/auth/register'; @@ -118,7 +118,7 @@ export { PhoneMultiFactorGenerator } from './src/platform_browser/mfa/assertions * * @public */ -export function getAuth(app: FirebaseApp): Auth { +export function getAuth(app: FirebaseApp = getApp()): Auth { const provider = _getProvider(app, 'auth-exp'); if (provider.isInitialized()) { diff --git a/packages-exp/functions-exp/src/api.ts b/packages-exp/functions-exp/src/api.ts index f2f8cebdc4..70b9869696 100644 --- a/packages-exp/functions-exp/src/api.ts +++ b/packages-exp/functions-exp/src/api.ts @@ -15,7 +15,7 @@ * limitations under the License. */ -import { _getProvider, FirebaseApp } from '@firebase/app-exp'; +import { _getProvider, FirebaseApp, getApp } from '@firebase/app-exp'; import { FUNCTIONS_TYPE } from './constants'; import { Provider } from '@firebase/component'; @@ -39,7 +39,7 @@ export * from './public-types'; * @public */ export function getFunctions( - app: FirebaseApp, + app: FirebaseApp = getApp(), regionOrCustomDomain: string = DEFAULT_REGION ): Functions { // Dependencies diff --git a/packages-exp/installations-exp/src/api/get-installations.ts b/packages-exp/installations-exp/src/api/get-installations.ts index 9a6b0c95f1..b36ef6f3a9 100644 --- a/packages-exp/installations-exp/src/api/get-installations.ts +++ b/packages-exp/installations-exp/src/api/get-installations.ts @@ -15,7 +15,7 @@ * limitations under the License. */ -import { FirebaseApp, _getProvider } from '@firebase/app-exp'; +import { FirebaseApp, getApp, _getProvider } from '@firebase/app-exp'; import { FirebaseInstallations } from '../interfaces/public-types'; /** @@ -23,7 +23,9 @@ import { FirebaseInstallations } from '../interfaces/public-types'; * * @public */ -export function getInstallations(app: FirebaseApp): FirebaseInstallations { +export function getInstallations( + app: FirebaseApp = getApp() +): FirebaseInstallations { const installationsImpl = _getProvider( app, 'installations-exp' diff --git a/packages-exp/messaging-exp/src/api.ts b/packages-exp/messaging-exp/src/api.ts index c33a9f60a1..e65f31a2f2 100644 --- a/packages-exp/messaging-exp/src/api.ts +++ b/packages-exp/messaging-exp/src/api.ts @@ -26,7 +26,7 @@ import { import { MessagingService } from './messaging-service'; import { Provider } from '@firebase/component'; import { deleteToken as _deleteToken } from './api/deleteToken'; -import { _getProvider, FirebaseApp } from '@firebase/app-exp'; +import { _getProvider, FirebaseApp, getApp } from '@firebase/app-exp'; import { getToken as _getToken } from './api/getToken'; import { onBackgroundMessage as _onBackgroundMessage } from './api/onBackgroundMessage'; import { onMessage as _onMessage } from './api/onMessage'; @@ -39,7 +39,7 @@ import { getModularInstance } from '@firebase/util'; * * @public */ -export function getMessaging(app: FirebaseApp): FirebaseMessaging { +export function getMessaging(app: FirebaseApp = getApp()): FirebaseMessaging { app = getModularInstance(app); const messagingProvider: Provider<'messaging-exp'> = _getProvider( app, diff --git a/packages-exp/performance-exp/src/index.ts b/packages-exp/performance-exp/src/index.ts index 1a5ae0c39f..8e951015e7 100644 --- a/packages-exp/performance-exp/src/index.ts +++ b/packages-exp/performance-exp/src/index.ts @@ -27,7 +27,8 @@ import { _registerComponent, _getProvider, registerVersion, - FirebaseApp + FirebaseApp, + getApp } from '@firebase/app-exp'; import { InstanceFactory, @@ -47,7 +48,9 @@ const DEFAULT_ENTRY_NAME = '[DEFAULT]'; * @param app - The FirebaseApp to use. * @public */ -export function getPerformance(app: FirebaseApp): FirebasePerformance { +export function getPerformance( + app: FirebaseApp = getApp() +): FirebasePerformance { app = getModularInstance(app); const provider = _getProvider(app, 'performance-exp'); const perfInstance = provider.getImmediate() as PerformanceController; diff --git a/packages-exp/remote-config-exp/src/api.ts b/packages-exp/remote-config-exp/src/api.ts index e070302cd4..668f4c5b52 100644 --- a/packages-exp/remote-config-exp/src/api.ts +++ b/packages-exp/remote-config-exp/src/api.ts @@ -15,7 +15,7 @@ * limitations under the License. */ -import { _getProvider, FirebaseApp } from '@firebase/app-exp'; +import { _getProvider, FirebaseApp, getApp } from '@firebase/app-exp'; import { LogLevel as RemoteConfigLogLevel, RemoteConfig, @@ -36,7 +36,7 @@ import { getModularInstance } from '@firebase/util'; * * @public */ -export function getRemoteConfig(app: FirebaseApp): RemoteConfig { +export function getRemoteConfig(app: FirebaseApp = getApp()): RemoteConfig { app = getModularInstance(app); const rcProvider = _getProvider(app, RC_COMPONENT_NAME); return rcProvider.getImmediate(); diff --git a/packages/database/src/exp/Database.ts b/packages/database/src/exp/Database.ts index 4a1a62c359..3a36a361f2 100644 --- a/packages/database/src/exp/Database.ts +++ b/packages/database/src/exp/Database.ts @@ -15,8 +15,13 @@ * limitations under the License. */ -// eslint-disable-next-line import/no-extraneous-dependencies -import { _FirebaseService, _getProvider, FirebaseApp } from '@firebase/app-exp'; +import { + _FirebaseService, + _getProvider, + FirebaseApp, + getApp + // eslint-disable-next-line import/no-extraneous-dependencies +} from '@firebase/app-exp'; import { FirebaseAuthInternalName } from '@firebase/auth-interop-types'; import { Provider } from '@firebase/component'; @@ -115,7 +120,10 @@ export { ServerValue }; * provided, the SDK connects to the default instance of the Firebase App. * @returns The `FirebaseDatabase` instance of the provided app. */ -export function getDatabase(app: FirebaseApp, url?: string): FirebaseDatabase { +export function getDatabase( + app: FirebaseApp = getApp(), + url?: string +): FirebaseDatabase { return _getProvider(app, 'database-exp').getImmediate({ identifier: url }) as FirebaseDatabase; diff --git a/packages/firestore/src/exp/database.ts b/packages/firestore/src/exp/database.ts index b0a6ac0f1d..936ac2f2ef 100644 --- a/packages/firestore/src/exp/database.ts +++ b/packages/firestore/src/exp/database.ts @@ -18,7 +18,8 @@ import { _getProvider, _removeServiceInstance, - FirebaseApp + FirebaseApp, + getApp // eslint-disable-next-line import/no-extraneous-dependencies } from '@firebase/app-exp'; import { FirebaseAuthInternalName } from '@firebase/auth-interop-types'; @@ -151,7 +152,7 @@ export function initializeFirestore( * instance is associated with. * @returns The `Firestore` instance of the provided app. */ -export function getFirestore(app: FirebaseApp): FirebaseFirestore { +export function getFirestore(app: FirebaseApp = getApp()): FirebaseFirestore { return _getProvider(app, 'firestore-exp').getImmediate() as FirebaseFirestore; } diff --git a/packages/firestore/src/lite/database.ts b/packages/firestore/src/lite/database.ts index e43e874253..0cc6fcde46 100644 --- a/packages/firestore/src/lite/database.ts +++ b/packages/firestore/src/lite/database.ts @@ -18,7 +18,8 @@ import { _getProvider, _removeServiceInstance, - FirebaseApp + FirebaseApp, + getApp // eslint-disable-next-line import/no-extraneous-dependencies } from '@firebase/app-exp'; import { FirebaseAuthInternalName } from '@firebase/auth-interop-types'; @@ -205,7 +206,7 @@ export function initializeFirestore( * instance is associated with. * @returns The `Firestore` instance of the provided app. */ -export function getFirestore(app: FirebaseApp): FirebaseFirestore { +export function getFirestore(app: FirebaseApp = getApp()): FirebaseFirestore { return _getProvider( app, 'firestore/lite' diff --git a/packages/storage/exp/api.ts b/packages/storage/exp/api.ts index 49e8b4833f..ac72a4e721 100644 --- a/packages/storage/exp/api.ts +++ b/packages/storage/exp/api.ts @@ -17,7 +17,8 @@ import { _getProvider, - FirebaseApp + FirebaseApp, + getApp // eslint-disable-next-line import/no-extraneous-dependencies } from '@firebase/app-exp'; @@ -290,7 +291,7 @@ export { StringFormat } from '../src/implementation/string'; * @returns A Firebase StorageService instance. */ export function getStorage( - app: FirebaseApp, + app: FirebaseApp = getApp(), bucketUrl?: string ): StorageService { app = getModularInstance(app);