@@ -35,7 +35,6 @@ import {
35
35
FirebaseFirestore as LiteFirestore ,
36
36
Settings as LiteSettings
37
37
} from '../../../lite/src/api/database' ;
38
- import { cast } from '../../../lite/src/api/util' ;
39
38
import { Code , FirestoreError } from '../../../src/util/error' ;
40
39
import { Deferred } from '../../../src/util/promise' ;
41
40
import { LruParams } from '../../../src/local/lru_garbage_collector' ;
@@ -206,23 +205,22 @@ export function enableIndexedDbPersistence(
206
205
firestore : FirebaseFirestore ,
207
206
persistenceSettings ?: PersistenceSettings
208
207
) : Promise < void > {
209
- const firestoreImpl = cast ( firestore , FirebaseFirestore ) ;
210
- verifyNotInitialized ( firestoreImpl ) ;
208
+ verifyNotInitialized ( firestore ) ;
211
209
212
210
// `_getSettings()` freezes the client settings and prevents further changes
213
211
// to the components (as `verifyNotInitialized()` would fail). Components can
214
212
// then be accessed via `getOfflineComponentProvider()` and
215
213
// `getOnlineComponentProvider()`
216
- const settings = firestoreImpl . _getSettings ( ) ;
214
+ const settings = firestore . _getSettings ( ) ;
217
215
218
216
const onlineComponentProvider = new OnlineComponentProvider ( ) ;
219
217
const offlineComponentProvider = new IndexedDbOfflineComponentProvider (
220
218
onlineComponentProvider
221
219
) ;
222
220
223
- return firestoreImpl . _queue . enqueue ( async ( ) => {
221
+ return firestore . _queue . enqueue ( async ( ) => {
224
222
await setOfflineComponentProvider (
225
- firestoreImpl ,
223
+ firestore ,
226
224
{
227
225
durable : true ,
228
226
synchronizeTabs : false ,
@@ -232,29 +230,28 @@ export function enableIndexedDbPersistence(
232
230
} ,
233
231
offlineComponentProvider
234
232
) ;
235
- await setOnlineComponentProvider ( firestoreImpl , onlineComponentProvider ) ;
233
+ await setOnlineComponentProvider ( firestore , onlineComponentProvider ) ;
236
234
} ) ;
237
235
}
238
236
239
237
export function enableMultiTabIndexedDbPersistence (
240
238
firestore : FirebaseFirestore
241
239
) : Promise < void > {
242
- const firestoreImpl = cast ( firestore , FirebaseFirestore ) ;
243
- verifyNotInitialized ( firestoreImpl ) ;
240
+ verifyNotInitialized ( firestore ) ;
244
241
245
242
// `_getSettings()` freezes the client settings and prevents further changes
246
243
// to the components (as `verifyNotInitialized()` would fail). Components can
247
244
// then be accessed via `getOfflineComponentProvider()` and
248
245
// `getOnlineComponentProvider()`
249
- const settings = firestoreImpl . _getSettings ( ) ;
246
+ const settings = firestore . _getSettings ( ) ;
250
247
251
248
const onlineComponentProvider = new OnlineComponentProvider ( ) ;
252
249
const offlineComponentProvider = new MultiTabOfflineComponentProvider (
253
250
onlineComponentProvider
254
251
) ;
255
- return firestoreImpl . _queue . enqueue ( async ( ) => {
252
+ return firestore . _queue . enqueue ( async ( ) => {
256
253
await setOfflineComponentProvider (
257
- firestoreImpl ,
254
+ firestore ,
258
255
{
259
256
durable : true ,
260
257
synchronizeTabs : true ,
@@ -264,15 +261,14 @@ export function enableMultiTabIndexedDbPersistence(
264
261
} ,
265
262
offlineComponentProvider
266
263
) ;
267
- await setOnlineComponentProvider ( firestoreImpl , onlineComponentProvider ) ;
264
+ await setOnlineComponentProvider ( firestore , onlineComponentProvider ) ;
268
265
} ) ;
269
266
}
270
267
271
268
export function clearIndexedDbPersistence (
272
269
firestore : FirebaseFirestore
273
270
) : Promise < void > {
274
- const firestoreImpl = cast ( firestore , FirebaseFirestore ) ;
275
- if ( firestoreImpl . _initialized && ! firestoreImpl . _terminated ) {
271
+ if ( firestore . _initialized && ! firestore . _terminated ) {
276
272
throw new FirestoreError (
277
273
Code . FAILED_PRECONDITION ,
278
274
'Persistence can only be cleared before a Firestore instance is ' +
@@ -281,13 +277,10 @@ export function clearIndexedDbPersistence(
281
277
}
282
278
283
279
const deferred = new Deferred < void > ( ) ;
284
- firestoreImpl . _queue . enqueueAndForgetEvenWhileRestricted ( async ( ) => {
280
+ firestore . _queue . enqueueAndForgetEvenWhileRestricted ( async ( ) => {
285
281
try {
286
282
await indexedDbClearPersistence (
287
- indexedDbStoragePrefix (
288
- firestoreImpl . _databaseId ,
289
- firestoreImpl . _persistenceKey
290
- )
283
+ indexedDbStoragePrefix ( firestore . _databaseId , firestore . _persistenceKey )
291
284
) ;
292
285
deferred . resolve ( ) ;
293
286
} catch ( e ) {
@@ -300,45 +293,41 @@ export function clearIndexedDbPersistence(
300
293
export function waitForPendingWrites (
301
294
firestore : FirebaseFirestore
302
295
) : Promise < void > {
303
- const firestoreImpl = cast ( firestore , FirebaseFirestore ) ;
304
- firestoreImpl . _verifyNotTerminated ( ) ;
296
+ firestore . _verifyNotTerminated ( ) ;
305
297
306
298
const deferred = new Deferred < void > ( ) ;
307
- firestoreImpl . _queue . enqueueAndForget ( async ( ) => {
308
- const syncEngine = await getSyncEngine ( firestoreImpl ) ;
299
+ firestore . _queue . enqueueAndForget ( async ( ) => {
300
+ const syncEngine = await getSyncEngine ( firestore ) ;
309
301
return registerPendingWritesCallback ( syncEngine , deferred ) ;
310
302
} ) ;
311
303
return deferred . promise ;
312
304
}
313
305
314
306
export function enableNetwork ( firestore : FirebaseFirestore ) : Promise < void > {
315
- const firestoreImpl = cast ( firestore , FirebaseFirestore ) ;
316
- firestoreImpl . _verifyNotTerminated ( ) ;
307
+ firestore . _verifyNotTerminated ( ) ;
317
308
318
- return firestoreImpl . _queue . enqueue ( async ( ) => {
319
- const remoteStore = await getRemoteStore ( firestoreImpl ) ;
320
- const persistence = await getPersistence ( firestoreImpl ) ;
309
+ return firestore . _queue . enqueue ( async ( ) => {
310
+ const remoteStore = await getRemoteStore ( firestore ) ;
311
+ const persistence = await getPersistence ( firestore ) ;
321
312
persistence . setNetworkEnabled ( true ) ;
322
313
return remoteStoreEnableNetwork ( remoteStore ) ;
323
314
} ) ;
324
315
}
325
316
326
317
export function disableNetwork ( firestore : FirebaseFirestore ) : Promise < void > {
327
- const firestoreImpl = cast ( firestore , FirebaseFirestore ) ;
328
- firestoreImpl . _verifyNotTerminated ( ) ;
318
+ firestore . _verifyNotTerminated ( ) ;
329
319
330
- return firestoreImpl . _queue . enqueue ( async ( ) => {
331
- const remoteStore = await getRemoteStore ( firestoreImpl ) ;
332
- const persistence = await getPersistence ( firestoreImpl ) ;
320
+ return firestore . _queue . enqueue ( async ( ) => {
321
+ const remoteStore = await getRemoteStore ( firestore ) ;
322
+ const persistence = await getPersistence ( firestore ) ;
333
323
persistence . setNetworkEnabled ( false ) ;
334
324
return remoteStoreDisableNetwork ( remoteStore ) ;
335
325
} ) ;
336
326
}
337
327
338
328
export function terminate ( firestore : FirebaseFirestore ) : Promise < void > {
339
329
_removeServiceInstance ( firestore . app , 'firestore-exp' ) ;
340
- const firestoreImpl = cast ( firestore , FirebaseFirestore ) ;
341
- return firestoreImpl . _delete ( ) ;
330
+ return firestore . _delete ( ) ;
342
331
}
343
332
344
333
function verifyNotInitialized ( firestore : FirebaseFirestore ) : void {
0 commit comments