@@ -31,7 +31,7 @@ import {
3131 OfflineComponentProvider ,
3232 OnlineComponentProvider
3333} from '../core/component_provider' ;
34- import { DatabaseId , DEFAULT_DATABASE_NAME } from '../core/database_info' ;
34+ import { DatabaseId } from '../core/database_info' ;
3535import {
3636 FirestoreClient ,
3737 firestoreClientDisableNetwork ,
@@ -103,18 +103,17 @@ export class Firestore extends LiteFirestore {
103103
104104 /** @hideconstructor */
105105 constructor (
106+ databaseIdOrApp : DatabaseId | FirebaseApp ,
106107 authCredentialsProvider : CredentialsProvider < User > ,
107- appCheckCredentialsProvider : CredentialsProvider < string > ,
108- databaseId : DatabaseId ,
109- app ?: FirebaseApp
108+ appCheckCredentialsProvider : CredentialsProvider < string >
110109 ) {
111110 super (
111+ databaseIdOrApp ,
112112 authCredentialsProvider ,
113- appCheckCredentialsProvider ,
114- databaseId ,
115- app
113+ appCheckCredentialsProvider
116114 ) ;
117- this . _persistenceKey = app ?. name || '[DEFAULT]' ;
115+ this . _persistenceKey =
116+ 'name' in databaseIdOrApp ? databaseIdOrApp . name : '[DEFAULT]' ;
118117 }
119118
120119 _terminate ( ) : Promise < void > {
@@ -136,26 +135,17 @@ export class Firestore extends LiteFirestore {
136135 * @param app - The {@link @firebase/app#FirebaseApp } with which the {@link Firestore} instance will
137136 * be associated.
138137 * @param settings - A settings object to configure the {@link Firestore} instance.
139- * @param databaseId - The name of database.
140138 * @returns A newly initialized {@link Firestore} instance.
141139 */
142140export function initializeFirestore (
143141 app : FirebaseApp ,
144- settings : FirestoreSettings ,
145- databaseId ?: string
142+ settings : FirestoreSettings
146143) : Firestore {
147- if ( ! databaseId ) {
148- databaseId = DEFAULT_DATABASE_NAME ;
149- }
150144 const provider = _getProvider ( app , 'firestore' ) ;
151145
152- if ( provider . isInitialized ( databaseId ) ) {
153- const existingInstance = provider . getImmediate ( {
154- identifier : databaseId
155- } ) ;
156- const initialSettings = provider . getOptions (
157- databaseId
158- ) as FirestoreSettings ;
146+ if ( provider . isInitialized ( ) ) {
147+ const existingInstance = provider . getImmediate ( ) ;
148+ const initialSettings = provider . getOptions ( ) as FirestoreSettings ;
159149 if ( deepEqual ( initialSettings , settings ) ) {
160150 return existingInstance ;
161151 } else {
@@ -180,63 +170,20 @@ export function initializeFirestore(
180170 ) ;
181171 }
182172
183- return provider . initialize ( {
184- options : settings ,
185- instanceIdentifier : databaseId
186- } ) ;
173+ return provider . initialize ( { options : settings } ) ;
187174}
188175
189- /**
190- * Returns the existing default {@link Firestore} instance that is associated with the
191- * default {@link @firebase/app#FirebaseApp }. If no instance exists, initializes a new
192- * instance with default settings.
193- *
194- * @returns The {@link Firestore} instance of the provided app.
195- */
196- export function getFirestore ( ) : Firestore ;
197- /**
198- * Returns the existing default {@link Firestore} instance that is associated with the
199- * provided {@link @firebase/app#FirebaseApp }. If no instance exists, initializes a new
200- * instance with default settings.
201- *
202- * @param app - The {@link @firebase/app#FirebaseApp } instance that the returned {@link Firestore}
203- * instance is associated with.
204- * @returns The {@link Firestore} instance of the provided app.
205- */
206- export function getFirestore ( app : FirebaseApp ) : Firestore ;
207- /**
208- * Returns the existing {@link Firestore} instance that is associated with the
209- * default {@link @firebase/app#FirebaseApp }. If no instance exists, initializes a new
210- * instance with default settings.
211- *
212- * @param databaseId - The name of database.
213- * @returns The {@link Firestore} instance of the provided app.
214- */
215- export function getFirestore ( databaseId : string ) : Firestore ;
216176/**
217177 * Returns the existing {@link Firestore} instance that is associated with the
218178 * provided {@link @firebase/app#FirebaseApp }. If no instance exists, initializes a new
219179 * instance with default settings.
220180 *
221181 * @param app - The {@link @firebase/app#FirebaseApp } instance that the returned {@link Firestore}
222182 * instance is associated with.
223- * @param databaseId - The name of database.
224183 * @returns The {@link Firestore} instance of the provided app.
225184 */
226- export function getFirestore ( app : FirebaseApp , databaseId : string ) : Firestore ;
227- export function getFirestore (
228- appOrDatabaseId ?: FirebaseApp | string ,
229- optionalDatabaseId ?: string
230- ) : Firestore {
231- const app : FirebaseApp =
232- typeof appOrDatabaseId === 'object' ? appOrDatabaseId : getApp ( ) ;
233- const databaseId =
234- typeof appOrDatabaseId === 'string'
235- ? appOrDatabaseId
236- : optionalDatabaseId || DEFAULT_DATABASE_NAME ;
237- return _getProvider ( app , 'firestore' ) . getImmediate ( {
238- identifier : databaseId
239- } ) as Firestore ;
185+ export function getFirestore ( app : FirebaseApp = getApp ( ) ) : Firestore {
186+ return _getProvider ( app , 'firestore' ) . getImmediate ( ) as Firestore ;
240187}
241188
242189/**
@@ -551,11 +498,7 @@ export function disableNetwork(firestore: Firestore): Promise<void> {
551498 * terminated.
552499 */
553500export function terminate ( firestore : Firestore ) : Promise < void > {
554- _removeServiceInstance (
555- firestore . app ,
556- 'firestore' ,
557- firestore . _databaseId . database
558- ) ;
501+ _removeServiceInstance ( firestore . app , 'firestore' ) ;
559502 return firestore . _delete ( ) ;
560503}
561504
0 commit comments