@firebase/firestore 3.4.4 → 3.4.5-2022116201138
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 +12 -0
- package/dist/firestore/src/api/credentials.d.ts +1 -0
- package/dist/firestore/src/api/{query.d.ts → filter.d.ts} +0 -0
- package/dist/firestore/src/api/snapshot.d.ts +1 -2
- package/dist/firestore/src/api.d.ts +1 -1
- package/dist/firestore/src/core/database_info.d.ts +1 -0
- package/dist/firestore/src/core/target.d.ts +34 -5
- package/dist/firestore/src/index/index_byte_encoder.d.ts +18 -1
- package/dist/firestore/src/index/index_entry.d.ts +26 -0
- package/dist/firestore/src/lite-api/query.d.ts +2 -2
- package/dist/firestore/src/local/document_overlay_cache.d.ts +72 -0
- package/dist/firestore/src/local/index_manager.d.ts +52 -0
- package/dist/firestore/src/local/indexeddb_document_overlay_cache.d.ts +45 -0
- package/dist/firestore/src/local/indexeddb_index_manager.d.ts +40 -2
- package/dist/firestore/src/local/indexeddb_persistence.d.ts +6 -4
- package/dist/firestore/src/local/indexeddb_remote_document_cache.d.ts +2 -8
- package/dist/firestore/src/local/indexeddb_schema.d.ts +195 -7
- package/dist/firestore/src/local/local_documents_view.d.ts +0 -1
- package/dist/firestore/src/local/local_serializer.d.ts +19 -3
- package/dist/firestore/src/local/memory_document_overlay_cache.d.ts +37 -0
- package/dist/firestore/src/local/memory_index_manager.d.ts +11 -0
- package/dist/firestore/src/local/memory_persistence.d.ts +6 -2
- package/dist/firestore/src/local/memory_remote_document_cache.d.ts +1 -3
- package/dist/firestore/src/local/persistence.d.ts +8 -2
- package/dist/firestore/src/local/remote_document_cache.d.ts +7 -9
- package/dist/firestore/src/local/remote_document_change_buffer.d.ts +3 -12
- package/dist/firestore/src/local/simple_db.d.ts +1 -0
- package/dist/firestore/src/model/document.d.ts +7 -0
- package/dist/firestore/src/model/document_key.d.ts +6 -0
- package/dist/firestore/src/model/field_index.d.ts +87 -7
- package/dist/firestore/src/model/overlay.d.ts +32 -0
- package/dist/firestore/src/model/target_index_matcher.d.ts +70 -0
- package/dist/firestore/src/model/values.d.ts +7 -0
- package/dist/firestore/src/platform/node/grpc_connection.d.ts +2 -2
- package/dist/firestore/src/platform/node/load_protos.d.ts +2 -2
- package/dist/firestore/src/util/sorted_set.d.ts +18 -0
- package/dist/firestore/test/unit/local/counting_query_engine.d.ts +3 -3
- package/dist/firestore/test/unit/local/document_overlay_cache.test.d.ts +1 -0
- package/dist/firestore/test/unit/local/persistence_test_helpers.d.ts +1 -0
- package/dist/firestore/test/unit/local/test_document_overlay_cache.d.ts +38 -0
- package/dist/firestore/test/unit/local/test_index_manager.d.ts +11 -0
- package/dist/firestore/test/unit/local/test_remote_document_cache.d.ts +5 -3
- package/dist/firestore/test/unit/local/test_remote_document_change_buffer.d.ts +1 -1
- package/dist/firestore/test/unit/model/field_index.test.d.ts +17 -0
- package/dist/firestore/test/unit/model/target.test.d.ts +17 -0
- package/dist/firestore/test/unit/model/target_index_matcher.test.d.ts +17 -0
- package/dist/firestore/test/util/helpers.d.ts +8 -2
- package/dist/index.d.ts +1 -2
- package/dist/index.esm2017.js +4815 -3708
- package/dist/index.esm2017.js.map +1 -1
- package/dist/index.esm5.js +4500 -3545
- package/dist/index.esm5.js.map +1 -1
- package/dist/index.node.cjs.js +2001 -389
- package/dist/index.node.cjs.js.map +1 -1
- package/dist/index.node.mjs +1981 -390
- package/dist/index.node.mjs.map +1 -1
- package/dist/index.rn.js +4798 -3733
- package/dist/index.rn.js.map +1 -1
- package/dist/internal.d.ts +265 -26
- package/dist/lite/firestore/src/api/credentials.d.ts +1 -0
- package/dist/lite/firestore/src/api/{query.d.ts → filter.d.ts} +0 -0
- package/dist/lite/firestore/src/api/snapshot.d.ts +1 -2
- package/dist/lite/firestore/src/api.d.ts +1 -1
- package/dist/lite/firestore/src/core/database_info.d.ts +1 -0
- package/dist/lite/firestore/src/core/target.d.ts +34 -5
- package/dist/lite/firestore/src/index/index_byte_encoder.d.ts +18 -1
- package/dist/lite/firestore/src/index/index_entry.d.ts +26 -0
- package/dist/lite/firestore/src/lite-api/query.d.ts +2 -2
- package/dist/lite/firestore/src/local/document_overlay_cache.d.ts +72 -0
- package/dist/lite/firestore/src/local/index_manager.d.ts +52 -0
- package/dist/lite/firestore/src/local/indexeddb_document_overlay_cache.d.ts +45 -0
- package/dist/lite/firestore/src/local/indexeddb_index_manager.d.ts +40 -2
- package/dist/lite/firestore/src/local/indexeddb_persistence.d.ts +6 -4
- package/dist/lite/firestore/src/local/indexeddb_remote_document_cache.d.ts +2 -8
- package/dist/lite/firestore/src/local/indexeddb_schema.d.ts +195 -7
- package/dist/lite/firestore/src/local/local_documents_view.d.ts +0 -1
- package/dist/lite/firestore/src/local/local_serializer.d.ts +19 -3
- package/dist/lite/firestore/src/local/memory_document_overlay_cache.d.ts +37 -0
- package/dist/lite/firestore/src/local/memory_index_manager.d.ts +11 -0
- package/dist/lite/firestore/src/local/memory_persistence.d.ts +6 -2
- package/dist/lite/firestore/src/local/memory_remote_document_cache.d.ts +1 -3
- package/dist/lite/firestore/src/local/persistence.d.ts +8 -2
- package/dist/lite/firestore/src/local/remote_document_cache.d.ts +7 -9
- package/dist/lite/firestore/src/local/remote_document_change_buffer.d.ts +3 -12
- package/dist/lite/firestore/src/local/simple_db.d.ts +1 -0
- package/dist/lite/firestore/src/model/document.d.ts +7 -0
- package/dist/lite/firestore/src/model/document_key.d.ts +6 -0
- package/dist/lite/firestore/src/model/field_index.d.ts +87 -7
- package/dist/lite/firestore/src/model/overlay.d.ts +32 -0
- package/dist/lite/firestore/src/model/target_index_matcher.d.ts +70 -0
- package/dist/lite/firestore/src/model/values.d.ts +7 -0
- package/dist/lite/firestore/src/platform/node/grpc_connection.d.ts +2 -2
- package/dist/lite/firestore/src/platform/node/load_protos.d.ts +2 -2
- package/dist/lite/firestore/src/util/sorted_set.d.ts +18 -0
- package/dist/lite/firestore/test/unit/local/counting_query_engine.d.ts +3 -3
- package/dist/lite/firestore/test/unit/local/document_overlay_cache.test.d.ts +1 -0
- package/dist/lite/firestore/test/unit/local/persistence_test_helpers.d.ts +1 -0
- package/dist/lite/firestore/test/unit/local/test_document_overlay_cache.d.ts +38 -0
- package/dist/lite/firestore/test/unit/local/test_index_manager.d.ts +11 -0
- package/dist/lite/firestore/test/unit/local/test_remote_document_cache.d.ts +5 -3
- package/dist/lite/firestore/test/unit/local/test_remote_document_change_buffer.d.ts +1 -1
- package/dist/lite/firestore/test/unit/model/field_index.test.d.ts +17 -0
- package/dist/lite/firestore/test/unit/model/target.test.d.ts +17 -0
- package/dist/lite/firestore/test/unit/model/target_index_matcher.test.d.ts +17 -0
- package/dist/lite/firestore/test/util/helpers.d.ts +8 -2
- package/dist/lite/index.browser.esm2017.js +1166 -1143
- package/dist/lite/index.browser.esm2017.js.map +1 -1
- package/dist/lite/index.browser.esm5.js +357 -337
- package/dist/lite/index.browser.esm5.js.map +1 -1
- package/dist/lite/index.node.cjs.js +64 -34
- package/dist/lite/index.node.cjs.js.map +1 -1
- package/dist/lite/index.node.mjs +64 -34
- package/dist/lite/index.node.mjs.map +1 -1
- package/dist/lite/index.rn.esm2017.js +344 -321
- package/dist/lite/index.rn.esm2017.js.map +1 -1
- package/dist/lite/internal.d.ts +16 -2
- package/dist/lite/packages/firestore/dist/lite/index.browser.esm2017.d.ts +122 -121
- package/dist/lite/packages/firestore/src/api/credentials.d.ts +1 -0
- package/dist/lite/packages/firestore/src/api/{query.d.ts → filter.d.ts} +0 -0
- package/dist/lite/packages/firestore/src/api/snapshot.d.ts +1 -2
- package/dist/lite/packages/firestore/src/api.d.ts +1 -1
- package/dist/lite/packages/firestore/src/core/database_info.d.ts +1 -0
- package/dist/lite/packages/firestore/src/core/target.d.ts +34 -5
- package/dist/lite/packages/firestore/src/index/index_byte_encoder.d.ts +18 -1
- package/dist/lite/packages/firestore/src/index/index_entry.d.ts +26 -0
- package/dist/lite/packages/firestore/src/lite-api/query.d.ts +2 -2
- package/dist/lite/packages/firestore/src/local/document_overlay_cache.d.ts +72 -0
- package/dist/lite/packages/firestore/src/local/index_manager.d.ts +52 -0
- package/dist/lite/packages/firestore/src/local/indexeddb_document_overlay_cache.d.ts +45 -0
- package/dist/lite/packages/firestore/src/local/indexeddb_index_manager.d.ts +40 -2
- package/dist/lite/packages/firestore/src/local/indexeddb_persistence.d.ts +6 -4
- package/dist/lite/packages/firestore/src/local/indexeddb_remote_document_cache.d.ts +2 -8
- package/dist/lite/packages/firestore/src/local/indexeddb_schema.d.ts +195 -7
- package/dist/lite/packages/firestore/src/local/local_documents_view.d.ts +0 -1
- package/dist/lite/packages/firestore/src/local/local_serializer.d.ts +19 -3
- package/dist/lite/packages/firestore/src/local/memory_document_overlay_cache.d.ts +37 -0
- package/dist/lite/packages/firestore/src/local/memory_index_manager.d.ts +11 -0
- package/dist/lite/packages/firestore/src/local/memory_persistence.d.ts +6 -2
- package/dist/lite/packages/firestore/src/local/memory_remote_document_cache.d.ts +1 -3
- package/dist/lite/packages/firestore/src/local/persistence.d.ts +8 -2
- package/dist/lite/packages/firestore/src/local/remote_document_cache.d.ts +7 -9
- package/dist/lite/packages/firestore/src/local/remote_document_change_buffer.d.ts +3 -12
- package/dist/lite/packages/firestore/src/local/simple_db.d.ts +1 -0
- package/dist/lite/packages/firestore/src/model/document.d.ts +7 -0
- package/dist/lite/packages/firestore/src/model/document_key.d.ts +6 -0
- package/dist/lite/packages/firestore/src/model/field_index.d.ts +87 -7
- package/dist/lite/packages/firestore/src/model/overlay.d.ts +32 -0
- package/dist/lite/packages/firestore/src/model/target_index_matcher.d.ts +70 -0
- package/dist/lite/packages/firestore/src/model/values.d.ts +7 -0
- package/dist/lite/packages/firestore/src/platform/node/grpc_connection.d.ts +2 -2
- package/dist/lite/packages/firestore/src/platform/node/load_protos.d.ts +2 -2
- package/dist/lite/packages/firestore/src/util/sorted_set.d.ts +18 -0
- package/dist/lite/packages/firestore/test/unit/local/counting_query_engine.d.ts +3 -3
- package/dist/lite/packages/firestore/test/unit/local/document_overlay_cache.test.d.ts +1 -0
- package/dist/lite/packages/firestore/test/unit/local/persistence_test_helpers.d.ts +1 -0
- package/dist/lite/packages/firestore/test/unit/local/test_document_overlay_cache.d.ts +38 -0
- package/dist/lite/packages/firestore/test/unit/local/test_index_manager.d.ts +11 -0
- package/dist/lite/packages/firestore/test/unit/local/test_remote_document_cache.d.ts +5 -3
- package/dist/lite/packages/firestore/test/unit/local/test_remote_document_change_buffer.d.ts +1 -1
- package/dist/lite/packages/firestore/test/unit/model/field_index.test.d.ts +17 -0
- package/dist/lite/packages/firestore/test/unit/model/target.test.d.ts +17 -0
- package/dist/lite/packages/firestore/test/unit/model/target_index_matcher.test.d.ts +17 -0
- package/dist/lite/packages/firestore/test/util/helpers.d.ts +8 -2
- package/dist/lite/private.d.ts +9 -2
- package/dist/packages/firestore/dist/index.esm2017.d.ts +199 -194
- package/dist/packages/firestore/src/api/credentials.d.ts +1 -0
- package/dist/packages/firestore/src/api/{query.d.ts → filter.d.ts} +0 -0
- package/dist/packages/firestore/src/api/snapshot.d.ts +1 -2
- package/dist/packages/firestore/src/api.d.ts +1 -1
- package/dist/packages/firestore/src/core/database_info.d.ts +1 -0
- package/dist/packages/firestore/src/core/target.d.ts +34 -5
- package/dist/packages/firestore/src/index/index_byte_encoder.d.ts +18 -1
- package/dist/packages/firestore/src/index/index_entry.d.ts +26 -0
- package/dist/packages/firestore/src/lite-api/query.d.ts +2 -2
- package/dist/packages/firestore/src/local/document_overlay_cache.d.ts +72 -0
- package/dist/packages/firestore/src/local/index_manager.d.ts +52 -0
- package/dist/packages/firestore/src/local/indexeddb_document_overlay_cache.d.ts +45 -0
- package/dist/packages/firestore/src/local/indexeddb_index_manager.d.ts +40 -2
- package/dist/packages/firestore/src/local/indexeddb_persistence.d.ts +6 -4
- package/dist/packages/firestore/src/local/indexeddb_remote_document_cache.d.ts +2 -8
- package/dist/packages/firestore/src/local/indexeddb_schema.d.ts +195 -7
- package/dist/packages/firestore/src/local/local_documents_view.d.ts +0 -1
- package/dist/packages/firestore/src/local/local_serializer.d.ts +19 -3
- package/dist/packages/firestore/src/local/memory_document_overlay_cache.d.ts +37 -0
- package/dist/packages/firestore/src/local/memory_index_manager.d.ts +11 -0
- package/dist/packages/firestore/src/local/memory_persistence.d.ts +6 -2
- package/dist/packages/firestore/src/local/memory_remote_document_cache.d.ts +1 -3
- package/dist/packages/firestore/src/local/persistence.d.ts +8 -2
- package/dist/packages/firestore/src/local/remote_document_cache.d.ts +7 -9
- package/dist/packages/firestore/src/local/remote_document_change_buffer.d.ts +3 -12
- package/dist/packages/firestore/src/local/simple_db.d.ts +1 -0
- package/dist/packages/firestore/src/model/document.d.ts +7 -0
- package/dist/packages/firestore/src/model/document_key.d.ts +6 -0
- package/dist/packages/firestore/src/model/field_index.d.ts +87 -7
- package/dist/packages/firestore/src/model/overlay.d.ts +32 -0
- package/dist/packages/firestore/src/model/target_index_matcher.d.ts +70 -0
- package/dist/packages/firestore/src/model/values.d.ts +7 -0
- package/dist/packages/firestore/src/platform/node/grpc_connection.d.ts +2 -2
- package/dist/packages/firestore/src/platform/node/load_protos.d.ts +2 -2
- package/dist/packages/firestore/src/util/sorted_set.d.ts +18 -0
- package/dist/packages/firestore/test/unit/local/counting_query_engine.d.ts +3 -3
- package/dist/packages/firestore/test/unit/local/document_overlay_cache.test.d.ts +1 -0
- package/dist/packages/firestore/test/unit/local/persistence_test_helpers.d.ts +1 -0
- package/dist/packages/firestore/test/unit/local/test_document_overlay_cache.d.ts +38 -0
- package/dist/packages/firestore/test/unit/local/test_index_manager.d.ts +11 -0
- package/dist/packages/firestore/test/unit/local/test_remote_document_cache.d.ts +5 -3
- package/dist/packages/firestore/test/unit/local/test_remote_document_change_buffer.d.ts +1 -1
- package/dist/packages/firestore/test/unit/model/field_index.test.d.ts +17 -0
- package/dist/packages/firestore/test/unit/model/target.test.d.ts +17 -0
- package/dist/packages/firestore/test/unit/model/target_index_matcher.test.d.ts +17 -0
- package/dist/packages/firestore/test/util/helpers.d.ts +8 -2
- package/dist/private.d.ts +258 -26
- package/package.json +4 -4
|
@@ -14,7 +14,7 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
|
|
|
14
14
|
|
|
15
15
|
var nodeFetch__default = /*#__PURE__*/_interopDefaultLegacy(nodeFetch);
|
|
16
16
|
|
|
17
|
-
const version$1 = "3.4.
|
|
17
|
+
const version$1 = "3.4.5-2022116201138";
|
|
18
18
|
|
|
19
19
|
/**
|
|
20
20
|
* @license
|
|
@@ -67,7 +67,7 @@ User.GOOGLE_CREDENTIALS = new User('google-credentials-uid');
|
|
|
67
67
|
User.FIRST_PARTY = new User('first-party-uid');
|
|
68
68
|
User.MOCK_USER = new User('mock-user');
|
|
69
69
|
|
|
70
|
-
const version = "9.6.
|
|
70
|
+
const version = "9.6.7-2022116201138";
|
|
71
71
|
|
|
72
72
|
/**
|
|
73
73
|
* @license
|
|
@@ -666,6 +666,9 @@ class DatabaseId {
|
|
|
666
666
|
this.projectId = projectId;
|
|
667
667
|
this.database = database ? database : DEFAULT_DATABASE_NAME;
|
|
668
668
|
}
|
|
669
|
+
static empty() {
|
|
670
|
+
return new DatabaseId('', '');
|
|
671
|
+
}
|
|
669
672
|
get isDefaultDatabase() {
|
|
670
673
|
return this.database === DEFAULT_DATABASE_NAME;
|
|
671
674
|
}
|
|
@@ -979,11 +982,25 @@ class DocumentKey {
|
|
|
979
982
|
static fromName(name) {
|
|
980
983
|
return new DocumentKey(ResourcePath.fromString(name).popFirst(5));
|
|
981
984
|
}
|
|
985
|
+
static empty() {
|
|
986
|
+
return new DocumentKey(ResourcePath.emptyPath());
|
|
987
|
+
}
|
|
988
|
+
get collectionGroup() {
|
|
989
|
+
return this.path.popLast().lastSegment();
|
|
990
|
+
}
|
|
982
991
|
/** Returns true if the document is in the specified collectionId. */
|
|
983
992
|
hasCollectionId(collectionId) {
|
|
984
993
|
return (this.path.length >= 2 &&
|
|
985
994
|
this.path.get(this.path.length - 2) === collectionId);
|
|
986
995
|
}
|
|
996
|
+
/** Returns the collection group (i.e. the name of the parent collection) for this key. */
|
|
997
|
+
getCollectionGroup() {
|
|
998
|
+
return this.path.get(this.path.length - 2);
|
|
999
|
+
}
|
|
1000
|
+
/** Returns the fully qualified path to the parent collection. */
|
|
1001
|
+
getCollectionPath() {
|
|
1002
|
+
return this.path.popLast();
|
|
1003
|
+
}
|
|
987
1004
|
isEqual(other) {
|
|
988
1005
|
return (other !== null && ResourcePath.comparator(this.path, other.path) === 0);
|
|
989
1006
|
}
|
|
@@ -2646,10 +2663,11 @@ class ObjectValue {
|
|
|
2646
2663
|
* from all views.
|
|
2647
2664
|
*/
|
|
2648
2665
|
class MutableDocument {
|
|
2649
|
-
constructor(key, documentType, version, data, documentState) {
|
|
2666
|
+
constructor(key, documentType, version, readTime, data, documentState) {
|
|
2650
2667
|
this.key = key;
|
|
2651
2668
|
this.documentType = documentType;
|
|
2652
2669
|
this.version = version;
|
|
2670
|
+
this.readTime = readTime;
|
|
2653
2671
|
this.data = data;
|
|
2654
2672
|
this.documentState = documentState;
|
|
2655
2673
|
}
|
|
@@ -2658,18 +2676,18 @@ class MutableDocument {
|
|
|
2658
2676
|
* base document for mutations.
|
|
2659
2677
|
*/
|
|
2660
2678
|
static newInvalidDocument(documentKey) {
|
|
2661
|
-
return new MutableDocument(documentKey, 0 /* INVALID */, SnapshotVersion.min(), ObjectValue.empty(), 0 /* SYNCED */);
|
|
2679
|
+
return new MutableDocument(documentKey, 0 /* INVALID */, SnapshotVersion.min(), SnapshotVersion.min(), ObjectValue.empty(), 0 /* SYNCED */);
|
|
2662
2680
|
}
|
|
2663
2681
|
/**
|
|
2664
2682
|
* Creates a new document that is known to exist with the given data at the
|
|
2665
2683
|
* given version.
|
|
2666
2684
|
*/
|
|
2667
2685
|
static newFoundDocument(documentKey, version, value) {
|
|
2668
|
-
return new MutableDocument(documentKey, 1 /* FOUND_DOCUMENT */, version, value, 0 /* SYNCED */);
|
|
2686
|
+
return new MutableDocument(documentKey, 1 /* FOUND_DOCUMENT */, version, SnapshotVersion.min(), value, 0 /* SYNCED */);
|
|
2669
2687
|
}
|
|
2670
2688
|
/** Creates a new document that is known to not exist at the given version. */
|
|
2671
2689
|
static newNoDocument(documentKey, version) {
|
|
2672
|
-
return new MutableDocument(documentKey, 2 /* NO_DOCUMENT */, version, ObjectValue.empty(), 0 /* SYNCED */);
|
|
2690
|
+
return new MutableDocument(documentKey, 2 /* NO_DOCUMENT */, version, SnapshotVersion.min(), ObjectValue.empty(), 0 /* SYNCED */);
|
|
2673
2691
|
}
|
|
2674
2692
|
/**
|
|
2675
2693
|
* Creates a new document that is known to exist at the given version but
|
|
@@ -2677,7 +2695,7 @@ class MutableDocument {
|
|
|
2677
2695
|
* base document).
|
|
2678
2696
|
*/
|
|
2679
2697
|
static newUnknownDocument(documentKey, version) {
|
|
2680
|
-
return new MutableDocument(documentKey, 3 /* UNKNOWN_DOCUMENT */, version, ObjectValue.empty(), 2 /* HAS_COMMITTED_MUTATIONS */);
|
|
2698
|
+
return new MutableDocument(documentKey, 3 /* UNKNOWN_DOCUMENT */, version, SnapshotVersion.min(), ObjectValue.empty(), 2 /* HAS_COMMITTED_MUTATIONS */);
|
|
2681
2699
|
}
|
|
2682
2700
|
/**
|
|
2683
2701
|
* Changes the document type to indicate that it exists and that its version
|
|
@@ -2721,6 +2739,10 @@ class MutableDocument {
|
|
|
2721
2739
|
this.documentState = 1 /* HAS_LOCAL_MUTATIONS */;
|
|
2722
2740
|
return this;
|
|
2723
2741
|
}
|
|
2742
|
+
setReadTime(readTime) {
|
|
2743
|
+
this.readTime = readTime;
|
|
2744
|
+
return this;
|
|
2745
|
+
}
|
|
2724
2746
|
get hasLocalMutations() {
|
|
2725
2747
|
return this.documentState === 1 /* HAS_LOCAL_MUTATIONS */;
|
|
2726
2748
|
}
|
|
@@ -2751,7 +2773,7 @@ class MutableDocument {
|
|
|
2751
2773
|
this.data.isEqual(other.data));
|
|
2752
2774
|
}
|
|
2753
2775
|
mutableCopy() {
|
|
2754
|
-
return new MutableDocument(this.key, this.documentType, this.version, this.data.clone(), this.documentState);
|
|
2776
|
+
return new MutableDocument(this.key, this.documentType, this.version, this.readTime, this.data.clone(), this.documentState);
|
|
2755
2777
|
}
|
|
2756
2778
|
toString() {
|
|
2757
2779
|
return (`Document(${this.key}, ${this.version}, ${JSON.stringify(this.data.value)}, ` +
|
|
@@ -3017,9 +3039,9 @@ class ArrayContainsAnyFilter extends FieldFilter {
|
|
|
3017
3039
|
* just after the provided values.
|
|
3018
3040
|
*/
|
|
3019
3041
|
class Bound {
|
|
3020
|
-
constructor(position,
|
|
3042
|
+
constructor(position, inclusive) {
|
|
3021
3043
|
this.position = position;
|
|
3022
|
-
this.
|
|
3044
|
+
this.inclusive = inclusive;
|
|
3023
3045
|
}
|
|
3024
3046
|
}
|
|
3025
3047
|
/**
|
|
@@ -3041,7 +3063,7 @@ function boundEquals(left, right) {
|
|
|
3041
3063
|
else if (right === null) {
|
|
3042
3064
|
return false;
|
|
3043
3065
|
}
|
|
3044
|
-
if (left.
|
|
3066
|
+
if (left.inclusive !== right.inclusive ||
|
|
3045
3067
|
left.position.length !== right.position.length) {
|
|
3046
3068
|
return false;
|
|
3047
3069
|
}
|
|
@@ -3206,10 +3228,10 @@ function queryToTarget(query) {
|
|
|
3206
3228
|
}
|
|
3207
3229
|
// We need to swap the cursors to match the now-flipped query ordering.
|
|
3208
3230
|
const startAt = queryImpl.endAt
|
|
3209
|
-
? new Bound(queryImpl.endAt.position, !queryImpl.endAt.
|
|
3231
|
+
? new Bound(queryImpl.endAt.position, !queryImpl.endAt.inclusive)
|
|
3210
3232
|
: null;
|
|
3211
3233
|
const endAt = queryImpl.startAt
|
|
3212
|
-
? new Bound(queryImpl.startAt.position, !queryImpl.startAt.
|
|
3234
|
+
? new Bound(queryImpl.startAt.position, !queryImpl.startAt.inclusive)
|
|
3213
3235
|
: null;
|
|
3214
3236
|
// Now return as a LimitType.First query.
|
|
3215
3237
|
queryImpl.memoizedTarget = newTarget(queryImpl.path, queryImpl.collectionGroup, orderBys, queryImpl.filters, queryImpl.limit, startAt, endAt);
|
|
@@ -3837,10 +3859,10 @@ function toQueryTarget(serializer, target) {
|
|
|
3837
3859
|
result.structuredQuery.limit = limit;
|
|
3838
3860
|
}
|
|
3839
3861
|
if (target.startAt) {
|
|
3840
|
-
result.structuredQuery.startAt =
|
|
3862
|
+
result.structuredQuery.startAt = toStartAtCursor(target.startAt);
|
|
3841
3863
|
}
|
|
3842
3864
|
if (target.endAt) {
|
|
3843
|
-
result.structuredQuery.endAt =
|
|
3865
|
+
result.structuredQuery.endAt = toEndAtCursor(target.endAt);
|
|
3844
3866
|
}
|
|
3845
3867
|
return result;
|
|
3846
3868
|
}
|
|
@@ -3862,9 +3884,15 @@ function toOrder(orderBys) {
|
|
|
3862
3884
|
}
|
|
3863
3885
|
return orderBys.map(order => toPropertyOrder(order));
|
|
3864
3886
|
}
|
|
3865
|
-
function
|
|
3887
|
+
function toStartAtCursor(cursor) {
|
|
3888
|
+
return {
|
|
3889
|
+
before: cursor.inclusive,
|
|
3890
|
+
values: cursor.position
|
|
3891
|
+
};
|
|
3892
|
+
}
|
|
3893
|
+
function toEndAtCursor(cursor) {
|
|
3866
3894
|
return {
|
|
3867
|
-
before: cursor.
|
|
3895
|
+
before: !cursor.inclusive,
|
|
3868
3896
|
values: cursor.position
|
|
3869
3897
|
};
|
|
3870
3898
|
}
|
|
@@ -6141,51 +6169,53 @@ function limitToLast(limit) {
|
|
|
6141
6169
|
return new QueryLimitConstraint('limitToLast', limit, "L" /* Last */);
|
|
6142
6170
|
}
|
|
6143
6171
|
class QueryStartAtConstraint extends QueryConstraint {
|
|
6144
|
-
constructor(type, _docOrFields,
|
|
6172
|
+
constructor(type, _docOrFields, _inclusive) {
|
|
6145
6173
|
super();
|
|
6146
6174
|
this.type = type;
|
|
6147
6175
|
this._docOrFields = _docOrFields;
|
|
6148
|
-
this.
|
|
6176
|
+
this._inclusive = _inclusive;
|
|
6149
6177
|
}
|
|
6150
6178
|
_apply(query) {
|
|
6151
|
-
const bound = newQueryBoundFromDocOrFields(query, this.type, this._docOrFields, this.
|
|
6179
|
+
const bound = newQueryBoundFromDocOrFields(query, this.type, this._docOrFields, this._inclusive);
|
|
6152
6180
|
return new Query(query.firestore, query.converter, queryWithStartAt(query._query, bound));
|
|
6153
6181
|
}
|
|
6154
6182
|
}
|
|
6155
6183
|
function startAt(...docOrFields) {
|
|
6156
|
-
return new QueryStartAtConstraint('startAt', docOrFields,
|
|
6184
|
+
return new QueryStartAtConstraint('startAt', docOrFields,
|
|
6185
|
+
/*inclusive=*/ true);
|
|
6157
6186
|
}
|
|
6158
6187
|
function startAfter(...docOrFields) {
|
|
6159
6188
|
return new QueryStartAtConstraint('startAfter', docOrFields,
|
|
6160
|
-
/*
|
|
6189
|
+
/*inclusive=*/ false);
|
|
6161
6190
|
}
|
|
6162
6191
|
class QueryEndAtConstraint extends QueryConstraint {
|
|
6163
|
-
constructor(type, _docOrFields,
|
|
6192
|
+
constructor(type, _docOrFields, _inclusive) {
|
|
6164
6193
|
super();
|
|
6165
6194
|
this.type = type;
|
|
6166
6195
|
this._docOrFields = _docOrFields;
|
|
6167
|
-
this.
|
|
6196
|
+
this._inclusive = _inclusive;
|
|
6168
6197
|
}
|
|
6169
6198
|
_apply(query) {
|
|
6170
|
-
const bound = newQueryBoundFromDocOrFields(query, this.type, this._docOrFields, this.
|
|
6199
|
+
const bound = newQueryBoundFromDocOrFields(query, this.type, this._docOrFields, this._inclusive);
|
|
6171
6200
|
return new Query(query.firestore, query.converter, queryWithEndAt(query._query, bound));
|
|
6172
6201
|
}
|
|
6173
6202
|
}
|
|
6174
6203
|
function endBefore(...docOrFields) {
|
|
6175
|
-
return new QueryEndAtConstraint('endBefore', docOrFields,
|
|
6204
|
+
return new QueryEndAtConstraint('endBefore', docOrFields,
|
|
6205
|
+
/*inclusive=*/ false);
|
|
6176
6206
|
}
|
|
6177
6207
|
function endAt(...docOrFields) {
|
|
6178
|
-
return new QueryEndAtConstraint('endAt', docOrFields, /*
|
|
6208
|
+
return new QueryEndAtConstraint('endAt', docOrFields, /*inclusive=*/ true);
|
|
6179
6209
|
}
|
|
6180
6210
|
/** Helper function to create a bound from a document or fields */
|
|
6181
|
-
function newQueryBoundFromDocOrFields(query, methodName, docOrFields,
|
|
6211
|
+
function newQueryBoundFromDocOrFields(query, methodName, docOrFields, inclusive) {
|
|
6182
6212
|
docOrFields[0] = util.getModularInstance(docOrFields[0]);
|
|
6183
6213
|
if (docOrFields[0] instanceof DocumentSnapshot) {
|
|
6184
|
-
return newQueryBoundFromDocument(query._query, query.firestore._databaseId, methodName, docOrFields[0]._document,
|
|
6214
|
+
return newQueryBoundFromDocument(query._query, query.firestore._databaseId, methodName, docOrFields[0]._document, inclusive);
|
|
6185
6215
|
}
|
|
6186
6216
|
else {
|
|
6187
6217
|
const reader = newUserDataReader(query.firestore);
|
|
6188
|
-
return newQueryBoundFromFields(query._query, query.firestore._databaseId, reader, methodName, docOrFields,
|
|
6218
|
+
return newQueryBoundFromFields(query._query, query.firestore._databaseId, reader, methodName, docOrFields, inclusive);
|
|
6189
6219
|
}
|
|
6190
6220
|
}
|
|
6191
6221
|
function newQueryFilter(query, methodName, dataReader, databaseId, fieldPath, op, value) {
|
|
@@ -6243,7 +6273,7 @@ function newQueryOrderBy(query, fieldPath, direction) {
|
|
|
6243
6273
|
* of the query or if any of the fields in the order by are an uncommitted
|
|
6244
6274
|
* server timestamp.
|
|
6245
6275
|
*/
|
|
6246
|
-
function newQueryBoundFromDocument(query, databaseId, methodName, doc,
|
|
6276
|
+
function newQueryBoundFromDocument(query, databaseId, methodName, doc, inclusive) {
|
|
6247
6277
|
if (!doc) {
|
|
6248
6278
|
throw new FirestoreError(Code.NOT_FOUND, `Can't use a DocumentSnapshot that doesn't exist for ` +
|
|
6249
6279
|
`${methodName}().`);
|
|
@@ -6280,12 +6310,12 @@ function newQueryBoundFromDocument(query, databaseId, methodName, doc, before) {
|
|
|
6280
6310
|
}
|
|
6281
6311
|
}
|
|
6282
6312
|
}
|
|
6283
|
-
return new Bound(components,
|
|
6313
|
+
return new Bound(components, inclusive);
|
|
6284
6314
|
}
|
|
6285
6315
|
/**
|
|
6286
6316
|
* Converts a list of field values to a `Bound` for the given query.
|
|
6287
6317
|
*/
|
|
6288
|
-
function newQueryBoundFromFields(query, databaseId, dataReader, methodName, values,
|
|
6318
|
+
function newQueryBoundFromFields(query, databaseId, dataReader, methodName, values, inclusive) {
|
|
6289
6319
|
// Use explicit order by's because it has to match the query the user made
|
|
6290
6320
|
const orderBy = query.explicitOrderBy;
|
|
6291
6321
|
if (values.length > orderBy.length) {
|
|
@@ -6322,7 +6352,7 @@ function newQueryBoundFromFields(query, databaseId, dataReader, methodName, valu
|
|
|
6322
6352
|
components.push(wrapped);
|
|
6323
6353
|
}
|
|
6324
6354
|
}
|
|
6325
|
-
return new Bound(components,
|
|
6355
|
+
return new Bound(components, inclusive);
|
|
6326
6356
|
}
|
|
6327
6357
|
/**
|
|
6328
6358
|
* Parses the given `documentIdValue` into a `ReferenceValue`, throwing
|