@firebase/firestore 3.4.1-canary.be7ccb8ed → 3.4.2

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.
@@ -10,7 +10,7 @@ import { fileURLToPath } from 'url';
10
10
  import { loadSync } from '@grpc/proto-loader';
11
11
 
12
12
  const name = "@firebase/firestore";
13
- const version$1 = "3.4.1-canary.be7ccb8ed";
13
+ const version$1 = "3.4.2";
14
14
 
15
15
  /**
16
16
  * @license
@@ -63,7 +63,7 @@ User.GOOGLE_CREDENTIALS = new User('google-credentials-uid');
63
63
  User.FIRST_PARTY = new User('first-party-uid');
64
64
  User.MOCK_USER = new User('mock-user');
65
65
 
66
- const version = "9.6.1-canary.be7ccb8ed";
66
+ const version = "9.6.2";
67
67
 
68
68
  /**
69
69
  * @license
@@ -11936,18 +11936,20 @@ function localStoreApplyRemoteEventToLocalCache(localStore, remoteEvent) {
11936
11936
  .next(() => {
11937
11937
  return localStoreImpl.targetCache.addMatchingKeys(txn, change.addedDocuments, targetId);
11938
11938
  }));
11939
- const resumeToken = change.resumeToken;
11940
- // Update the resume token if the change includes one.
11941
- if (resumeToken.approximateByteSize() > 0) {
11942
- const newTargetData = oldTargetData
11943
- .withResumeToken(resumeToken, remoteVersion)
11944
- .withSequenceNumber(txn.currentSequenceNumber);
11945
- newTargetDataByTargetMap = newTargetDataByTargetMap.insert(targetId, newTargetData);
11946
- // Update the target data if there are target changes (or if
11947
- // sufficient time has passed since the last update).
11948
- if (shouldPersistTargetData(oldTargetData, newTargetData, change)) {
11949
- promises.push(localStoreImpl.targetCache.updateTargetData(txn, newTargetData));
11950
- }
11939
+ let newTargetData = oldTargetData.withSequenceNumber(txn.currentSequenceNumber);
11940
+ if (remoteEvent.targetMismatches.has(targetId)) {
11941
+ newTargetData = newTargetData
11942
+ .withResumeToken(ByteString.EMPTY_BYTE_STRING, SnapshotVersion.min())
11943
+ .withLastLimboFreeSnapshotVersion(SnapshotVersion.min());
11944
+ }
11945
+ else if (change.resumeToken.approximateByteSize() > 0) {
11946
+ newTargetData = newTargetData.withResumeToken(change.resumeToken, remoteVersion);
11947
+ }
11948
+ newTargetDataByTargetMap = newTargetDataByTargetMap.insert(targetId, newTargetData);
11949
+ // Update the target data if there are target changes (or if
11950
+ // sufficient time has passed since the last update).
11951
+ if (shouldPersistTargetData(oldTargetData, newTargetData, change)) {
11952
+ promises.push(localStoreImpl.targetCache.updateTargetData(txn, newTargetData));
11951
11953
  }
11952
11954
  });
11953
11955
  let changedDocs = mutableDocumentMap();
@@ -12047,7 +12049,6 @@ documentVersions) {
12047
12049
  * too frequent.
12048
12050
  */
12049
12051
  function shouldPersistTargetData(oldTargetData, newTargetData, change) {
12050
- hardAssert(newTargetData.resumeToken.approximateByteSize() > 0);
12051
12052
  // Always persist target data if we don't already have a resume token.
12052
12053
  if (oldTargetData.resumeToken.approximateByteSize() === 0) {
12053
12054
  return true;