@firebase/firestore 3.4.1 → 3.4.2-202205224240
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.
- package/CHANGELOG.md +13 -0
- package/dist/firestore/src/index/directional_index_byte_encoder.d.ts +24 -0
- package/dist/firestore/src/index/firestore_index_value_writer.d.ts +33 -0
- package/dist/firestore/src/index/index_byte_encoder.d.ts +14 -0
- package/dist/firestore/src/index/ordered_code_writer.d.ts +60 -0
- package/dist/firestore/src/lite-api/reference.d.ts +4 -2
- package/dist/firestore/src/lite-api/reference_impl.d.ts +5 -0
- package/dist/firestore/src/lite-api/transaction.d.ts +4 -0
- package/dist/firestore/src/lite-api/write_batch.d.ts +3 -0
- package/dist/firestore/src/local/indexeddb_remote_document_cache.d.ts +5 -0
- package/dist/firestore/src/model/collections.d.ts +0 -4
- package/dist/firestore/src/model/document.d.ts +3 -1
- package/dist/firestore/src/model/values.d.ts +3 -0
- package/dist/firestore/src/util/byte_string.d.ts +1 -0
- package/dist/firestore/src/util/error.d.ts +2 -3
- package/dist/firestore/test/unit/index/ordered_code_writer.test.d.ts +1 -0
- package/dist/firestore/test/util/helpers.d.ts +1 -0
- package/dist/index.d.ts +13 -21
- package/dist/index.esm2017.js +2649 -2640
- package/dist/index.esm2017.js.map +1 -1
- package/dist/index.esm5.js +2640 -2630
- package/dist/index.esm5.js.map +1 -1
- package/dist/index.node.cjs.js +42 -24
- package/dist/index.node.cjs.js.map +1 -1
- package/dist/index.node.mjs +43 -25
- package/dist/index.node.mjs.map +1 -1
- package/dist/index.rn.js +2839 -2830
- package/dist/index.rn.js.map +1 -1
- package/dist/internal.d.ts +18 -22
- package/dist/lite/firestore/src/index/directional_index_byte_encoder.d.ts +24 -0
- package/dist/lite/firestore/src/index/firestore_index_value_writer.d.ts +33 -0
- package/dist/lite/firestore/src/index/index_byte_encoder.d.ts +14 -0
- package/dist/lite/firestore/src/index/ordered_code_writer.d.ts +60 -0
- package/dist/lite/firestore/src/lite-api/reference.d.ts +4 -2
- package/dist/lite/firestore/src/lite-api/reference_impl.d.ts +5 -0
- package/dist/lite/firestore/src/lite-api/transaction.d.ts +4 -0
- package/dist/lite/firestore/src/lite-api/write_batch.d.ts +3 -0
- package/dist/lite/firestore/src/local/indexeddb_remote_document_cache.d.ts +5 -0
- package/dist/lite/firestore/src/model/collections.d.ts +0 -4
- package/dist/lite/firestore/src/model/document.d.ts +3 -1
- package/dist/lite/firestore/src/model/values.d.ts +3 -0
- package/dist/lite/firestore/src/util/byte_string.d.ts +1 -0
- package/dist/lite/firestore/src/util/error.d.ts +2 -3
- package/dist/lite/firestore/test/unit/index/ordered_code_writer.test.d.ts +1 -0
- package/dist/lite/firestore/test/util/helpers.d.ts +1 -0
- package/dist/lite/index.browser.esm2017.js +1378 -1365
- package/dist/lite/index.browser.esm2017.js.map +1 -1
- package/dist/lite/index.browser.esm5.js +842 -828
- package/dist/lite/index.browser.esm5.js.map +1 -1
- package/dist/lite/index.d.ts +18 -21
- package/dist/lite/index.node.cjs.js +25 -7
- package/dist/lite/index.node.cjs.js.map +1 -1
- package/dist/lite/index.node.mjs +26 -8
- package/dist/lite/index.node.mjs.map +1 -1
- package/dist/lite/index.rn.esm2017.js +849 -836
- package/dist/lite/index.rn.esm2017.js.map +1 -1
- package/dist/lite/internal.d.ts +86 -21
- package/dist/lite/packages/firestore/dist/lite/index.browser.esm2017.d.ts +142 -141
- package/dist/lite/packages/firestore/src/index/directional_index_byte_encoder.d.ts +24 -0
- package/dist/lite/packages/firestore/src/index/firestore_index_value_writer.d.ts +33 -0
- package/dist/lite/packages/firestore/src/index/index_byte_encoder.d.ts +14 -0
- package/dist/lite/packages/firestore/src/index/ordered_code_writer.d.ts +60 -0
- package/dist/lite/packages/firestore/src/lite-api/reference.d.ts +4 -2
- package/dist/lite/packages/firestore/src/lite-api/reference_impl.d.ts +5 -0
- package/dist/lite/packages/firestore/src/lite-api/transaction.d.ts +4 -0
- package/dist/lite/packages/firestore/src/lite-api/write_batch.d.ts +3 -0
- package/dist/lite/packages/firestore/src/local/indexeddb_remote_document_cache.d.ts +5 -0
- package/dist/lite/packages/firestore/src/model/collections.d.ts +0 -4
- package/dist/lite/packages/firestore/src/model/document.d.ts +3 -1
- package/dist/lite/packages/firestore/src/model/values.d.ts +3 -0
- package/dist/lite/packages/firestore/src/util/byte_string.d.ts +1 -0
- package/dist/lite/packages/firestore/src/util/error.d.ts +2 -3
- package/dist/lite/packages/firestore/test/unit/index/ordered_code_writer.test.d.ts +1 -0
- package/dist/lite/packages/firestore/test/util/helpers.d.ts +1 -0
- package/dist/lite/private.d.ts +85 -21
- package/dist/packages/firestore/dist/index.esm2017.d.ts +152 -152
- package/dist/packages/firestore/src/index/directional_index_byte_encoder.d.ts +24 -0
- package/dist/packages/firestore/src/index/firestore_index_value_writer.d.ts +33 -0
- package/dist/packages/firestore/src/index/index_byte_encoder.d.ts +14 -0
- package/dist/packages/firestore/src/index/ordered_code_writer.d.ts +60 -0
- package/dist/packages/firestore/src/lite-api/reference.d.ts +4 -2
- package/dist/packages/firestore/src/lite-api/reference_impl.d.ts +5 -0
- package/dist/packages/firestore/src/lite-api/transaction.d.ts +4 -0
- package/dist/packages/firestore/src/lite-api/write_batch.d.ts +3 -0
- package/dist/packages/firestore/src/local/indexeddb_remote_document_cache.d.ts +5 -0
- package/dist/packages/firestore/src/model/collections.d.ts +0 -4
- package/dist/packages/firestore/src/model/document.d.ts +3 -1
- package/dist/packages/firestore/src/model/values.d.ts +3 -0
- package/dist/packages/firestore/src/util/byte_string.d.ts +1 -0
- package/dist/packages/firestore/src/util/error.d.ts +2 -3
- package/dist/packages/firestore/test/unit/index/ordered_code_writer.test.d.ts +1 -0
- package/dist/packages/firestore/test/util/helpers.d.ts +1 -0
- package/dist/private.d.ts +17 -22
- package/package.json +7 -7
package/dist/index.node.mjs
CHANGED
|
@@ -2,7 +2,7 @@ import { _getProvider, getApp, _removeServiceInstance, _registerComponent, regis
|
|
|
2
2
|
import { Component } from '@firebase/component';
|
|
3
3
|
import { Logger, LogLevel } from '@firebase/logger';
|
|
4
4
|
import { inspect, TextEncoder, TextDecoder } from 'util';
|
|
5
|
-
import { createMockUserToken, getModularInstance, deepEqual, getUA, isIndexedDBAvailable, isSafari } from '@firebase/util';
|
|
5
|
+
import { FirebaseError, createMockUserToken, getModularInstance, deepEqual, getUA, isIndexedDBAvailable, isSafari } from '@firebase/util';
|
|
6
6
|
import { randomBytes as randomBytes$1 } from 'crypto';
|
|
7
7
|
import { credentials, loadPackageDefinition, Metadata } from '@grpc/grpc-js';
|
|
8
8
|
import { dirname, resolve, join } from 'path';
|
|
@@ -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.
|
|
13
|
+
const version$1 = "3.4.2-202205224240";
|
|
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.
|
|
66
|
+
const version = "9.6.2-202205224240";
|
|
67
67
|
|
|
68
68
|
/**
|
|
69
69
|
* @license
|
|
@@ -383,7 +383,7 @@ const Code = {
|
|
|
383
383
|
DATA_LOSS: 'data-loss'
|
|
384
384
|
};
|
|
385
385
|
/** An error returned by a Firestore operation. */
|
|
386
|
-
class FirestoreError extends
|
|
386
|
+
class FirestoreError extends FirebaseError {
|
|
387
387
|
/** @hideconstructor */
|
|
388
388
|
constructor(
|
|
389
389
|
/**
|
|
@@ -394,11 +394,9 @@ class FirestoreError extends Error {
|
|
|
394
394
|
* A custom error description.
|
|
395
395
|
*/
|
|
396
396
|
message) {
|
|
397
|
-
super(message);
|
|
397
|
+
super(code, message);
|
|
398
398
|
this.code = code;
|
|
399
399
|
this.message = message;
|
|
400
|
-
/** The custom name for all FirestoreErrors. */
|
|
401
|
-
this.name = 'FirebaseError';
|
|
402
400
|
// HACK: We write a toString property directly because Error is not a real
|
|
403
401
|
// class and so inheritance does not work correctly. We could alternatively
|
|
404
402
|
// do the same "back-door inheritance" trick that FirebaseError does.
|
|
@@ -3161,6 +3159,19 @@ class ByteString {
|
|
|
3161
3159
|
const binaryString = binaryStringFromUint8Array(array);
|
|
3162
3160
|
return new ByteString(binaryString);
|
|
3163
3161
|
}
|
|
3162
|
+
[Symbol.iterator]() {
|
|
3163
|
+
let i = 0;
|
|
3164
|
+
return {
|
|
3165
|
+
next: () => {
|
|
3166
|
+
if (i < this.binaryString.length) {
|
|
3167
|
+
return { value: this.binaryString.charCodeAt(i++), done: false };
|
|
3168
|
+
}
|
|
3169
|
+
else {
|
|
3170
|
+
return { value: undefined, done: true };
|
|
3171
|
+
}
|
|
3172
|
+
}
|
|
3173
|
+
};
|
|
3174
|
+
}
|
|
3164
3175
|
toBase64() {
|
|
3165
3176
|
return encodeBase64(this.binaryString);
|
|
3166
3177
|
}
|
|
@@ -3521,6 +3532,9 @@ function typeOrder(value) {
|
|
|
3521
3532
|
}
|
|
3522
3533
|
/** Tests `left` and `right` for equality based on the backend semantics. */
|
|
3523
3534
|
function valueEquals(left, right) {
|
|
3535
|
+
if (left === right) {
|
|
3536
|
+
return true;
|
|
3537
|
+
}
|
|
3524
3538
|
const leftType = typeOrder(left);
|
|
3525
3539
|
const rightType = typeOrder(right);
|
|
3526
3540
|
if (leftType !== rightType) {
|
|
@@ -3611,6 +3625,9 @@ function arrayValueContains(haystack, needle) {
|
|
|
3611
3625
|
return ((haystack.values || []).find(v => valueEquals(v, needle)) !== undefined);
|
|
3612
3626
|
}
|
|
3613
3627
|
function valueCompare(left, right) {
|
|
3628
|
+
if (left === right) {
|
|
3629
|
+
return 0;
|
|
3630
|
+
}
|
|
3614
3631
|
const leftType = typeOrder(left);
|
|
3615
3632
|
const rightType = typeOrder(right);
|
|
3616
3633
|
if (leftType !== rightType) {
|
|
@@ -4182,7 +4199,7 @@ class MutableDocument {
|
|
|
4182
4199
|
this.documentState === other.documentState &&
|
|
4183
4200
|
this.data.isEqual(other.data));
|
|
4184
4201
|
}
|
|
4185
|
-
|
|
4202
|
+
mutableCopy() {
|
|
4186
4203
|
return new MutableDocument(this.key, this.documentType, this.version, this.data.clone(), this.documentState);
|
|
4187
4204
|
}
|
|
4188
4205
|
toString() {
|
|
@@ -11919,18 +11936,20 @@ function localStoreApplyRemoteEventToLocalCache(localStore, remoteEvent) {
|
|
|
11919
11936
|
.next(() => {
|
|
11920
11937
|
return localStoreImpl.targetCache.addMatchingKeys(txn, change.addedDocuments, targetId);
|
|
11921
11938
|
}));
|
|
11922
|
-
|
|
11923
|
-
|
|
11924
|
-
|
|
11925
|
-
|
|
11926
|
-
.
|
|
11927
|
-
|
|
11928
|
-
|
|
11929
|
-
|
|
11930
|
-
|
|
11931
|
-
|
|
11932
|
-
|
|
11933
|
-
|
|
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));
|
|
11934
11953
|
}
|
|
11935
11954
|
});
|
|
11936
11955
|
let changedDocs = mutableDocumentMap();
|
|
@@ -12030,7 +12049,6 @@ documentVersions) {
|
|
|
12030
12049
|
* too frequent.
|
|
12031
12050
|
*/
|
|
12032
12051
|
function shouldPersistTargetData(oldTargetData, newTargetData, change) {
|
|
12033
|
-
hardAssert(newTargetData.resumeToken.approximateByteSize() > 0);
|
|
12034
12052
|
// Always persist target data if we don't already have a resume token.
|
|
12035
12053
|
if (oldTargetData.resumeToken.approximateByteSize() === 0) {
|
|
12036
12054
|
return true;
|
|
@@ -12867,7 +12885,7 @@ class MemoryRemoteDocumentCacheImpl {
|
|
|
12867
12885
|
const previousSize = entry ? entry.size : 0;
|
|
12868
12886
|
const currentSize = this.sizer(doc);
|
|
12869
12887
|
this.docs = this.docs.insert(key, {
|
|
12870
|
-
document: doc.
|
|
12888
|
+
document: doc.mutableCopy(),
|
|
12871
12889
|
size: currentSize,
|
|
12872
12890
|
readTime
|
|
12873
12891
|
});
|
|
@@ -12890,7 +12908,7 @@ class MemoryRemoteDocumentCacheImpl {
|
|
|
12890
12908
|
getEntry(transaction, documentKey) {
|
|
12891
12909
|
const entry = this.docs.get(documentKey);
|
|
12892
12910
|
return PersistencePromise.resolve(entry
|
|
12893
|
-
? entry.document.
|
|
12911
|
+
? entry.document.mutableCopy()
|
|
12894
12912
|
: MutableDocument.newInvalidDocument(documentKey));
|
|
12895
12913
|
}
|
|
12896
12914
|
getEntries(transaction, documentKeys) {
|
|
@@ -12898,7 +12916,7 @@ class MemoryRemoteDocumentCacheImpl {
|
|
|
12898
12916
|
documentKeys.forEach(documentKey => {
|
|
12899
12917
|
const entry = this.docs.get(documentKey);
|
|
12900
12918
|
results = results.insert(documentKey, entry
|
|
12901
|
-
? entry.document.
|
|
12919
|
+
? entry.document.mutableCopy()
|
|
12902
12920
|
: MutableDocument.newInvalidDocument(documentKey));
|
|
12903
12921
|
});
|
|
12904
12922
|
return PersistencePromise.resolve(results);
|
|
@@ -12920,7 +12938,7 @@ class MemoryRemoteDocumentCacheImpl {
|
|
|
12920
12938
|
if (!queryMatches(query, document)) {
|
|
12921
12939
|
continue;
|
|
12922
12940
|
}
|
|
12923
|
-
results = results.insert(document.key, document.
|
|
12941
|
+
results = results.insert(document.key, document.mutableCopy());
|
|
12924
12942
|
}
|
|
12925
12943
|
return PersistencePromise.resolve(results);
|
|
12926
12944
|
}
|