@firebase/firestore 3.8.0 → 3.8.1

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.
Files changed (44) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/dist/firestore/src/api/reference_impl.d.ts +2 -1
  3. package/dist/firestore/src/lite-api/query.d.ts +14 -12
  4. package/dist/firestore/src/local/overlayed_document.d.ts +8 -4
  5. package/dist/firestore/test/unit/local/counting_query_engine.d.ts +12 -21
  6. package/dist/index.d.ts +2 -1
  7. package/dist/index.esm2017.js +36 -20
  8. package/dist/index.esm2017.js.map +1 -1
  9. package/dist/index.esm5.js +38 -20
  10. package/dist/index.esm5.js.map +1 -1
  11. package/dist/index.node.cjs.js +36 -17
  12. package/dist/index.node.cjs.js.map +1 -1
  13. package/dist/index.node.mjs +36 -17
  14. package/dist/index.node.mjs.map +1 -1
  15. package/dist/index.rn.js +36 -20
  16. package/dist/index.rn.js.map +1 -1
  17. package/dist/internal.d.ts +25 -18
  18. package/dist/lite/firestore/src/api/reference_impl.d.ts +2 -1
  19. package/dist/lite/firestore/src/lite-api/query.d.ts +14 -12
  20. package/dist/lite/firestore/src/local/overlayed_document.d.ts +8 -4
  21. package/dist/lite/firestore/test/unit/local/counting_query_engine.d.ts +12 -21
  22. package/dist/lite/index.browser.esm2017.js +16 -14
  23. package/dist/lite/index.browser.esm2017.js.map +1 -1
  24. package/dist/lite/index.browser.esm5.js +17 -15
  25. package/dist/lite/index.browser.esm5.js.map +1 -1
  26. package/dist/lite/index.node.cjs.js +16 -14
  27. package/dist/lite/index.node.cjs.js.map +1 -1
  28. package/dist/lite/index.node.mjs +16 -14
  29. package/dist/lite/index.node.mjs.map +1 -1
  30. package/dist/lite/index.rn.esm2017.js +16 -14
  31. package/dist/lite/index.rn.esm2017.js.map +1 -1
  32. package/dist/lite/internal.d.ts +15 -13
  33. package/dist/lite/packages/firestore/dist/lite/index.browser.esm2017.d.ts +15 -13
  34. package/dist/lite/packages/firestore/src/api/reference_impl.d.ts +2 -1
  35. package/dist/lite/packages/firestore/src/lite-api/query.d.ts +14 -12
  36. package/dist/lite/packages/firestore/src/local/overlayed_document.d.ts +8 -4
  37. package/dist/lite/packages/firestore/test/unit/local/counting_query_engine.d.ts +12 -21
  38. package/dist/packages/firestore/dist/index.esm2017.d.ts +17 -14
  39. package/dist/packages/firestore/src/api/reference_impl.d.ts +2 -1
  40. package/dist/packages/firestore/src/lite-api/query.d.ts +14 -12
  41. package/dist/packages/firestore/src/local/overlayed_document.d.ts +8 -4
  42. package/dist/packages/firestore/test/unit/local/counting_query_engine.d.ts +12 -21
  43. package/dist/private.d.ts +10 -5
  44. package/package.json +6 -6
package/dist/index.rn.js CHANGED
@@ -70,7 +70,7 @@ v.MOCK_USER = new v("mock-user");
70
70
  * See the License for the specific language governing permissions and
71
71
  * limitations under the License.
72
72
  */
73
- let V = "9.15.0";
73
+ let V = "9.16.0";
74
74
 
75
75
  /**
76
76
  * @license
@@ -3011,6 +3011,14 @@ function xe(t) {
3011
3011
  // the same description, such as the int 3 and the string "3". So we should
3012
3012
  // add the types in here somehow, too.
3013
3013
  return t.field.canonicalString() + t.op.toString() + ce(t.value);
3014
+ if (De(t))
3015
+ // Older SDK versions use an implicit AND operation between their filters.
3016
+ // In the new SDK versions, the developer may use an explicit AND filter.
3017
+ // To stay consistent with the old usages, we add a special case to ensure
3018
+ // the canonical ID for these two are the same. For example:
3019
+ // `col.whereEquals("a", 1).whereEquals("b", 2)` should have the same
3020
+ // canonical ID as `col.where(and(equals("a",1), equals("b",2)))`.
3021
+ return t.filters.map((t => xe(t))).join(",");
3014
3022
  {
3015
3023
  // filter instanceof CompositeFilter
3016
3024
  const e = t.filters.map((t => xe(t))).join(",");
@@ -9786,8 +9794,10 @@ function yo(t, e) {
9786
9794
  class Io {
9787
9795
  constructor(t,
9788
9796
  /**
9789
- * The fields that are locally mutated by patch mutations. If the overlayed
9790
- * document is from set or delete mutations, this returns null.
9797
+ * The fields that are locally mutated by patch mutations.
9798
+ *
9799
+ * If the overlayed document is from set or delete mutations, this is `null`.
9800
+ * If there is no overlay (mutation) for the document, this is an empty `FieldMask`.
9791
9801
  */
9792
9802
  e) {
9793
9803
  this.overlayedDocument = t, this.mutatedFields = e;
@@ -9900,8 +9910,11 @@ class Io {
9900
9910
  // NOTE: we recalculate when `overlay` is undefined as well, because there
9901
9911
  // might be a patch mutation whose precondition does not match before the
9902
9912
  // change (hence overlay is undefined), but would now match.
9903
- s.has(e.key) && (void 0 === o || o.mutation instanceof ns) ? i = i.insert(e.key, e) : void 0 !== o && (r.set(e.key, o.mutation.getFieldMask()),
9904
- Xn(o.mutation, e, o.mutation.getFieldMask(), st.now()));
9913
+ s.has(e.key) && (void 0 === o || o.mutation instanceof ns) ? i = i.insert(e.key, e) : void 0 !== o ? (r.set(e.key, o.mutation.getFieldMask()),
9914
+ Xn(o.mutation, e, o.mutation.getFieldMask(), st.now())) :
9915
+ // no overlay exists
9916
+ // Using EMPTY to indicate there is no overlay for the document.
9917
+ r.set(e.key, Xe.empty());
9905
9918
  })), this.recalculateAndSaveOverlays(t, i).next((t => (t.forEach(((t, e) => r.set(t, e))),
9906
9919
  e.forEach(((t, e) => {
9907
9920
  var n;
@@ -19057,13 +19070,14 @@ function rl(t, e, ...n) {
19057
19070
  }
19058
19071
 
19059
19072
  /**
19060
- * Creates a {@link QueryCompositeFilterConstraint} that performs a logical OR
19061
- * of all the provided {@link QueryFilterConstraint}s.
19073
+ * Creates a new {@link QueryCompositeFilterConstraint} that is a disjunction of
19074
+ * the given filter constraints. A disjunction filter includes a document if it
19075
+ * satisfies any of the given filters.
19062
19076
  *
19063
- * @param queryConstraints - Optional. The {@link QueryFilterConstraint}s
19064
- * for OR operation. These must be created with calls to {@link where},
19065
- * {@link or}, or {@link and}.
19066
- * @returns The created {@link QueryCompositeFilterConstraint}.
19077
+ * @param queryConstraints - Optional. The list of
19078
+ * {@link QueryFilterConstraint}s to perform a disjunction for. These must be
19079
+ * created with calls to {@link where}, {@link or}, or {@link and}.
19080
+ * @returns The newly created {@link QueryCompositeFilterConstraint}.
19067
19081
  * @internal TODO remove this internal tag with OR Query support in the server
19068
19082
  */ function al(...t) {
19069
19083
  // Only support QueryFilterConstraints
@@ -19071,13 +19085,14 @@ function rl(t, e, ...n) {
19071
19085
  }
19072
19086
 
19073
19087
  /**
19074
- * Creates a {@link QueryCompositeFilterConstraint} that performs a logical AND
19075
- * of all the provided {@link QueryFilterConstraint}s.
19088
+ * Creates a new {@link QueryCompositeFilterConstraint} that is a conjunction of
19089
+ * the given filter constraints. A conjunction filter includes a document if it
19090
+ * satisfies all of the given filters.
19076
19091
  *
19077
- * @param queryConstraints - Optional. The {@link QueryFilterConstraint}s
19078
- * for AND operation. These must be created with calls to {@link where},
19079
- * {@link or}, or {@link and}.
19080
- * @returns The created {@link QueryCompositeFilterConstraint}.
19092
+ * @param queryConstraints - Optional. The list of
19093
+ * {@link QueryFilterConstraint}s to perform a conjunction for. These must be
19094
+ * created with calls to {@link where}, {@link or}, or {@link and}.
19095
+ * @returns The newly created {@link QueryCompositeFilterConstraint}.
19081
19096
  * @internal TODO remove this internal tag with OR Query support in the server
19082
19097
  */ function hl(...t) {
19083
19098
  // Only support QueryFilterConstraints
@@ -19857,7 +19872,8 @@ class $l extends Vl {
19857
19872
 
19858
19873
  /**
19859
19874
  * Executes the query and returns the results as a `QuerySnapshot` from cache.
19860
- * Returns an error if the document is not currently cached.
19875
+ * Returns an empty result set if no documents matching the query are currently
19876
+ * cached.
19861
19877
  *
19862
19878
  * @returns A `Promise` that will be resolved with the results of the query.
19863
19879
  */ function Ul(t) {
@@ -20540,9 +20556,9 @@ function df(t, e) {
20540
20556
  return s = Object.assign({
20541
20557
  useFetchStreams: e
20542
20558
  }, s), r._setSettings(s), r;
20543
- }), "PUBLIC").setMultipleInstances(!0)), s(P, "3.8.0", t),
20559
+ }), "PUBLIC").setMultipleInstances(!0)), s(P, "3.8.1", t),
20544
20560
  // BUILD_TARGET will be replaced by values like esm5, esm2017, cjs5, etc during the compilation
20545
- s(P, "3.8.0", "esm2017");
20561
+ s(P, "3.8.1", "esm2017");
20546
20562
  }("rn", /* useFetchStreams= */ !1);
20547
20563
 
20548
20564
  export { Vl as AbstractUserDataWriter, Ca as AggregateField, xa as AggregateQuerySnapshot, Eh as Bytes, rh as CACHE_SIZE_UNLIMITED, Ea as CollectionReference, Ia as DocumentReference, xl as DocumentSnapshot, Ah as FieldPath, bh as FieldValue, oh as Firestore, q as FirestoreError, Ph as GeoPoint, ih as LoadBundleTask, Ta as Query, cl as QueryCompositeFilterConstraint, il as QueryConstraint, Nl as QueryDocumentSnapshot, pl as QueryEndAtConstraint, ol as QueryFieldFilterConstraint, dl as QueryLimitConstraint, ll as QueryOrderByConstraint, kl as QuerySnapshot, ml as QueryStartAtConstraint, Cl as SnapshotMetadata, st as Timestamp, sf as Transaction, ef as WriteBatch, $t as _DatabaseId, at as _DocumentKey, Y as _EmptyAppCheckTokenProvider, G as _EmptyAuthCredentialsProvider, ct as _FieldPath, _a as _cast, $ as _debugAssert, jt as _isBase64Available, k as _logWarn, ha as _validateIsNotUsedTogether, Wl as addDoc, Xl as aggregateQuerySnapshotEqual, hl as and, af as arrayRemove, cf as arrayUnion, _h as clearIndexedDbPersistence, Aa as collection, Ra as collectionGroup, pa as connectFirestoreEmulator, jl as deleteDoc, of as deleteField, gh as disableNetwork, ba as doc, Rh as documentId, lh as enableIndexedDbPersistence, fh as enableMultiTabIndexedDbPersistence, mh as enableNetwork, Tl as endAt, Il as endBefore, ah as ensureFirestoreConfigured, Jl as executeWrite, Zl as getCountFromServer, Fl as getDoc, Bl as getDocFromCache, Ll as getDocFromServer, ql as getDocs, Ul as getDocsFromCache, Kl as getDocsFromServer, ch as getFirestore, hf as increment, uh as initializeFirestore, _l as limit, wl as limitToLast, ph as loadBundle, Ih as namedQuery, zl as onSnapshot, Hl as onSnapshotsInSync, al as or, fl as orderBy, rl as query, va as queryEqual, Pa as refEqual, rf as runTransaction, uf as serverTimestamp, Gl as setDoc, ff as setIndexConfiguration, C as setLogLevel, Ml as snapshotEqual, yl as startAfter, gl as startAt, yh as terminate, Ql as updateDoc, wh as waitForPendingWrites, ul as where, lf as writeBatch };