File tree Expand file tree Collapse file tree 2 files changed +10
-7
lines changed Expand file tree Collapse file tree 2 files changed +10
-7
lines changed Original file line number Diff line number Diff line change @@ -36,6 +36,10 @@ export interface Settings {
36
36
cacheSizeBytes ?: number ;
37
37
}
38
38
39
+ export interface PersistenceSettings {
40
+ forceOwnership ?: boolean ;
41
+ }
42
+
39
43
export interface SnapshotListenOptions {
40
44
readonly includeMetadataChanges ?: boolean ;
41
45
}
@@ -95,9 +99,9 @@ export function waitForPendingWrites(
95
99
export function enableNetwork ( firestore : FirebaseFirestore ) : Promise < void > ;
96
100
export function disableNetwork ( firestore : FirebaseFirestore ) : Promise < void > ;
97
101
98
- // TODO(firestoreexp): Add experimentalForceOwningTab support
99
102
export function enableIndexedDbPersistence (
100
- firestore : FirebaseFirestore
103
+ firestore : FirebaseFirestore ,
104
+ persistenceSettings ?: PersistenceSettings
101
105
) : Promise < void > ;
102
106
export function enableMultiTabIndexedDbPersistence (
103
107
firestore : FirebaseFirestore
@@ -405,8 +409,6 @@ export function updateDoc(
405
409
) : Promise < void > ;
406
410
export function deleteDoc ( reference : DocumentReference < unknown > ) : Promise < void > ;
407
411
408
- // TODO(firestoreexp): Update API Proposal to use FirestoreError in these
409
- // callbacks
410
412
export function onSnapshot < T > (
411
413
reference : DocumentReference < T > ,
412
414
observer : {
Original file line number Diff line number Diff line change @@ -62,6 +62,7 @@ import {
62
62
remoteStoreDisableNetwork ,
63
63
remoteStoreEnableNetwork
64
64
} from '../../../src/remote/remote_store' ;
65
+ import { PersistenceSettings } from '../../../exp-types' ;
65
66
66
67
const LOG_TAG = 'Firestore' ;
67
68
@@ -197,7 +198,8 @@ export function getFirestore(app: FirebaseApp): Firestore {
197
198
}
198
199
199
200
export function enableIndexedDbPersistence (
200
- firestore : firestore . FirebaseFirestore
201
+ firestore : firestore . FirebaseFirestore ,
202
+ persistenceSettings ?: PersistenceSettings
201
203
) : Promise < void > {
202
204
const firestoreImpl = cast ( firestore , Firestore ) ;
203
205
verifyNotInitialized ( firestoreImpl ) ;
@@ -214,15 +216,14 @@ export function enableIndexedDbPersistence(
214
216
) ;
215
217
216
218
return firestoreImpl . _queue . enqueue ( async ( ) => {
217
- // TODO(firestoreexp): Add forceOwningTab
218
219
await setOfflineComponentProvider (
219
220
firestoreImpl ,
220
221
{
221
222
durable : true ,
222
223
synchronizeTabs : false ,
223
224
cacheSizeBytes :
224
225
settings . cacheSizeBytes || LruParams . DEFAULT_CACHE_SIZE_BYTES ,
225
- forceOwningTab : false
226
+ forceOwningTab : ! ! persistenceSettings ?. forceOwnership
226
227
} ,
227
228
offlineComponentProvider
228
229
) ;
You can’t perform that action at this time.
0 commit comments