@firebase/firestore 3.4.4-canary.2dd99ae2d → 3.4.4-canary.7f959622d

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 (43) hide show
  1. package/dist/firestore/src/core/target.d.ts +8 -4
  2. package/dist/firestore/src/lite-api/query.d.ts +2 -2
  3. package/dist/firestore/src/local/indexeddb_schema.d.ts +121 -7
  4. package/dist/firestore/test/util/helpers.d.ts +1 -1
  5. package/dist/index.esm2017.js +2233 -2144
  6. package/dist/index.esm2017.js.map +1 -1
  7. package/dist/index.esm5.js +2964 -2912
  8. package/dist/index.esm5.js.map +1 -1
  9. package/dist/index.node.cjs.js +199 -90
  10. package/dist/index.node.cjs.js.map +1 -1
  11. package/dist/index.node.mjs +199 -90
  12. package/dist/index.node.mjs.map +1 -1
  13. package/dist/index.rn.js +2183 -2090
  14. package/dist/index.rn.js.map +1 -1
  15. package/dist/internal.d.ts +2 -2
  16. package/dist/lite/firestore/src/core/target.d.ts +8 -4
  17. package/dist/lite/firestore/src/lite-api/query.d.ts +2 -2
  18. package/dist/lite/firestore/src/local/indexeddb_schema.d.ts +121 -7
  19. package/dist/lite/firestore/test/util/helpers.d.ts +1 -1
  20. package/dist/lite/index.browser.esm2017.js +301 -298
  21. package/dist/lite/index.browser.esm2017.js.map +1 -1
  22. package/dist/lite/index.browser.esm5.js +327 -326
  23. package/dist/lite/index.browser.esm5.js.map +1 -1
  24. package/dist/lite/index.node.cjs.js +36 -29
  25. package/dist/lite/index.node.cjs.js.map +1 -1
  26. package/dist/lite/index.node.mjs +36 -29
  27. package/dist/lite/index.node.mjs.map +1 -1
  28. package/dist/lite/index.rn.esm2017.js +301 -298
  29. package/dist/lite/index.rn.esm2017.js.map +1 -1
  30. package/dist/lite/internal.d.ts +2 -2
  31. package/dist/lite/packages/firestore/dist/lite/index.browser.esm2017.d.ts +90 -90
  32. package/dist/lite/packages/firestore/src/core/target.d.ts +8 -4
  33. package/dist/lite/packages/firestore/src/lite-api/query.d.ts +2 -2
  34. package/dist/lite/packages/firestore/src/local/indexeddb_schema.d.ts +121 -7
  35. package/dist/lite/packages/firestore/test/util/helpers.d.ts +1 -1
  36. package/dist/lite/private.d.ts +2 -2
  37. package/dist/packages/firestore/dist/index.esm2017.d.ts +61 -61
  38. package/dist/packages/firestore/src/core/target.d.ts +8 -4
  39. package/dist/packages/firestore/src/lite-api/query.d.ts +2 -2
  40. package/dist/packages/firestore/src/local/indexeddb_schema.d.ts +121 -7
  41. package/dist/packages/firestore/test/util/helpers.d.ts +1 -1
  42. package/dist/private.d.ts +2 -2
  43. package/package.json +9 -9
@@ -66,7 +66,7 @@ f.MOCK_USER = new f("mock-user");
66
66
  * See the License for the specific language governing permissions and
67
67
  * limitations under the License.
68
68
  */
69
- let d = "9.6.5-canary.2dd99ae2d";
69
+ let d = "9.6.5-canary.7f959622d";
70
70
 
71
71
  /**
72
72
  * @license
@@ -2259,7 +2259,6 @@ function Zt(t, n) {
2259
2259
  }
2260
2260
  }
2261
2261
 
2262
- // TODO(indexing): Change Bound.before to "inclusive"
2263
2262
  /**
2264
2263
  * Represents a bound of a query.
2265
2264
  *
@@ -2275,7 +2274,7 @@ function Zt(t, n) {
2275
2274
  * just after the provided values.
2276
2275
  */ class sn {
2277
2276
  constructor(t, n) {
2278
- this.position = t, this.before = n;
2277
+ this.position = t, this.inclusive = n;
2279
2278
  }
2280
2279
  }
2281
2280
 
@@ -2294,7 +2293,7 @@ function un(t, n) {
2294
2293
  function cn(t, n) {
2295
2294
  if (null === t) return null === n;
2296
2295
  if (null === n) return !1;
2297
- if (t.before !== n.before || t.position.length !== n.position.length) return !1;
2296
+ if (t.inclusive !== n.inclusive || t.position.length !== n.position.length) return !1;
2298
2297
  for (let e = 0; e < t.position.length; e++) {
2299
2298
  if (!qt(t.position[e], n.position[e])) return !1;
2300
2299
  }
@@ -2400,7 +2399,7 @@ function dn(t) {
2400
2399
  t.push(new on(e.field, n));
2401
2400
  }
2402
2401
  // We need to swap the cursors to match the now-flipped query ordering.
2403
- const e = n.endAt ? new sn(n.endAt.position, !n.endAt.before) : null, r = n.startAt ? new sn(n.startAt.position, !n.startAt.before) : null;
2402
+ const e = n.endAt ? new sn(n.endAt.position, !n.endAt.inclusive) : null, r = n.startAt ? new sn(n.startAt.position, !n.startAt.inclusive) : null;
2404
2403
  // Now return as a LimitType.First query.
2405
2404
  n.S = Yt(n.path, n.collectionGroup, t, n.filters, n.limit, e, r);
2406
2405
  }
@@ -2773,7 +2772,7 @@ function Ln(t, n) {
2773
2772
  function kn(t, n) {
2774
2773
  const e = function(t) {
2775
2774
  const n = Z.fromString(t);
2776
- return b(Jn(n)), n;
2775
+ return b(Kn(n)), n;
2777
2776
  }(n);
2778
2777
  if (e.get(1) !== t.databaseId.projectId) throw new U(R, "Tried to deserialize key from different project: " + e.get(1) + " vs " + t.databaseId.projectId);
2779
2778
  if (e.get(3) !== t.databaseId.database) throw new U(R, "Tried to deserialize key from different database: " + e.get(3) + " vs " + t.databaseId.database);
@@ -2820,7 +2819,7 @@ function zn(t, n) {
2820
2819
  delete: Ln(t, n.key)
2821
2820
  }; else if (n instanceof Pn) e = {
2822
2821
  update: Mn(t, n.key, n.data),
2823
- updateMask: Kn(n.fieldMask)
2822
+ updateMask: Hn(n.fieldMask)
2824
2823
  }; else {
2825
2824
  if (!(n instanceof Nn)) return v();
2826
2825
  e = {
@@ -2878,34 +2877,34 @@ function Qn(t, n) {
2878
2877
  if ("==" /* EQUAL */ === t.op) {
2879
2878
  if (Mt(t.value)) return {
2880
2879
  unaryFilter: {
2881
- field: Hn(t.field),
2880
+ field: Yn(t.field),
2882
2881
  op: "IS_NAN"
2883
2882
  }
2884
2883
  };
2885
2884
  if (jt(t.value)) return {
2886
2885
  unaryFilter: {
2887
- field: Hn(t.field),
2886
+ field: Yn(t.field),
2888
2887
  op: "IS_NULL"
2889
2888
  }
2890
2889
  };
2891
2890
  } else if ("!=" /* NOT_EQUAL */ === t.op) {
2892
2891
  if (Mt(t.value)) return {
2893
2892
  unaryFilter: {
2894
- field: Hn(t.field),
2893
+ field: Yn(t.field),
2895
2894
  op: "IS_NOT_NAN"
2896
2895
  }
2897
2896
  };
2898
2897
  if (jt(t.value)) return {
2899
2898
  unaryFilter: {
2900
- field: Hn(t.field),
2899
+ field: Yn(t.field),
2901
2900
  op: "IS_NOT_NULL"
2902
2901
  }
2903
2902
  };
2904
2903
  }
2905
2904
  return {
2906
2905
  fieldFilter: {
2907
- field: Hn(t.field),
2908
- op: Yn(t.op),
2906
+ field: Yn(t.field),
2907
+ op: Wn(t.op),
2909
2908
  value: t.value
2910
2909
  }
2911
2910
  };
@@ -2925,8 +2924,8 @@ function Qn(t, n) {
2925
2924
  // visible for testing
2926
2925
  function(t) {
2927
2926
  return {
2928
- field: Hn(t.field),
2929
- direction: Wn(t.dir)
2927
+ field: Yn(t.field),
2928
+ direction: Gn(t.dir)
2930
2929
  };
2931
2930
  }(t)));
2932
2931
  }(n.orderBy);
@@ -2936,41 +2935,43 @@ function Qn(t, n) {
2936
2935
  value: n
2937
2936
  };
2938
2937
  }(t, n.limit);
2939
- return null !== o && (e.structuredQuery.limit = o), n.startAt && (e.structuredQuery.startAt = Gn(n.startAt)),
2940
- n.endAt && (e.structuredQuery.endAt = Gn(n.endAt)), e;
2938
+ var u;
2939
+ return null !== o && (e.structuredQuery.limit = o), n.startAt && (e.structuredQuery.startAt = {
2940
+ before: (u = n.startAt).inclusive,
2941
+ values: u.position
2942
+ }), n.endAt && (e.structuredQuery.endAt = function(t) {
2943
+ return {
2944
+ before: !t.inclusive,
2945
+ values: t.position
2946
+ };
2947
+ }
2948
+ // visible for testing
2949
+ (n.endAt)), e;
2941
2950
  }
2942
2951
 
2943
2952
  function Gn(t) {
2944
- return {
2945
- before: t.before,
2946
- values: t.position
2947
- };
2948
- }
2949
-
2950
- // visible for testing
2951
- function Wn(t) {
2952
2953
  return Dn[t];
2953
2954
  }
2954
2955
 
2955
2956
  // visible for testing
2956
- function Yn(t) {
2957
+ function Wn(t) {
2957
2958
  return $n[t];
2958
2959
  }
2959
2960
 
2960
- function Hn(t) {
2961
+ function Yn(t) {
2961
2962
  return {
2962
2963
  fieldPath: t.canonicalString()
2963
2964
  };
2964
2965
  }
2965
2966
 
2966
- function Kn(t) {
2967
+ function Hn(t) {
2967
2968
  const n = [];
2968
2969
  return t.fields.forEach((t => n.push(t.canonicalString()))), {
2969
2970
  fieldPaths: n
2970
2971
  };
2971
2972
  }
2972
2973
 
2973
- function Jn(t) {
2974
+ function Kn(t) {
2974
2975
  // Resource names have at least 4 components (project ID, database ID)
2975
2976
  return t.length >= 4 && "projects" === t.get(0) && "databases" === t.get(2);
2976
2977
  }
@@ -2990,7 +2991,7 @@ function Jn(t) {
2990
2991
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
2991
2992
  * See the License for the specific language governing permissions and
2992
2993
  * limitations under the License.
2993
- */ function Xn(t) {
2994
+ */ function Jn(t) {
2994
2995
  return new Sn(t, /* useProto3Json= */ !0);
2995
2996
  }
2996
2997
 
@@ -3019,7 +3020,7 @@ function Jn(t) {
3019
3020
  * base delay. This prevents clients from accidentally synchronizing their
3020
3021
  * delays causing spikes of load to the backend.
3021
3022
  */
3022
- class Zn {
3023
+ class Xn {
3023
3024
  constructor(
3024
3025
  /**
3025
3026
  * The AsyncQueue to run backoff operations on.
@@ -3117,7 +3118,7 @@ class Zn {
3117
3118
  * An implementation of Datastore that exposes additional state for internal
3118
3119
  * consumption.
3119
3120
  */
3120
- class te extends class {} {
3121
+ class Zn extends class {} {
3121
3122
  constructor(t, n, e, r) {
3122
3123
  super(), this.authCredentials = t, this.appCheckCredentials = n, this.K = e, this.q = r,
3123
3124
  this.J = !1;
@@ -3144,14 +3145,14 @@ class te extends class {} {
3144
3145
 
3145
3146
  // TODO(firestorexp): Make sure there is only one Datastore instance per
3146
3147
  // firestore-exp client.
3147
- async function ne(t, n) {
3148
+ async function te(t, n) {
3148
3149
  const e = E(t), r = jn(e.q) + "/documents", s = {
3149
3150
  writes: n.map((t => zn(e.q, t)))
3150
3151
  };
3151
3152
  await e.m("Commit", r, s);
3152
3153
  }
3153
3154
 
3154
- async function ee(t, n) {
3155
+ async function ne(t, n) {
3155
3156
  const e = E(t), r = jn(e.q) + "/documents", s = {
3156
3157
  documents: n.map((t => Ln(e.q, t)))
3157
3158
  }, i = await e.T("BatchGetDocuments", r, s), o = new Map;
@@ -3166,7 +3167,7 @@ async function ee(t, n) {
3166
3167
  })), u;
3167
3168
  }
3168
3169
 
3169
- async function re(t, n) {
3170
+ async function ee(t, n) {
3170
3171
  const e = E(t), r = Qn(e.q, mn(n));
3171
3172
  return (await e.T("RunQuery", r.parent, {
3172
3173
  structuredQuery: r.structuredQuery
@@ -3195,7 +3196,7 @@ async function re(t, n) {
3195
3196
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
3196
3197
  * See the License for the specific language governing permissions and
3197
3198
  * limitations under the License.
3198
- */ const se = new Map;
3199
+ */ const re = new Map;
3199
3200
 
3200
3201
  /**
3201
3202
  * An instance map that ensures only one Datastore exists per Firestore
@@ -3206,17 +3207,17 @@ async function re(t, n) {
3206
3207
  * instance. Callers must invoke removeComponents() when the Firestore
3207
3208
  * instance is terminated.
3208
3209
  */
3209
- function ie(t) {
3210
+ function se(t) {
3210
3211
  if (t._terminated) throw new U(F, "The client has already been terminated.");
3211
- if (!se.has(t)) {
3212
+ if (!re.has(t)) {
3212
3213
  p("ComponentProvider", "Initializing Datastore");
3213
3214
  const i = function(t) {
3214
3215
  return new mt(t, fetch.bind(null));
3215
3216
  }((n = t._databaseId, e = t.app.options.appId || "", r = t._persistenceKey, s = t._freezeSettings(),
3216
- new K(n, e, r, s.host, s.ssl, s.experimentalForceLongPolling, s.experimentalAutoDetectLongPolling, s.useFetchStreams))), o = Xn(t._databaseId), u = function(t, n, e, r) {
3217
- return new te(t, n, e, r);
3217
+ new K(n, e, r, s.host, s.ssl, s.experimentalForceLongPolling, s.experimentalAutoDetectLongPolling, s.useFetchStreams))), o = Jn(t._databaseId), u = function(t, n, e, r) {
3218
+ return new Zn(t, n, e, r);
3218
3219
  }(t._authCredentials, t._appCheckCredentials, i, o);
3219
- se.set(t, u);
3220
+ re.set(t, u);
3220
3221
  }
3221
3222
  var n, e, r, s;
3222
3223
  /**
@@ -3234,7 +3235,7 @@ function ie(t) {
3234
3235
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
3235
3236
  * See the License for the specific language governing permissions and
3236
3237
  * limitations under the License.
3237
- */ return se.get(t);
3238
+ */ return re.get(t);
3238
3239
  }
3239
3240
 
3240
3241
  /**
@@ -3246,7 +3247,7 @@ function ie(t) {
3246
3247
  * user-supplied `FirestoreSettings` object. This is a separate type so that
3247
3248
  * defaults can be supplied and the value can be checked for equality.
3248
3249
  */
3249
- class oe {
3250
+ class ie {
3250
3251
  constructor(t) {
3251
3252
  var n;
3252
3253
  if (void 0 === t.host) {
@@ -3288,14 +3289,14 @@ class oe {
3288
3289
  * The Cloud Firestore service interface.
3289
3290
  *
3290
3291
  * Do not call this constructor directly. Instead, use {@link getFirestore}.
3291
- */ class ue {
3292
+ */ class oe {
3292
3293
  /** @hideconstructor */
3293
3294
  constructor(t, n, e) {
3294
3295
  this._authCredentials = n, this._appCheckCredentials = e,
3295
3296
  /**
3296
3297
  * Whether it's a Firestore or Firestore Lite instance.
3297
3298
  */
3298
- this.type = "firestore-lite", this._persistenceKey = "(lite)", this._settings = new oe({}),
3299
+ this.type = "firestore-lite", this._persistenceKey = "(lite)", this._settings = new ie({}),
3299
3300
  this._settingsFrozen = !1, t instanceof J ? this._databaseId = t : (this._app = t,
3300
3301
  this._databaseId = function(t) {
3301
3302
  if (!Object.prototype.hasOwnProperty.apply(t.options, [ "projectId" ])) throw new U(R, '"projectId" not provided in firebase.initializeApp.');
@@ -3328,7 +3329,7 @@ class oe {
3328
3329
  }
3329
3330
  _setSettings(t) {
3330
3331
  if (this._settingsFrozen) throw new U(F, "Firestore has already been started and its settings can no longer be changed. You can only modify settings before calling any other methods on a Firestore object.");
3331
- this._settings = new oe(t), void 0 !== t.credentials && (this._authCredentials = function(t) {
3332
+ this._settings = new ie(t), void 0 !== t.credentials && (this._authCredentials = function(t) {
3332
3333
  if (!t) return new B;
3333
3334
  switch (t.type) {
3334
3335
  case "gapi":
@@ -3369,13 +3370,13 @@ class oe {
3369
3370
  * Only ever called once.
3370
3371
  */ _terminate() {
3371
3372
  return function(t) {
3372
- const n = se.get(t);
3373
- n && (p("ComponentProvider", "Removing Datastore"), se.delete(t), n.terminate());
3373
+ const n = re.get(t);
3374
+ n && (p("ComponentProvider", "Removing Datastore"), re.delete(t), n.terminate());
3374
3375
  }(this), Promise.resolve();
3375
3376
  }
3376
3377
  }
3377
3378
 
3378
- function ce(t, n) {
3379
+ function ue(t, n) {
3379
3380
  const e = _getProvider(t, "firestore/lite");
3380
3381
  if (e.isInitialized()) throw new U(F, "Firestore can only be initialized once per app.");
3381
3382
  return e.initialize({
@@ -3391,7 +3392,7 @@ function ce(t, n) {
3391
3392
  * @param app - The {@link @firebase/app#FirebaseApp} instance that the returned `Firestore`
3392
3393
  * instance is associated with.
3393
3394
  * @returns The `Firestore` instance of the provided app.
3394
- */ function ae(n = t()) {
3395
+ */ function ce(n = t()) {
3395
3396
  return _getProvider(n, "firestore/lite").getImmediate();
3396
3397
  }
3397
3398
 
@@ -3407,9 +3408,9 @@ function ce(t, n) {
3407
3408
  * @param port - the emulator port (ex: 9000).
3408
3409
  * @param options.mockUserToken - the mock auth token to use for unit testing
3409
3410
  * Security Rules.
3410
- */ function he(t, n, e, r = {}) {
3411
+ */ function ae(t, n, e, r = {}) {
3411
3412
  var s;
3412
- const i = (t = ut(t, ue))._getSettings();
3413
+ const i = (t = ut(t, oe))._getSettings();
3413
3414
  if ("firestore.googleapis.com" !== i.host && i.host !== n && _("Host has been set in both settings() and useEmulator(), emulator host will be used"),
3414
3415
  t._setSettings(Object.assign(Object.assign({}, i), {
3415
3416
  host: `${n}:${e}`,
@@ -3447,8 +3448,8 @@ function ce(t, n) {
3447
3448
  * @param firestore - The `Firestore` instance to terminate.
3448
3449
  * @returns A `Promise` that is resolved when the instance has been successfully
3449
3450
  * terminated.
3450
- */ function le(t) {
3451
- return t = ut(t, ue), n(t.app, "firestore/lite"), t._delete();
3451
+ */ function he(t) {
3452
+ return t = ut(t, oe), n(t.app, "firestore/lite"), t._delete();
3452
3453
  }
3453
3454
 
3454
3455
  /**
@@ -3488,7 +3489,7 @@ function ce(t, n) {
3488
3489
  * and can be used to write, read, or listen to the location. The document at
3489
3490
  * the referenced location may or may not exist.
3490
3491
  */
3491
- class fe {
3492
+ class le {
3492
3493
  /** @hideconstructor */
3493
3494
  constructor(t,
3494
3495
  /**
@@ -3516,17 +3517,17 @@ class fe {
3516
3517
  /**
3517
3518
  * The collection this `DocumentReference` belongs to.
3518
3519
  */ get parent() {
3519
- return new we(this.firestore, this.converter, this._key.path.popLast());
3520
+ return new de(this.firestore, this.converter, this._key.path.popLast());
3520
3521
  }
3521
3522
  withConverter(t) {
3522
- return new fe(this.firestore, t, this._key);
3523
+ return new le(this.firestore, t, this._key);
3523
3524
  }
3524
3525
  }
3525
3526
 
3526
3527
  /**
3527
3528
  * A `Query` refers to a query which you can read or listen to. You can also
3528
3529
  * construct refined `Query` objects by adding filters and ordering.
3529
- */ class de {
3530
+ */ class fe {
3530
3531
  // This is the lite version of the Query class in the main SDK.
3531
3532
  /** @hideconstructor protected */
3532
3533
  constructor(t,
@@ -3539,14 +3540,14 @@ class fe {
3539
3540
  this.type = "query", this.firestore = t;
3540
3541
  }
3541
3542
  withConverter(t) {
3542
- return new de(this.firestore, t, this._query);
3543
+ return new fe(this.firestore, t, this._query);
3543
3544
  }
3544
3545
  }
3545
3546
 
3546
3547
  /**
3547
3548
  * A `CollectionReference` object can be used for adding documents, getting
3548
3549
  * document references, and querying for documents (using {@link query}).
3549
- */ class we extends de {
3550
+ */ class de extends fe {
3550
3551
  /** @hideconstructor */
3551
3552
  constructor(t, n, e) {
3552
3553
  super(t, n, new an(e)), this._path = e,
@@ -3567,23 +3568,23 @@ class fe {
3567
3568
  * subcollection. If this isn't a subcollection, the reference is null.
3568
3569
  */ get parent() {
3569
3570
  const t = this._path.popLast();
3570
- return t.isEmpty() ? null : new fe(this.firestore,
3571
+ return t.isEmpty() ? null : new le(this.firestore,
3571
3572
  /* converter= */ null, new et(t));
3572
3573
  }
3573
3574
  withConverter(t) {
3574
- return new we(this.firestore, t, this._path);
3575
+ return new de(this.firestore, t, this._path);
3575
3576
  }
3576
3577
  }
3577
3578
 
3578
- function me(t, n, ...e) {
3579
- if (t = l(t), rt("collection", "path", n), t instanceof ue) {
3579
+ function we(t, n, ...e) {
3580
+ if (t = l(t), rt("collection", "path", n), t instanceof oe) {
3580
3581
  const r = Z.fromString(n, ...e);
3581
- return it(r), new we(t, /* converter= */ null, r);
3582
+ return it(r), new de(t, /* converter= */ null, r);
3582
3583
  }
3583
3584
  {
3584
- if (!(t instanceof fe || t instanceof we)) throw new U(R, "Expected first argument to collection() to be a CollectionReference, a DocumentReference or FirebaseFirestore");
3585
+ if (!(t instanceof le || t instanceof de)) throw new U(R, "Expected first argument to collection() to be a CollectionReference, a DocumentReference or FirebaseFirestore");
3585
3586
  const r = t._path.child(Z.fromString(n, ...e));
3586
- return it(r), new we(t.firestore,
3587
+ return it(r), new de(t.firestore,
3587
3588
  /* converter= */ null, r);
3588
3589
  }
3589
3590
  }
@@ -3600,9 +3601,9 @@ function me(t, n, ...e) {
3600
3601
  * collection or subcollection with this ID as the last segment of its path
3601
3602
  * will be included. Cannot contain a slash.
3602
3603
  * @returns The created `Query`.
3603
- */ function pe(t, n) {
3604
- if (t = ut(t, ue), rt("collectionGroup", "collection id", n), n.indexOf("/") >= 0) throw new U(R, `Invalid collection ID '${n}' passed to function collectionGroup(). Collection IDs must not contain '/'.`);
3605
- return new de(t,
3604
+ */ function me(t, n) {
3605
+ if (t = ut(t, oe), rt("collectionGroup", "collection id", n), n.indexOf("/") >= 0) throw new U(R, `Invalid collection ID '${n}' passed to function collectionGroup(). Collection IDs must not contain '/'.`);
3606
+ return new fe(t,
3606
3607
  /* converter= */ null,
3607
3608
  /**
3608
3609
  * Creates a new Query for a collection group query that matches all documents
@@ -3613,19 +3614,19 @@ function me(t, n, ...e) {
3613
3614
  }(n));
3614
3615
  }
3615
3616
 
3616
- function ye(t, n, ...e) {
3617
+ function pe(t, n, ...e) {
3617
3618
  if (t = l(t),
3618
3619
  // We allow omission of 'pathString' but explicitly prohibit passing in both
3619
3620
  // 'undefined' and 'null'.
3620
- 1 === arguments.length && (n = yt.R()), rt("doc", "path", n), t instanceof ue) {
3621
+ 1 === arguments.length && (n = yt.R()), rt("doc", "path", n), t instanceof oe) {
3621
3622
  const r = Z.fromString(n, ...e);
3622
- return st(r), new fe(t,
3623
+ return st(r), new le(t,
3623
3624
  /* converter= */ null, new et(r));
3624
3625
  }
3625
3626
  {
3626
- if (!(t instanceof fe || t instanceof we)) throw new U(R, "Expected first argument to collection() to be a CollectionReference, a DocumentReference or FirebaseFirestore");
3627
+ if (!(t instanceof le || t instanceof de)) throw new U(R, "Expected first argument to collection() to be a CollectionReference, a DocumentReference or FirebaseFirestore");
3627
3628
  const r = t._path.child(Z.fromString(n, ...e));
3628
- return st(r), new fe(t.firestore, t instanceof we ? t.converter : null, new et(r));
3629
+ return st(r), new le(t.firestore, t instanceof de ? t.converter : null, new et(r));
3629
3630
  }
3630
3631
  }
3631
3632
 
@@ -3636,8 +3637,8 @@ function ye(t, n, ...e) {
3636
3637
  * @param right - A reference to compare.
3637
3638
  * @returns true if the references point to the same location in the same
3638
3639
  * Firestore database.
3639
- */ function _e(t, n) {
3640
- return t = l(t), n = l(n), (t instanceof fe || t instanceof we) && (n instanceof fe || n instanceof we) && (t.firestore === n.firestore && t.path === n.path && t.converter === n.converter);
3640
+ */ function ye(t, n) {
3641
+ return t = l(t), n = l(n), (t instanceof le || t instanceof de) && (n instanceof le || n instanceof de) && (t.firestore === n.firestore && t.path === n.path && t.converter === n.converter);
3641
3642
  }
3642
3643
 
3643
3644
  /**
@@ -3648,8 +3649,8 @@ function ye(t, n, ...e) {
3648
3649
  * @param right - A `Query` to compare.
3649
3650
  * @returns true if the references point to the same location in the same
3650
3651
  * Firestore database.
3651
- */ function ge(t, n) {
3652
- return t = l(t), n = l(n), t instanceof de && n instanceof de && (t.firestore === n.firestore && pn(t._query, n._query) && t.converter === n.converter);
3652
+ */ function _e(t, n) {
3653
+ return t = l(t), n = l(n), t instanceof fe && n instanceof fe && (t.firestore === n.firestore && pn(t._query, n._query) && t.converter === n.converter);
3653
3654
  }
3654
3655
 
3655
3656
  /**
@@ -3675,7 +3676,7 @@ function ye(t, n, ...e) {
3675
3676
  *
3676
3677
  * Create a `FieldPath` by providing field names. If more than one field
3677
3678
  * name is provided, the path will point to a nested field in a document.
3678
- */ class ve {
3679
+ */ class ge {
3679
3680
  /**
3680
3681
  * Creates a `FieldPath` from the provided field names. If more than one field
3681
3682
  * name is provided, the path will point to a nested field in a document.
@@ -3699,8 +3700,8 @@ function ye(t, n, ...e) {
3699
3700
  /**
3700
3701
  * Returns a special sentinel `FieldPath` to refer to the ID of a document.
3701
3702
  * It can be used in queries to sort or filter by the document ID.
3702
- */ function be() {
3703
- return new ve("__name__");
3703
+ */ function ve() {
3704
+ return new ge("__name__");
3704
3705
  }
3705
3706
 
3706
3707
  /**
@@ -3721,7 +3722,7 @@ function ye(t, n, ...e) {
3721
3722
  */
3722
3723
  /**
3723
3724
  * An immutable object representing an array of bytes.
3724
- */ class Ee {
3725
+ */ class be {
3725
3726
  /** @hideconstructor */
3726
3727
  constructor(t) {
3727
3728
  this._byteString = t;
@@ -3733,7 +3734,7 @@ function ye(t, n, ...e) {
3733
3734
  * @param base64 - The Base64 string used to create the `Bytes` object.
3734
3735
  */ static fromBase64String(t) {
3735
3736
  try {
3736
- return new Ee(Rt.fromBase64String(t));
3737
+ return new be(Rt.fromBase64String(t));
3737
3738
  } catch (t) {
3738
3739
  throw new U(R, "Failed to construct data from Base64 string: " + t);
3739
3740
  }
@@ -3743,7 +3744,7 @@ function ye(t, n, ...e) {
3743
3744
  *
3744
3745
  * @param array - The Uint8Array used to create the `Bytes` object.
3745
3746
  */ static fromUint8Array(t) {
3746
- return new Ee(Rt.fromUint8Array(t));
3747
+ return new be(Rt.fromUint8Array(t));
3747
3748
  }
3748
3749
  /**
3749
3750
  * Returns the underlying bytes as a Base64-encoded string.
@@ -3795,7 +3796,7 @@ function ye(t, n, ...e) {
3795
3796
  /**
3796
3797
  * Sentinel values that can be used when writing document fields with `set()`
3797
3798
  * or `update()`.
3798
- */ class Te {
3799
+ */ class Ee {
3799
3800
  /**
3800
3801
  * @param _methodName - The public API endpoint that returns this class.
3801
3802
  * @hideconstructor
@@ -3827,7 +3828,7 @@ function ye(t, n, ...e) {
3827
3828
  *
3828
3829
  * Latitude values are in the range of [-90, 90].
3829
3830
  * Longitude values are in the range of [-180, 180].
3830
- */ class Ie {
3831
+ */ class Te {
3831
3832
  /**
3832
3833
  * Creates a new immutable `GeoPoint` object with the provided latitude and
3833
3834
  * longitude values.
@@ -3886,9 +3887,9 @@ function ye(t, n, ...e) {
3886
3887
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
3887
3888
  * See the License for the specific language governing permissions and
3888
3889
  * limitations under the License.
3889
- */ const Ae = /^__.*__$/;
3890
+ */ const Ie = /^__.*__$/;
3890
3891
 
3891
- /** The result of parsing document data (e.g. for a setData call). */ class Re {
3892
+ /** The result of parsing document data (e.g. for a setData call). */ class Ae {
3892
3893
  constructor(t, n, e) {
3893
3894
  this.data = t, this.fieldMask = n, this.fieldTransforms = e;
3894
3895
  }
@@ -3897,7 +3898,7 @@ function ye(t, n, ...e) {
3897
3898
  }
3898
3899
  }
3899
3900
 
3900
- /** The result of parsing "update" data (i.e. for an updateData call). */ class Pe {
3901
+ /** The result of parsing "update" data (i.e. for an updateData call). */ class Re {
3901
3902
  constructor(t,
3902
3903
  // The fieldMask does not include document transforms.
3903
3904
  n, e) {
@@ -3908,7 +3909,7 @@ function ye(t, n, ...e) {
3908
3909
  }
3909
3910
  }
3910
3911
 
3911
- function Ve(t) {
3912
+ function Pe(t) {
3912
3913
  switch (t) {
3913
3914
  case 0 /* Set */ :
3914
3915
  // fall through
@@ -3926,7 +3927,7 @@ function Ve(t) {
3926
3927
  }
3927
3928
  }
3928
3929
 
3929
- /** A "context" object passed around while parsing user data. */ class Ne {
3930
+ /** A "context" object passed around while parsing user data. */ class Ve {
3930
3931
  /**
3931
3932
  * Initializes a ParseContext with the given source and path.
3932
3933
  *
@@ -3958,7 +3959,7 @@ function Ve(t) {
3958
3959
  return this.settings.tt;
3959
3960
  }
3960
3961
  /** Returns a new context with the specified settings overwritten. */ nt(t) {
3961
- return new Ne(Object.assign(Object.assign({}, this.settings), t), this.databaseId, this.q, this.ignoreUndefinedProperties, this.fieldTransforms, this.fieldMask);
3962
+ return new Ve(Object.assign(Object.assign({}, this.settings), t), this.databaseId, this.q, this.ignoreUndefinedProperties, this.fieldTransforms, this.fieldMask);
3962
3963
  }
3963
3964
  et(t) {
3964
3965
  var n;
@@ -3985,7 +3986,7 @@ function Ve(t) {
3985
3986
  });
3986
3987
  }
3987
3988
  ut(t) {
3988
- return He(t, this.settings.methodName, this.settings.ct || !1, this.path, this.settings.at);
3989
+ return Ye(t, this.settings.methodName, this.settings.ct || !1, this.path, this.settings.at);
3989
3990
  }
3990
3991
  /** Returns 'true' if 'fieldPath' was traversed when creating this context. */ contains(t) {
3991
3992
  return void 0 !== this.fieldMask.find((n => t.isPrefixOf(n))) || void 0 !== this.fieldTransforms.find((n => t.isPrefixOf(n.field)));
@@ -3997,19 +3998,19 @@ function Ve(t) {
3997
3998
  }
3998
3999
  st(t) {
3999
4000
  if (0 === t.length) throw this.ut("Document fields must not be empty");
4000
- if (Ve(this.tt) && Ae.test(t)) throw this.ut('Document fields cannot begin and end with "__"');
4001
+ if (Pe(this.tt) && Ie.test(t)) throw this.ut('Document fields cannot begin and end with "__"');
4001
4002
  }
4002
4003
  }
4003
4004
 
4004
4005
  /**
4005
4006
  * Helper for parsing raw user input (provided via the API) into internal model
4006
4007
  * classes.
4007
- */ class De {
4008
+ */ class Ne {
4008
4009
  constructor(t, n, e) {
4009
- this.databaseId = t, this.ignoreUndefinedProperties = n, this.q = e || Xn(t);
4010
+ this.databaseId = t, this.ignoreUndefinedProperties = n, this.q = e || Jn(t);
4010
4011
  }
4011
4012
  /** Creates a new top-level parse context. */ ht(t, n, e, r = !1) {
4012
- return new Ne({
4013
+ return new Ve({
4013
4014
  tt: t,
4014
4015
  methodName: n,
4015
4016
  at: e,
@@ -4020,29 +4021,29 @@ function Ve(t) {
4020
4021
  }
4021
4022
  }
4022
4023
 
4023
- function $e(t) {
4024
- const n = t._freezeSettings(), e = Xn(t._databaseId);
4025
- return new De(t._databaseId, !!n.ignoreUndefinedProperties, e);
4024
+ function De(t) {
4025
+ const n = t._freezeSettings(), e = Jn(t._databaseId);
4026
+ return new Ne(t._databaseId, !!n.ignoreUndefinedProperties, e);
4026
4027
  }
4027
4028
 
4028
- /** Parse document data from a set() call. */ function Se(t, n, e, r, s, i = {}) {
4029
+ /** Parse document data from a set() call. */ function $e(t, n, e, r, s, i = {}) {
4029
4030
  const o = t.ht(i.merge || i.mergeFields ? 2 /* MergeSet */ : 0 /* Set */ , n, e, s);
4030
- Qe("Data must be an object, but it was:", o, r);
4031
- const u = Be(r, o);
4031
+ ze("Data must be an object, but it was:", o, r);
4032
+ const u = Me(r, o);
4032
4033
  let c, a;
4033
4034
  if (i.merge) c = new It(o.fieldMask), a = o.fieldTransforms; else if (i.mergeFields) {
4034
4035
  const t = [];
4035
4036
  for (const r of i.mergeFields) {
4036
- const s = Ge(n, r, e);
4037
+ const s = Qe(n, r, e);
4037
4038
  if (!o.contains(s)) throw new U(R, `Field '${s}' is specified in your field mask but missing from your input data.`);
4038
- Ke(t, s) || t.push(s);
4039
+ He(t, s) || t.push(s);
4039
4040
  }
4040
4041
  c = new It(t), a = o.fieldTransforms.filter((t => c.covers(t.field)));
4041
4042
  } else c = null, a = o.fieldTransforms;
4042
- return new Re(new Qt(u), c, a);
4043
+ return new Ae(new Qt(u), c, a);
4043
4044
  }
4044
4045
 
4045
- class Fe extends Te {
4046
+ class Se extends Ee {
4046
4047
  _toFieldTransform(t) {
4047
4048
  if (2 /* MergeSet */ !== t.tt) throw 1 /* Update */ === t.tt ? t.ut(`${this._methodName}() can only appear at the top level of your update data`) : t.ut(`${this._methodName}() cannot be used with set() unless you pass {merge:true}`);
4048
4049
  // No transform to add for a delete, but we need to add it to our
@@ -4050,7 +4051,7 @@ class Fe extends Te {
4050
4051
  return t.fieldMask.push(t.path), null;
4051
4052
  }
4052
4053
  isEqual(t) {
4053
- return t instanceof Fe;
4054
+ return t instanceof Se;
4054
4055
  }
4055
4056
  }
4056
4057
 
@@ -4069,8 +4070,8 @@ class Fe extends Te {
4069
4070
  * context.
4070
4071
  * @param context - The parent context.
4071
4072
  * @param arrayElement - Whether or not the FieldValue has an array.
4072
- */ function xe(t, n, e) {
4073
- return new Ne({
4073
+ */ function Fe(t, n, e) {
4074
+ return new Ve({
4074
4075
  tt: 3 /* Argument */ ,
4075
4076
  at: n.settings.at,
4076
4077
  methodName: t._methodName,
@@ -4078,22 +4079,22 @@ class Fe extends Te {
4078
4079
  }, n.databaseId, n.q, n.ignoreUndefinedProperties);
4079
4080
  }
4080
4081
 
4081
- class qe extends Te {
4082
+ class xe extends Ee {
4082
4083
  _toFieldTransform(t) {
4083
4084
  return new Tn(t.path, new gn);
4084
4085
  }
4085
4086
  isEqual(t) {
4086
- return t instanceof qe;
4087
+ return t instanceof xe;
4087
4088
  }
4088
4089
  }
4089
4090
 
4090
- class Oe extends Te {
4091
+ class qe extends Ee {
4091
4092
  constructor(t, n) {
4092
4093
  super(t), this.lt = n;
4093
4094
  }
4094
4095
  _toFieldTransform(t) {
4095
- const n = xe(this, t,
4096
- /*array=*/ !0), e = this.lt.map((t => Me(t, n))), r = new vn(e);
4096
+ const n = Fe(this, t,
4097
+ /*array=*/ !0), e = this.lt.map((t => je(t, n))), r = new vn(e);
4097
4098
  return new Tn(t.path, r);
4098
4099
  }
4099
4100
  isEqual(t) {
@@ -4102,13 +4103,13 @@ class Oe extends Te {
4102
4103
  }
4103
4104
  }
4104
4105
 
4105
- class Ce extends Te {
4106
+ class Oe extends Ee {
4106
4107
  constructor(t, n) {
4107
4108
  super(t), this.lt = n;
4108
4109
  }
4109
4110
  _toFieldTransform(t) {
4110
- const n = xe(this, t,
4111
- /*array=*/ !0), e = this.lt.map((t => Me(t, n))), r = new bn(e);
4111
+ const n = Fe(this, t,
4112
+ /*array=*/ !0), e = this.lt.map((t => je(t, n))), r = new bn(e);
4112
4113
  return new Tn(t.path, r);
4113
4114
  }
4114
4115
  isEqual(t) {
@@ -4117,7 +4118,7 @@ class Ce extends Te {
4117
4118
  }
4118
4119
  }
4119
4120
 
4120
- class Le extends Te {
4121
+ class Ce extends Ee {
4121
4122
  constructor(t, n) {
4122
4123
  super(t), this.ft = n;
4123
4124
  }
@@ -4131,50 +4132,50 @@ class Le extends Te {
4131
4132
  }
4132
4133
  }
4133
4134
 
4134
- /** Parse update data from an update() call. */ function ke(t, n, e, r) {
4135
+ /** Parse update data from an update() call. */ function Le(t, n, e, r) {
4135
4136
  const s = t.ht(1 /* Update */ , n, e);
4136
- Qe("Data must be an object, but it was:", s, r);
4137
+ ze("Data must be an object, but it was:", s, r);
4137
4138
  const i = [], o = Qt.empty();
4138
4139
  Tt(r, ((t, r) => {
4139
- const u = Ye(n, t, e);
4140
+ const u = We(n, t, e);
4140
4141
  // For Compat types, we have to "extract" the underlying types before
4141
4142
  // performing validation.
4142
4143
  r = l(r);
4143
4144
  const c = s.it(u);
4144
- if (r instanceof Fe)
4145
+ if (r instanceof Se)
4145
4146
  // Add it to the field mask, but don't add anything to updateData.
4146
4147
  i.push(u); else {
4147
- const t = Me(r, c);
4148
+ const t = je(r, c);
4148
4149
  null != t && (i.push(u), o.set(u, t));
4149
4150
  }
4150
4151
  }));
4151
4152
  const u = new It(i);
4152
- return new Pe(o, u, s.fieldTransforms);
4153
+ return new Re(o, u, s.fieldTransforms);
4153
4154
  }
4154
4155
 
4155
- /** Parse update data from a list of field/value arguments. */ function Ue(t, n, e, r, s, i) {
4156
- const o = t.ht(1 /* Update */ , n, e), u = [ Ge(n, r, e) ], c = [ s ];
4156
+ /** Parse update data from a list of field/value arguments. */ function ke(t, n, e, r, s, i) {
4157
+ const o = t.ht(1 /* Update */ , n, e), u = [ Qe(n, r, e) ], c = [ s ];
4157
4158
  if (i.length % 2 != 0) throw new U(R, `Function ${n}() needs to be called with an even number of arguments that alternate between field names and values.`);
4158
- for (let t = 0; t < i.length; t += 2) u.push(Ge(n, i[t])), c.push(i[t + 1]);
4159
+ for (let t = 0; t < i.length; t += 2) u.push(Qe(n, i[t])), c.push(i[t + 1]);
4159
4160
  const a = [], h = Qt.empty();
4160
4161
  // We iterate in reverse order to pick the last value for a field if the
4161
4162
  // user specified the field multiple times.
4162
- for (let t = u.length - 1; t >= 0; --t) if (!Ke(a, u[t])) {
4163
+ for (let t = u.length - 1; t >= 0; --t) if (!He(a, u[t])) {
4163
4164
  const n = u[t];
4164
4165
  let e = c[t];
4165
4166
  // For Compat types, we have to "extract" the underlying types before
4166
4167
  // performing validation.
4167
4168
  e = l(e);
4168
4169
  const r = o.it(n);
4169
- if (e instanceof Fe)
4170
+ if (e instanceof Se)
4170
4171
  // Add it to the field mask, but don't add anything to updateData.
4171
4172
  a.push(n); else {
4172
- const t = Me(e, r);
4173
+ const t = je(e, r);
4173
4174
  null != t && (a.push(n), h.set(n, t));
4174
4175
  }
4175
4176
  }
4176
4177
  const f = new It(a);
4177
- return new Pe(h, f, o.fieldTransforms);
4178
+ return new Re(h, f, o.fieldTransforms);
4178
4179
  }
4179
4180
 
4180
4181
  /**
@@ -4183,8 +4184,8 @@ class Le extends Te {
4183
4184
  *
4184
4185
  * @param allowArrays - Whether the query value is an array that may directly
4185
4186
  * contain additional arrays (e.g. the operand of an `in` query).
4186
- */ function je(t, n, e, r = !1) {
4187
- return Me(e, t.ht(r ? 4 /* ArrayArgument */ : 3 /* Argument */ , n));
4187
+ */ function Ue(t, n, e, r = !1) {
4188
+ return je(e, t.ht(r ? 4 /* ArrayArgument */ : 3 /* Argument */ , n));
4188
4189
  }
4189
4190
 
4190
4191
  /**
@@ -4195,12 +4196,12 @@ class Le extends Te {
4195
4196
  * the source of the data being parsed, etc.
4196
4197
  * @returns The parsed value, or null if the value was a FieldValue sentinel
4197
4198
  * that should not be included in the resulting parsed data.
4198
- */ function Me(t, n) {
4199
- if (ze(
4199
+ */ function je(t, n) {
4200
+ if (Be(
4200
4201
  // Unwrap the API type from the Compat SDK. This will return the API type
4201
4202
  // from firestore-exp.
4202
- t = l(t))) return Qe("Unsupported field value:", n, t), Be(t, n);
4203
- if (t instanceof Te)
4203
+ t = l(t))) return ze("Unsupported field value:", n, t), Me(t, n);
4204
+ if (t instanceof Ee)
4204
4205
  // FieldValues usually parse into transforms (except deleteField())
4205
4206
  // in which case we do not want to include this field in our parsed data
4206
4207
  // (as doing so will overwrite the field directly prior to the transform
@@ -4212,7 +4213,7 @@ class Le extends Te {
4212
4213
  */
4213
4214
  return function(t, n) {
4214
4215
  // Sentinels are only supported with writes, and not within arrays.
4215
- if (!Ve(n.tt)) throw n.ut(`${t._methodName}() can only be used with update() and set()`);
4216
+ if (!Pe(n.tt)) throw n.ut(`${t._methodName}() can only be used with update() and set()`);
4216
4217
  if (!n.path) throw n.ut(`${t._methodName}() is not currently supported inside arrays`);
4217
4218
  const e = t._toFieldTransform(n);
4218
4219
  e && n.fieldTransforms.push(e);
@@ -4242,7 +4243,7 @@ class Le extends Te {
4242
4243
  const e = [];
4243
4244
  let r = 0;
4244
4245
  for (const s of t) {
4245
- let t = Me(s, n.ot(r));
4246
+ let t = je(s, n.ot(r));
4246
4247
  null == t && (
4247
4248
  // Just include nulls in the array for fields being replaced with a
4248
4249
  // sentinel.
@@ -4283,16 +4284,16 @@ class Le extends Te {
4283
4284
  timestampValue: Fn(n.q, e)
4284
4285
  };
4285
4286
  }
4286
- if (t instanceof Ie) return {
4287
+ if (t instanceof Te) return {
4287
4288
  geoPointValue: {
4288
4289
  latitude: t.latitude,
4289
4290
  longitude: t.longitude
4290
4291
  }
4291
4292
  };
4292
- if (t instanceof Ee) return {
4293
+ if (t instanceof be) return {
4293
4294
  bytesValue: xn(n.q, t._byteString)
4294
4295
  };
4295
- if (t instanceof fe) {
4296
+ if (t instanceof le) {
4296
4297
  const e = n.databaseId, r = t.firestore._databaseId;
4297
4298
  if (!r.isEqual(e)) throw n.ut(`Document reference is for database ${r.projectId}/${r.database} but should be for database ${e.projectId}/${e.database}`);
4298
4299
  return {
@@ -4310,13 +4311,13 @@ class Le extends Te {
4310
4311
  */ (t, n);
4311
4312
  }
4312
4313
 
4313
- function Be(t, n) {
4314
+ function Me(t, n) {
4314
4315
  const e = {};
4315
4316
  return !function(t) {
4316
4317
  for (const n in t) if (Object.prototype.hasOwnProperty.call(t, n)) return !1;
4317
4318
  return !0;
4318
4319
  }(t) ? Tt(t, ((t, r) => {
4319
- const s = Me(r, n.et(t));
4320
+ const s = je(r, n.et(t));
4320
4321
  null != s && (e[t] = s);
4321
4322
  })) :
4322
4323
  // If we encounter an empty object, we explicitly add it to the update
@@ -4328,12 +4329,12 @@ function Be(t, n) {
4328
4329
  };
4329
4330
  }
4330
4331
 
4331
- function ze(t) {
4332
- return !("object" != typeof t || null === t || t instanceof Array || t instanceof Date || t instanceof vt || t instanceof Ie || t instanceof Ee || t instanceof fe || t instanceof Te);
4332
+ function Be(t) {
4333
+ return !("object" != typeof t || null === t || t instanceof Array || t instanceof Date || t instanceof vt || t instanceof Te || t instanceof be || t instanceof le || t instanceof Ee);
4333
4334
  }
4334
4335
 
4335
- function Qe(t, n, e) {
4336
- if (!ze(e) || !function(t) {
4336
+ function ze(t, n, e) {
4337
+ if (!Be(e) || !function(t) {
4337
4338
  return "object" == typeof t && null !== t && (Object.getPrototypeOf(t) === Object.prototype || null === Object.getPrototypeOf(t));
4338
4339
  }(e)) {
4339
4340
  const r = ot(e);
@@ -4343,20 +4344,20 @@ function Qe(t, n, e) {
4343
4344
 
4344
4345
  /**
4345
4346
  * Helper that calls fromDotSeparatedString() but wraps any error thrown.
4346
- */ function Ge(t, n, e) {
4347
+ */ function Qe(t, n, e) {
4347
4348
  if ((
4348
4349
  // If required, replace the FieldPath Compat class with with the firestore-exp
4349
4350
  // FieldPath.
4350
- n = l(n)) instanceof ve) return n._internalPath;
4351
- if ("string" == typeof n) return Ye(t, n);
4352
- throw He("Field path arguments must be of type string or ", t,
4351
+ n = l(n)) instanceof ge) return n._internalPath;
4352
+ if ("string" == typeof n) return We(t, n);
4353
+ throw Ye("Field path arguments must be of type string or ", t,
4353
4354
  /* hasConverter= */ !1,
4354
4355
  /* path= */ void 0, e);
4355
4356
  }
4356
4357
 
4357
4358
  /**
4358
4359
  * Matches any characters in a field path string that are reserved.
4359
- */ const We = new RegExp("[~\\*/\\[\\]]");
4360
+ */ const Ge = new RegExp("[~\\*/\\[\\]]");
4360
4361
 
4361
4362
  /**
4362
4363
  * Wraps fromDotSeparatedString with an error message about the method that
@@ -4366,20 +4367,20 @@ function Qe(t, n, e) {
4366
4367
  * split on dots.
4367
4368
  * @param targetDoc - The document against which the field path will be
4368
4369
  * evaluated.
4369
- */ function Ye(t, n, e) {
4370
- if (n.search(We) >= 0) throw He(`Invalid field path (${n}). Paths must not contain '~', '*', '/', '[', or ']'`, t,
4370
+ */ function We(t, n, e) {
4371
+ if (n.search(Ge) >= 0) throw Ye(`Invalid field path (${n}). Paths must not contain '~', '*', '/', '[', or ']'`, t,
4371
4372
  /* hasConverter= */ !1,
4372
4373
  /* path= */ void 0, e);
4373
4374
  try {
4374
- return new ve(...n.split("."))._internalPath;
4375
+ return new ge(...n.split("."))._internalPath;
4375
4376
  } catch (r) {
4376
- throw He(`Invalid field path (${n}). Paths must not be empty, begin with '.', end with '.', or contain '..'`, t,
4377
+ throw Ye(`Invalid field path (${n}). Paths must not be empty, begin with '.', end with '.', or contain '..'`, t,
4377
4378
  /* hasConverter= */ !1,
4378
4379
  /* path= */ void 0, e);
4379
4380
  }
4380
4381
  }
4381
4382
 
4382
- function He(t, n, e, r, s) {
4383
+ function Ye(t, n, e, r, s) {
4383
4384
  const i = r && !r.isEmpty(), o = void 0 !== s;
4384
4385
  let u = `Function ${n}() called with invalid data`;
4385
4386
  e && (u += " (via `toFirestore()`)"), u += ". ";
@@ -4388,7 +4389,7 @@ function He(t, n, e, r, s) {
4388
4389
  c += ")"), new U(R, u + t + c);
4389
4390
  }
4390
4391
 
4391
- /** Checks `haystack` if FieldPath `needle` is present. Runs in O(n). */ function Ke(t, n) {
4392
+ /** Checks `haystack` if FieldPath `needle` is present. Runs in O(n). */ function He(t, n) {
4392
4393
  return t.some((t => t.isEqual(n)));
4393
4394
  }
4394
4395
 
@@ -4416,7 +4417,7 @@ function He(t, n, e, r, s) {
4416
4417
  * For a `DocumentSnapshot` that points to a non-existing document, any data
4417
4418
  * access will return 'undefined'. You can use the `exists()` method to
4418
4419
  * explicitly verify a document's existence.
4419
- */ class Je {
4420
+ */ class Ke {
4420
4421
  // Note: This class is stripped down version of the DocumentSnapshot in
4421
4422
  // the legacy SDK. The changes are:
4422
4423
  // - No support for SnapshotMetadata.
@@ -4432,7 +4433,7 @@ function He(t, n, e, r, s) {
4432
4433
  /**
4433
4434
  * The `DocumentReference` for the document included in the `DocumentSnapshot`.
4434
4435
  */ get ref() {
4435
- return new fe(this._firestore, this._converter, this._key);
4436
+ return new le(this._firestore, this._converter, this._key);
4436
4437
  }
4437
4438
  /**
4438
4439
  * Signals whether or not the document at the snapshot's location exists.
@@ -4452,7 +4453,7 @@ function He(t, n, e, r, s) {
4452
4453
  if (this._converter) {
4453
4454
  // We only want to use the converter and create a new DocumentSnapshot
4454
4455
  // if a converter has been provided.
4455
- const t = new Xe(this._firestore, this._userDataWriter, this._key, this._document,
4456
+ const t = new Je(this._firestore, this._userDataWriter, this._key, this._document,
4456
4457
  /* converter= */ null);
4457
4458
  return this._converter.fromFirestore(t);
4458
4459
  }
@@ -4472,7 +4473,7 @@ function He(t, n, e, r, s) {
4472
4473
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
4473
4474
  get(t) {
4474
4475
  if (this._document) {
4475
- const n = this._document.data.field(nr("DocumentSnapshot.get", t));
4476
+ const n = this._document.data.field(tr("DocumentSnapshot.get", t));
4476
4477
  if (null !== n) return this._userDataWriter.convertValue(n);
4477
4478
  }
4478
4479
  }
@@ -4488,7 +4489,7 @@ function He(t, n, e, r, s) {
4488
4489
  * `DocumentSnapshot`. Since query results contain only existing documents, the
4489
4490
  * `exists` property will always be true and `data()` will never return
4490
4491
  * 'undefined'.
4491
- */ class Xe extends Je {
4492
+ */ class Je extends Ke {
4492
4493
  /**
4493
4494
  * Retrieves all fields in the document as an `Object`.
4494
4495
  *
@@ -4506,7 +4507,7 @@ function He(t, n, e, r, s) {
4506
4507
  * array via the `docs` property or enumerated using the `forEach` method. The
4507
4508
  * number of documents can be determined via the `empty` and `size`
4508
4509
  * properties.
4509
- */ class Ze {
4510
+ */ class Xe {
4510
4511
  /** @hideconstructor */
4511
4512
  constructor(t, n) {
4512
4513
  this._docs = n, this.query = t;
@@ -4537,14 +4538,14 @@ function He(t, n, e, r, s) {
4537
4538
  * @param left - A snapshot to compare.
4538
4539
  * @param right - A snapshot to compare.
4539
4540
  * @returns true if the snapshots are equal.
4540
- */ function tr(t, n) {
4541
- return t = l(t), n = l(n), t instanceof Je && n instanceof Je ? t._firestore === n._firestore && t._key.isEqual(n._key) && (null === t._document ? null === n._document : t._document.isEqual(n._document)) && t._converter === n._converter : t instanceof Ze && n instanceof Ze && (ge(t.query, n.query) && gt(t.docs, n.docs, tr));
4541
+ */ function Ze(t, n) {
4542
+ return t = l(t), n = l(n), t instanceof Ke && n instanceof Ke ? t._firestore === n._firestore && t._key.isEqual(n._key) && (null === t._document ? null === n._document : t._document.isEqual(n._document)) && t._converter === n._converter : t instanceof Xe && n instanceof Xe && (_e(t.query, n.query) && gt(t.docs, n.docs, Ze));
4542
4543
  }
4543
4544
 
4544
4545
  /**
4545
4546
  * Helper that calls `fromDotSeparatedString()` but wraps any error thrown.
4546
- */ function nr(t, n) {
4547
- return "string" == typeof n ? Ye(t, n) : n instanceof ve ? n._internalPath : n._delegate._internalPath;
4547
+ */ function tr(t, n) {
4548
+ return "string" == typeof n ? We(t, n) : n instanceof ge ? n._internalPath : n._delegate._internalPath;
4548
4549
  }
4549
4550
 
4550
4551
  /**
@@ -4571,7 +4572,7 @@ function He(t, n, e, r, s) {
4571
4572
  * can then be passed to {@link query} to create a new query instance that
4572
4573
  * also contains this `QueryConstraint`.
4573
4574
  */
4574
- class er {}
4575
+ class nr {}
4575
4576
 
4576
4577
  /**
4577
4578
  * Creates a new immutable instance of {@link Query} that is extended to also include
@@ -4581,32 +4582,32 @@ class er {}
4581
4582
  * @param queryConstraints - The list of {@link QueryConstraint}s to apply.
4582
4583
  * @throws if any of the provided query constraints cannot be combined with the
4583
4584
  * existing or new constraints.
4584
- */ function rr(t, ...n) {
4585
+ */ function er(t, ...n) {
4585
4586
  for (const e of n) t = e._apply(t);
4586
4587
  return t;
4587
4588
  }
4588
4589
 
4589
- class sr extends er {
4590
+ class rr extends nr {
4590
4591
  constructor(t, n, e) {
4591
4592
  super(), this.dt = t, this.wt = n, this.yt = e, this.type = "where";
4592
4593
  }
4593
4594
  _apply(t) {
4594
- const n = $e(t.firestore), e = function(t, n, e, r, s, i, o) {
4595
+ const n = De(t.firestore), e = function(t, n, e, r, s, i, o) {
4595
4596
  let u;
4596
4597
  if (s.isKeyField()) {
4597
4598
  if ("array-contains" /* ARRAY_CONTAINS */ === i || "array-contains-any" /* ARRAY_CONTAINS_ANY */ === i) throw new U(R, `Invalid Query. You can't perform '${i}' queries on documentId().`);
4598
4599
  if ("in" /* IN */ === i || "not-in" /* NOT_IN */ === i) {
4599
- gr(o, i);
4600
+ _r(o, i);
4600
4601
  const n = [];
4601
- for (const e of o) n.push(_r(r, t, e));
4602
+ for (const e of o) n.push(yr(r, t, e));
4602
4603
  u = {
4603
4604
  arrayValue: {
4604
4605
  values: n
4605
4606
  }
4606
4607
  };
4607
- } else u = _r(r, t, o);
4608
- } else "in" /* IN */ !== i && "not-in" /* NOT_IN */ !== i && "array-contains-any" /* ARRAY_CONTAINS_ANY */ !== i || gr(o, i),
4609
- u = je(e, n, o,
4608
+ } else u = yr(r, t, o);
4609
+ } else "in" /* IN */ !== i && "not-in" /* NOT_IN */ !== i && "array-contains-any" /* ARRAY_CONTAINS_ANY */ !== i || _r(o, i),
4610
+ u = Ue(e, n, o,
4610
4611
  /* allowArrays= */ "in" /* IN */ === i || "not-in" /* NOT_IN */ === i);
4611
4612
  const c = Ht.create(s, i, u);
4612
4613
  return function(t, n) {
@@ -4614,7 +4615,7 @@ class sr extends er {
4614
4615
  const e = fn(t);
4615
4616
  if (null !== e && !e.isEqual(n.field)) throw new U(R, `Invalid query. All where filters with an inequality (<, <=, !=, not-in, >, or >=) must be on the same field. But you have inequality filters on '${e.toString()}' and '${n.field.toString()}'`);
4616
4617
  const r = ln(t);
4617
- null !== r && vr(t, n.field, r);
4618
+ null !== r && gr(t, n.field, r);
4618
4619
  }
4619
4620
  const e = function(t, n) {
4620
4621
  for (const e of t.filters) if (n.indexOf(e.op) >= 0) return e.op;
@@ -4658,7 +4659,7 @@ class sr extends er {
4658
4659
  throw e === n.op ? new U(R, `Invalid query. You cannot use more than one '${n.op.toString()}' filter.`) : new U(R, `Invalid query. You cannot use '${n.op.toString()}' filters with '${e.toString()}' filters.`);
4659
4660
  }(t, c), c;
4660
4661
  }(t._query, "where", n, t.firestore._databaseId, this.dt, this.wt, this.yt);
4661
- return new de(t.firestore, t.converter, function(t, n) {
4662
+ return new fe(t.firestore, t.converter, function(t, n) {
4662
4663
  const e = t.filters.concat([ n ]);
4663
4664
  return new an(t.path, t.collectionGroup, t.explicitOrderBy.slice(), e, t.limit, t.limitType, t.startAt, t.endAt);
4664
4665
  }(t._query, e));
@@ -4675,12 +4676,12 @@ class sr extends er {
4675
4676
  * "&lt;=", "!=").
4676
4677
  * @param value - The value for comparison
4677
4678
  * @returns The created {@link Query}.
4678
- */ function ir(t, n, e) {
4679
- const r = n, s = nr("where", t);
4680
- return new sr(s, r, e);
4679
+ */ function sr(t, n, e) {
4680
+ const r = n, s = tr("where", t);
4681
+ return new rr(s, r, e);
4681
4682
  }
4682
4683
 
4683
- class or extends er {
4684
+ class ir extends nr {
4684
4685
  constructor(t, n) {
4685
4686
  super(), this.dt = t, this._t = n, this.type = "orderBy";
4686
4687
  }
@@ -4693,7 +4694,7 @@ class or extends er {
4693
4694
  if (null === ln(t)) {
4694
4695
  // This is the first order by. It must match any inequality.
4695
4696
  const e = fn(t);
4696
- null !== e && vr(t, e, n.field);
4697
+ null !== e && gr(t, e, n.field);
4697
4698
  }
4698
4699
  }(t, r), r;
4699
4700
  }
@@ -4708,7 +4709,7 @@ class or extends er {
4708
4709
  * of the query or if any of the fields in the order by are an uncommitted
4709
4710
  * server timestamp.
4710
4711
  */ (t._query, this.dt, this._t);
4711
- return new de(t.firestore, t.converter, function(t, n) {
4712
+ return new fe(t.firestore, t.converter, function(t, n) {
4712
4713
  // TODO(dimond): validate that orderBy does not list the same key twice.
4713
4714
  const e = t.explicitOrderBy.concat([ n ]);
4714
4715
  return new an(t.path, t.collectionGroup, e, t.filters.slice(), t.limit, t.limitType, t.startAt, t.endAt);
@@ -4724,17 +4725,17 @@ class or extends er {
4724
4725
  * @param directionStr - Optional direction to sort by ('asc' or 'desc'). If
4725
4726
  * not specified, order will be ascending.
4726
4727
  * @returns The created {@link Query}.
4727
- */ function ur(t, n = "asc") {
4728
- const e = n, r = nr("orderBy", t);
4729
- return new or(r, e);
4728
+ */ function or(t, n = "asc") {
4729
+ const e = n, r = tr("orderBy", t);
4730
+ return new ir(r, e);
4730
4731
  }
4731
4732
 
4732
- class cr extends er {
4733
+ class ur extends nr {
4733
4734
  constructor(t, n, e) {
4734
4735
  super(), this.type = t, this.gt = n, this.vt = e;
4735
4736
  }
4736
4737
  _apply(t) {
4737
- return new de(t.firestore, t.converter, function(t, n, e) {
4738
+ return new fe(t.firestore, t.converter, function(t, n, e) {
4738
4739
  return new an(t.path, t.collectionGroup, t.explicitOrderBy.slice(), t.filters.slice(), n, e, t.startAt, t.endAt);
4739
4740
  }(t._query, this.gt, this.vt));
4740
4741
  }
@@ -4745,8 +4746,8 @@ class cr extends er {
4745
4746
  *
4746
4747
  * @param limit - The maximum number of items to return.
4747
4748
  * @returns The created {@link Query}.
4748
- */ function ar(t) {
4749
- return ct("limit", t), new cr("limit", t, "F" /* First */);
4749
+ */ function cr(t) {
4750
+ return ct("limit", t), new ur("limit", t, "F" /* First */);
4750
4751
  }
4751
4752
 
4752
4753
  /**
@@ -4757,53 +4758,55 @@ class cr extends er {
4757
4758
  *
4758
4759
  * @param limit - The maximum number of items to return.
4759
4760
  * @returns The created {@link Query}.
4760
- */ function hr(t) {
4761
- return ct("limitToLast", t), new cr("limitToLast", t, "L" /* Last */);
4761
+ */ function ar(t) {
4762
+ return ct("limitToLast", t), new ur("limitToLast", t, "L" /* Last */);
4762
4763
  }
4763
4764
 
4764
- class lr extends er {
4765
+ class hr extends nr {
4765
4766
  constructor(t, n, e) {
4766
4767
  super(), this.type = t, this.bt = n, this.Et = e;
4767
4768
  }
4768
4769
  _apply(t) {
4769
- const n = yr(t, this.type, this.bt, this.Et);
4770
- return new de(t.firestore, t.converter, function(t, n) {
4770
+ const n = pr(t, this.type, this.bt, this.Et);
4771
+ return new fe(t.firestore, t.converter, function(t, n) {
4771
4772
  return new an(t.path, t.collectionGroup, t.explicitOrderBy.slice(), t.filters.slice(), t.limit, t.limitType, n, t.endAt);
4772
4773
  }(t._query, n));
4773
4774
  }
4774
4775
  }
4775
4776
 
4776
- function fr(...t) {
4777
- return new lr("startAt", t, /*before=*/ !0);
4777
+ function lr(...t) {
4778
+ return new hr("startAt", t,
4779
+ /*inclusive=*/ !0);
4778
4780
  }
4779
4781
 
4780
- function dr(...t) {
4781
- return new lr("startAfter", t,
4782
- /*before=*/ !1);
4782
+ function fr(...t) {
4783
+ return new hr("startAfter", t,
4784
+ /*inclusive=*/ !1);
4783
4785
  }
4784
4786
 
4785
- class wr extends er {
4787
+ class dr extends nr {
4786
4788
  constructor(t, n, e) {
4787
4789
  super(), this.type = t, this.bt = n, this.Et = e;
4788
4790
  }
4789
4791
  _apply(t) {
4790
- const n = yr(t, this.type, this.bt, this.Et);
4791
- return new de(t.firestore, t.converter, function(t, n) {
4792
+ const n = pr(t, this.type, this.bt, this.Et);
4793
+ return new fe(t.firestore, t.converter, function(t, n) {
4792
4794
  return new an(t.path, t.collectionGroup, t.explicitOrderBy.slice(), t.filters.slice(), t.limit, t.limitType, t.startAt, n);
4793
4795
  }(t._query, n));
4794
4796
  }
4795
4797
  }
4796
4798
 
4797
- function mr(...t) {
4798
- return new wr("endBefore", t, /*before=*/ !0);
4799
+ function wr(...t) {
4800
+ return new dr("endBefore", t,
4801
+ /*inclusive=*/ !1);
4799
4802
  }
4800
4803
 
4801
- function pr(...t) {
4802
- return new wr("endAt", t, /*before=*/ !1);
4804
+ function mr(...t) {
4805
+ return new dr("endAt", t, /*inclusive=*/ !0);
4803
4806
  }
4804
4807
 
4805
- /** Helper function to create a bound from a document or fields */ function yr(t, n, e, r) {
4806
- if (e[0] = l(e[0]), e[0] instanceof Je) return function(t, n, e, r, s) {
4808
+ /** Helper function to create a bound from a document or fields */ function pr(t, n, e, r) {
4809
+ if (e[0] = l(e[0]), e[0] instanceof Ke) return function(t, n, e, r, s) {
4807
4810
  if (!r) throw new U(V, `Can't use a DocumentSnapshot that doesn't exist for ${e}().`);
4808
4811
  const i = [];
4809
4812
  // Because people expect to continue/end a query at the exact document
@@ -4828,7 +4831,7 @@ function pr(...t) {
4828
4831
  * Converts a list of field values to a `Bound` for the given query.
4829
4832
  */ (t._query, t.firestore._databaseId, n, e[0]._document, r);
4830
4833
  {
4831
- const s = $e(t.firestore);
4834
+ const s = De(t.firestore);
4832
4835
  return function(t, n, e, r, s, i) {
4833
4836
  // Use explicit order by's because it has to match the query the user made
4834
4837
  const o = t.explicitOrderBy;
@@ -4844,7 +4847,7 @@ function pr(...t) {
4844
4847
  const s = new et(e);
4845
4848
  u.push(kt(n, s));
4846
4849
  } else {
4847
- const t = je(e, r, c);
4850
+ const t = Ue(e, r, c);
4848
4851
  u.push(t);
4849
4852
  }
4850
4853
  }
@@ -4858,7 +4861,7 @@ function pr(...t) {
4858
4861
  }
4859
4862
  }
4860
4863
 
4861
- function _r(t, n, e) {
4864
+ function yr(t, n, e) {
4862
4865
  if ("string" == typeof (e = l(e))) {
4863
4866
  if ("" === e) throw new U(R, "Invalid query. When querying with documentId(), you must provide a valid document ID, but it was an empty string.");
4864
4867
  if (!dn(n) && -1 !== e.indexOf("/")) throw new U(R, `Invalid query. When querying a collection by documentId(), you must provide a plain document ID, but '${e}' contains a '/' character.`);
@@ -4866,19 +4869,19 @@ function _r(t, n, e) {
4866
4869
  if (!et.isDocumentKey(r)) throw new U(R, `Invalid query. When querying a collection group by documentId(), the value provided must result in a valid document path, but '${r}' is not because it has an odd number of segments (${r.length}).`);
4867
4870
  return kt(t, new et(r));
4868
4871
  }
4869
- if (e instanceof fe) return kt(t, e._key);
4872
+ if (e instanceof le) return kt(t, e._key);
4870
4873
  throw new U(R, `Invalid query. When querying with documentId(), you must provide a valid string or a DocumentReference, but it was: ${ot(e)}.`);
4871
4874
  }
4872
4875
 
4873
4876
  /**
4874
4877
  * Validates that the value passed into a disjunctive filter satisfies all
4875
4878
  * array requirements.
4876
- */ function gr(t, n) {
4879
+ */ function _r(t, n) {
4877
4880
  if (!Array.isArray(t) || 0 === t.length) throw new U(R, `Invalid Query. A non-empty array is required for '${n.toString()}' filters.`);
4878
4881
  if (t.length > 10) throw new U(R, `Invalid Query. '${n.toString()}' filters support a maximum of 10 elements in the value array.`);
4879
4882
  }
4880
4883
 
4881
- function vr(t, n, e) {
4884
+ function gr(t, n, e) {
4882
4885
  if (!e.isEqual(n)) throw new U(R, `Invalid query. You have a where filter with an inequality (<, <=, !=, not-in, >, or >=) on field '${n.toString()}' and so you must also use '${n.toString()}' as your first argument to orderBy(), but your first orderBy() is on field '${e.toString()}' instead.`);
4883
4886
  }
4884
4887
 
@@ -4929,7 +4932,7 @@ function vr(t, n, e) {
4929
4932
  * their `set()` or fails due to invalid data originating from a `toFirestore()`
4930
4933
  * call.
4931
4934
  */
4932
- function br(t, n, e) {
4935
+ function vr(t, n, e) {
4933
4936
  let r;
4934
4937
  // Cast to `any` in order to satisfy the union type constraint on
4935
4938
  // toFirestore().
@@ -4938,7 +4941,7 @@ function br(t, n, e) {
4938
4941
  r;
4939
4942
  }
4940
4943
 
4941
- class Er extends class {
4944
+ class br extends class {
4942
4945
  convertValue(t, n = "none") {
4943
4946
  switch (xt(t)) {
4944
4947
  case 0 /* NullValue */ :
@@ -4985,7 +4988,7 @@ class Er extends class {
4985
4988
  })), e;
4986
4989
  }
4987
4990
  convertGeoPoint(t) {
4988
- return new Ie(Nt(t.latitude), Nt(t.longitude));
4991
+ return new Te(Nt(t.latitude), Nt(t.longitude));
4989
4992
  }
4990
4993
  convertArray(t, n) {
4991
4994
  return (t.values || []).map((t => this.convertValue(t, n)));
@@ -5009,7 +5012,7 @@ class Er extends class {
5009
5012
  }
5010
5013
  convertDocumentKey(t, n) {
5011
5014
  const e = Z.fromString(t);
5012
- b(Jn(e));
5015
+ b(Kn(e));
5013
5016
  const r = new J(e.get(1), e.get(3)), s = new et(e.popFirst(5));
5014
5017
  return r.isEqual(n) ||
5015
5018
  // TODO(b/64130202): Somehow support foreign references.
@@ -5021,11 +5024,11 @@ class Er extends class {
5021
5024
  super(), this.firestore = t;
5022
5025
  }
5023
5026
  convertBytes(t) {
5024
- return new Ee(t);
5027
+ return new be(t);
5025
5028
  }
5026
5029
  convertReference(t) {
5027
5030
  const n = this.convertDocumentKey(t, this.firestore._databaseId);
5028
- return new fe(this.firestore, /* converter= */ null, n);
5031
+ return new le(this.firestore, /* converter= */ null, n);
5029
5032
  }
5030
5033
  }
5031
5034
 
@@ -5041,12 +5044,12 @@ class Er extends class {
5041
5044
  * @param reference - The reference of the document to fetch.
5042
5045
  * @returns A Promise resolved with a `DocumentSnapshot` containing the current
5043
5046
  * document contents.
5044
- */ function Tr(t) {
5045
- const n = ie((t = ut(t, fe)).firestore), e = new Er(t.firestore);
5046
- return ee(n, [ t._key ]).then((n => {
5047
+ */ function Er(t) {
5048
+ const n = se((t = ut(t, le)).firestore), e = new br(t.firestore);
5049
+ return ne(n, [ t._key ]).then((n => {
5047
5050
  b(1 === n.length);
5048
5051
  const r = n[0];
5049
- return new Je(t.firestore, e, t._key, r.isFoundDocument() ? r : null, t.converter);
5052
+ return new Ke(t.firestore, e, t._key, r.isFoundDocument() ? r : null, t.converter);
5050
5053
  }));
5051
5054
  }
5052
5055
 
@@ -5061,33 +5064,33 @@ class Er extends class {
5061
5064
  *
5062
5065
  * @param query - The `Query` to execute.
5063
5066
  * @returns A Promise that will be resolved with the results of the query.
5064
- */ function Ir(t) {
5067
+ */ function Tr(t) {
5065
5068
  !function(t) {
5066
5069
  if (hn(t) && 0 === t.explicitOrderBy.length) throw new U(O, "limitToLast() queries require specifying at least one orderBy() clause");
5067
- }((t = ut(t, de))._query);
5068
- const n = ie(t.firestore), e = new Er(t.firestore);
5069
- return re(n, t._query).then((n => {
5070
- const r = n.map((n => new Xe(t.firestore, e, n.key, n, t.converter)));
5070
+ }((t = ut(t, fe))._query);
5071
+ const n = se(t.firestore), e = new br(t.firestore);
5072
+ return ee(n, t._query).then((n => {
5073
+ const r = n.map((n => new Je(t.firestore, e, n.key, n, t.converter)));
5071
5074
  return hn(t._query) &&
5072
5075
  // Limit to last queries reverse the orderBy constraint that was
5073
5076
  // specified by the user. As such, we need to reverse the order of the
5074
5077
  // results to return the documents in the expected order.
5075
- r.reverse(), new Ze(t, r);
5078
+ r.reverse(), new Xe(t, r);
5076
5079
  }));
5077
5080
  }
5078
5081
 
5079
- function Ar(t, n, e) {
5080
- const r = br((t = ut(t, fe)).converter, n, e), s = Se($e(t.firestore), "setDoc", t._key, r, null !== t.converter, e);
5081
- return ne(ie(t.firestore), [ s.toMutation(t._key, In.none()) ]);
5082
+ function Ir(t, n, e) {
5083
+ const r = vr((t = ut(t, le)).converter, n, e), s = $e(De(t.firestore), "setDoc", t._key, r, null !== t.converter, e);
5084
+ return te(se(t.firestore), [ s.toMutation(t._key, In.none()) ]);
5082
5085
  }
5083
5086
 
5084
- function Rr(t, n, e, ...r) {
5085
- const s = $e((t = ut(t, fe)).firestore);
5087
+ function Ar(t, n, e, ...r) {
5088
+ const s = De((t = ut(t, le)).firestore);
5086
5089
  // For Compat types, we have to "extract" the underlying types before
5087
5090
  // performing validation.
5088
5091
  let i;
5089
- i = "string" == typeof (n = l(n)) || n instanceof ve ? Ue(s, "updateDoc", t._key, n, e, r) : ke(s, "updateDoc", t._key, n);
5090
- return ne(ie(t.firestore), [ i.toMutation(t._key, In.exists(!0)) ]);
5092
+ i = "string" == typeof (n = l(n)) || n instanceof ge ? ke(s, "updateDoc", t._key, n, e, r) : Le(s, "updateDoc", t._key, n);
5093
+ return te(se(t.firestore), [ i.toMutation(t._key, In.exists(!0)) ]);
5091
5094
  }
5092
5095
 
5093
5096
  /**
@@ -5101,8 +5104,8 @@ function Rr(t, n, e, ...r) {
5101
5104
  * @param reference - A reference to the document to delete.
5102
5105
  * @returns A `Promise` resolved once the document has been successfully
5103
5106
  * deleted from the backend.
5104
- */ function Pr(t) {
5105
- return ne(ie((t = ut(t, fe)).firestore), [ new Vn(t._key, In.none()) ]);
5107
+ */ function Rr(t) {
5108
+ return te(se((t = ut(t, le)).firestore), [ new Vn(t._key, In.none()) ]);
5106
5109
  }
5107
5110
 
5108
5111
  /**
@@ -5119,9 +5122,9 @@ function Rr(t, n, e, ...r) {
5119
5122
  * @throws Error - If the provided input is not a valid Firestore document.
5120
5123
  * @returns A `Promise` resolved with a `DocumentReference` pointing to the
5121
5124
  * newly created document after it has been written to the backend.
5122
- */ function Vr(t, n) {
5123
- const e = ye(t = ut(t, we)), r = br(t.converter, n), s = Se($e(t.firestore), "addDoc", e._key, r, null !== e.converter, {});
5124
- return ne(ie(t.firestore), [ s.toMutation(e._key, In.exists(!1)) ]).then((() => e));
5125
+ */ function Pr(t, n) {
5126
+ const e = pe(t = ut(t, de)), r = vr(t.converter, n), s = $e(De(t.firestore), "addDoc", e._key, r, null !== e.converter, {});
5127
+ return te(se(t.firestore), [ s.toMutation(e._key, In.exists(!1)) ]).then((() => e));
5125
5128
  }
5126
5129
 
5127
5130
  /**
@@ -5143,15 +5146,15 @@ function Rr(t, n, e, ...r) {
5143
5146
  /**
5144
5147
  * Returns a sentinel for use with {@link @firebase/firestore/lite#(updateDoc:1)} or
5145
5148
  * {@link @firebase/firestore/lite#(setDoc:1)} with `{merge: true}` to mark a field for deletion.
5146
- */ function Nr() {
5147
- return new Fe("deleteField");
5149
+ */ function Vr() {
5150
+ return new Se("deleteField");
5148
5151
  }
5149
5152
 
5150
5153
  /**
5151
5154
  * Returns a sentinel used with {@link @firebase/firestore/lite#(setDoc:1)} or {@link @firebase/firestore/lite#(updateDoc:1)} to
5152
5155
  * include a server-generated timestamp in the written data.
5153
- */ function Dr() {
5154
- return new qe("serverTimestamp");
5156
+ */ function Nr() {
5157
+ return new xe("serverTimestamp");
5155
5158
  }
5156
5159
 
5157
5160
  /**
@@ -5165,10 +5168,10 @@ function Rr(t, n, e, ...r) {
5165
5168
  * @param elements - The elements to union into the array.
5166
5169
  * @returns The `FieldValue` sentinel for use in a call to `setDoc()` or
5167
5170
  * `updateDoc()`.
5168
- */ function $r(...t) {
5171
+ */ function Dr(...t) {
5169
5172
  // NOTE: We don't actually parse the data until it's used in set() or
5170
5173
  // update() since we'd need the Firestore instance to do this.
5171
- return new Oe("arrayUnion", t);
5174
+ return new qe("arrayUnion", t);
5172
5175
  }
5173
5176
 
5174
5177
  /**
@@ -5181,10 +5184,10 @@ function Rr(t, n, e, ...r) {
5181
5184
  * @param elements - The elements to remove from the array.
5182
5185
  * @returns The `FieldValue` sentinel for use in a call to `setDoc()` or
5183
5186
  * `updateDoc()`
5184
- */ function Sr(...t) {
5187
+ */ function $r(...t) {
5185
5188
  // NOTE: We don't actually parse the data until it's used in set() or
5186
5189
  // update() since we'd need the Firestore instance to do this.
5187
- return new Ce("arrayRemove", t);
5190
+ return new Oe("arrayRemove", t);
5188
5191
  }
5189
5192
 
5190
5193
  /**
@@ -5205,8 +5208,8 @@ function Rr(t, n, e, ...r) {
5205
5208
  * @param n - The value to increment by.
5206
5209
  * @returns The `FieldValue` sentinel for use in a call to `setDoc()` or
5207
5210
  * `updateDoc()`
5208
- */ function Fr(t) {
5209
- return new Le("increment", t);
5211
+ */ function Sr(t) {
5212
+ return new Ce("increment", t);
5210
5213
  }
5211
5214
 
5212
5215
  /**
@@ -5232,24 +5235,24 @@ function Rr(t, n, e, ...r) {
5232
5235
  * provides methods for adding writes to the write batch. None of the writes
5233
5236
  * will be committed (or visible locally) until {@link WriteBatch.commit} is
5234
5237
  * called.
5235
- */ class xr {
5238
+ */ class Fr {
5236
5239
  /** @hideconstructor */
5237
5240
  constructor(t, n) {
5238
5241
  this._firestore = t, this._commitHandler = n, this._mutations = [], this._committed = !1,
5239
- this._dataReader = $e(t);
5242
+ this._dataReader = De(t);
5240
5243
  }
5241
5244
  set(t, n, e) {
5242
5245
  this._verifyNotCommitted();
5243
- const r = qr(t, this._firestore), s = br(r.converter, n, e), i = Se(this._dataReader, "WriteBatch.set", r._key, s, null !== r.converter, e);
5246
+ const r = xr(t, this._firestore), s = vr(r.converter, n, e), i = $e(this._dataReader, "WriteBatch.set", r._key, s, null !== r.converter, e);
5244
5247
  return this._mutations.push(i.toMutation(r._key, In.none())), this;
5245
5248
  }
5246
5249
  update(t, n, e, ...r) {
5247
5250
  this._verifyNotCommitted();
5248
- const s = qr(t, this._firestore);
5251
+ const s = xr(t, this._firestore);
5249
5252
  // For Compat types, we have to "extract" the underlying types before
5250
5253
  // performing validation.
5251
5254
  let i;
5252
- return i = "string" == typeof (n = l(n)) || n instanceof ve ? Ue(this._dataReader, "WriteBatch.update", s._key, n, e, r) : ke(this._dataReader, "WriteBatch.update", s._key, n),
5255
+ return i = "string" == typeof (n = l(n)) || n instanceof ge ? ke(this._dataReader, "WriteBatch.update", s._key, n, e, r) : Le(this._dataReader, "WriteBatch.update", s._key, n),
5253
5256
  this._mutations.push(i.toMutation(s._key, In.exists(!0))), this;
5254
5257
  }
5255
5258
  /**
@@ -5259,7 +5262,7 @@ function Rr(t, n, e, ...r) {
5259
5262
  * @returns This `WriteBatch` instance. Used for chaining method calls.
5260
5263
  */ delete(t) {
5261
5264
  this._verifyNotCommitted();
5262
- const n = qr(t, this._firestore);
5265
+ const n = xr(t, this._firestore);
5263
5266
  return this._mutations = this._mutations.concat(new Vn(n._key, In.none())), this;
5264
5267
  }
5265
5268
  /**
@@ -5281,7 +5284,7 @@ function Rr(t, n, e, ...r) {
5281
5284
  }
5282
5285
  }
5283
5286
 
5284
- function qr(t, n) {
5287
+ function xr(t, n) {
5285
5288
  if ((t = l(t)).firestore !== n) throw new U(R, "Provided document reference is from a different Firestore instance.");
5286
5289
  return t;
5287
5290
  }
@@ -5298,9 +5301,9 @@ function qr(t, n) {
5298
5301
  *
5299
5302
  * @returns A `WriteBatch` that can be used to atomically execute multiple
5300
5303
  * writes.
5301
- */ function Or(t) {
5302
- const n = ie(t = ut(t, ue));
5303
- return new xr(t, (t => ne(n, t)));
5304
+ */ function qr(t) {
5305
+ const n = se(t = ut(t, oe));
5306
+ return new Fr(t, (t => te(n, t)));
5304
5307
  }
5305
5308
 
5306
5309
  /**
@@ -5322,7 +5325,7 @@ function qr(t, n) {
5322
5325
  /**
5323
5326
  * Internal transaction object responsible for accumulating the mutations to
5324
5327
  * perform and the base versions for any documents read.
5325
- */ class Cr {
5328
+ */ class Or {
5326
5329
  constructor(t) {
5327
5330
  this.datastore = t,
5328
5331
  // The version of each document that was read during this transaction.
@@ -5342,7 +5345,7 @@ function qr(t, n) {
5342
5345
  }
5343
5346
  async lookup(t) {
5344
5347
  if (this.ensureCommitNotCalled(), this.mutations.length > 0) throw new U(R, "Firestore transactions require all reads to be executed before all writes.");
5345
- const n = await ee(this.datastore, t);
5348
+ const n = await ne(this.datastore, t);
5346
5349
  return n.forEach((t => this.recordVersion(t))), n;
5347
5350
  }
5348
5351
  set(t, n) {
@@ -5371,7 +5374,7 @@ function qr(t, n) {
5371
5374
  t.forEach(((t, n) => {
5372
5375
  const e = et.fromPath(n);
5373
5376
  this.mutations.push(new Nn(e, this.precondition(e)));
5374
- })), await ne(this.datastore, this.mutations), this.committed = !0;
5377
+ })), await te(this.datastore, this.mutations), this.committed = !0;
5375
5378
  }
5376
5379
  recordVersion(t) {
5377
5380
  let n;
@@ -5445,17 +5448,17 @@ function qr(t, n) {
5445
5448
  * TransactionRunner encapsulates the logic needed to run and retry transactions
5446
5449
  * with backoff.
5447
5450
  */
5448
- class Lr {
5451
+ class Cr {
5449
5452
  constructor(t, n, e, r) {
5450
5453
  this.asyncQueue = t, this.datastore = n, this.updateFunction = e, this.deferred = r,
5451
- this.Tt = 5, this.It = new Zn(this.asyncQueue, "transaction_retry" /* TransactionRetry */);
5454
+ this.Tt = 5, this.It = new Xn(this.asyncQueue, "transaction_retry" /* TransactionRetry */);
5452
5455
  }
5453
5456
  /** Runs the transaction and sets the result on deferred. */ run() {
5454
5457
  this.Tt -= 1, this.At();
5455
5458
  }
5456
5459
  At() {
5457
5460
  this.It.W((async () => {
5458
- const t = new Cr(this.datastore), n = this.Rt(t);
5461
+ const t = new Or(this.datastore), n = this.Rt(t);
5459
5462
  n && n.then((n => {
5460
5463
  this.asyncQueue.enqueueAndForget((() => t.commit().then((() => {
5461
5464
  this.deferred.resolve(n);
@@ -5545,7 +5548,7 @@ class Lr {
5545
5548
  * See the License for the specific language governing permissions and
5546
5549
  * limitations under the License.
5547
5550
  */
5548
- /** The Platform's 'document' implementation or null if not available. */ function kr() {
5551
+ /** The Platform's 'document' implementation or null if not available. */ function Lr() {
5549
5552
  // `document` is not always available, e.g. in ReactNative and WebWorkers.
5550
5553
  // eslint-disable-next-line no-restricted-globals
5551
5554
  return "undefined" != typeof document ? document : null;
@@ -5577,7 +5580,7 @@ class Lr {
5577
5580
  * Note: We implement `PromiseLike` instead of `Promise`, as the `Promise` type
5578
5581
  * in newer versions of TypeScript defines `finally`, which is not available in
5579
5582
  * IE.
5580
- */ class Ur {
5583
+ */ class kr {
5581
5584
  constructor(t, n, e, r, s) {
5582
5585
  this.asyncQueue = t, this.timerId = n, this.targetTimeMs = e, this.op = r, this.removalCallback = s,
5583
5586
  this.deferred = new j, this.then = this.deferred.promise.then.bind(this.deferred.promise),
@@ -5600,7 +5603,7 @@ class Lr {
5600
5603
  * PORTING NOTE: This exists to prevent making removeDelayedOperation() and
5601
5604
  * the DelayedOperation class public.
5602
5605
  */ static createAndSchedule(t, n, e, r, s) {
5603
- const i = Date.now() + e, o = new Ur(t, n, i, r, s);
5606
+ const i = Date.now() + e, o = new kr(t, n, i, r, s);
5604
5607
  return o.start(e), o;
5605
5608
  }
5606
5609
  /**
@@ -5649,7 +5652,7 @@ class Lr {
5649
5652
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
5650
5653
  * See the License for the specific language governing permissions and
5651
5654
  * limitations under the License.
5652
- */ class jr {
5655
+ */ class Ur {
5653
5656
  constructor() {
5654
5657
  // The last promise in the queue.
5655
5658
  this.Nt = Promise.resolve(),
@@ -5672,15 +5675,15 @@ class Lr {
5672
5675
  // List of TimerIds to fast-forward delays for.
5673
5676
  this.Ot = [],
5674
5677
  // Backoff timer used to schedule retries for retryable operations
5675
- this.It = new Zn(this, "async_queue_retry" /* AsyncQueueRetry */),
5678
+ this.It = new Xn(this, "async_queue_retry" /* AsyncQueueRetry */),
5676
5679
  // Visibility handler that triggers an immediate retry of all retryable
5677
5680
  // operations. Meant to speed up recovery when we regain file system access
5678
5681
  // after page comes into foreground.
5679
5682
  this.Ct = () => {
5680
- const t = kr();
5683
+ const t = Lr();
5681
5684
  t && p("AsyncQueue", "Visibility state changed to " + t.visibilityState), this.It.H();
5682
5685
  };
5683
- const t = kr();
5686
+ const t = Lr();
5684
5687
  t && "function" == typeof t.addEventListener && t.addEventListener("visibilitychange", this.Ct);
5685
5688
  }
5686
5689
  get isShuttingDown() {
@@ -5701,7 +5704,7 @@ class Lr {
5701
5704
  enterRestrictedMode(t) {
5702
5705
  if (!this.$t) {
5703
5706
  this.$t = !0, this.qt = t || !1;
5704
- const n = kr();
5707
+ const n = Lr();
5705
5708
  n && "function" == typeof n.removeEventListener && n.removeEventListener("visibilitychange", this.Ct);
5706
5709
  }
5707
5710
  }
@@ -5833,7 +5836,7 @@ class Lr {
5833
5836
  this.Lt(),
5834
5837
  // Fast-forward delays for timerIds that have been overriden.
5835
5838
  this.Ot.indexOf(t) > -1 && (n = 0);
5836
- const r = Ur.createAndSchedule(this, t, n, e, (t => this.jt(t)));
5839
+ const r = kr.createAndSchedule(this, t, n, e, (t => this.jt(t)));
5837
5840
  return this.St.push(r), r;
5838
5841
  }
5839
5842
  Lt() {
@@ -5887,10 +5890,10 @@ class Lr {
5887
5890
  }
5888
5891
  }
5889
5892
 
5890
- class Mr {
5893
+ class jr {
5891
5894
  /** @hideconstructor */
5892
5895
  constructor(t, n) {
5893
- this._firestore = t, this._transaction = n, this._dataReader = $e(t);
5896
+ this._firestore = t, this._transaction = n, this._dataReader = De(t);
5894
5897
  }
5895
5898
  /**
5896
5899
  * Reads the document referenced by the provided {@link DocumentReference}.
@@ -5898,25 +5901,25 @@ class Mr {
5898
5901
  * @param documentRef - A reference to the document to be read.
5899
5902
  * @returns A `DocumentSnapshot` with the read data.
5900
5903
  */ get(t) {
5901
- const n = qr(t, this._firestore), e = new Er(this._firestore);
5904
+ const n = xr(t, this._firestore), e = new br(this._firestore);
5902
5905
  return this._transaction.lookup([ n._key ]).then((t => {
5903
5906
  if (!t || 1 !== t.length) return v();
5904
5907
  const r = t[0];
5905
- if (r.isFoundDocument()) return new Je(this._firestore, e, r.key, r, n.converter);
5906
- if (r.isNoDocument()) return new Je(this._firestore, e, n._key, null, n.converter);
5908
+ if (r.isFoundDocument()) return new Ke(this._firestore, e, r.key, r, n.converter);
5909
+ if (r.isNoDocument()) return new Ke(this._firestore, e, n._key, null, n.converter);
5907
5910
  throw v();
5908
5911
  }));
5909
5912
  }
5910
5913
  set(t, n, e) {
5911
- const r = qr(t, this._firestore), s = br(r.converter, n, e), i = Se(this._dataReader, "Transaction.set", r._key, s, null !== r.converter, e);
5914
+ const r = xr(t, this._firestore), s = vr(r.converter, n, e), i = $e(this._dataReader, "Transaction.set", r._key, s, null !== r.converter, e);
5912
5915
  return this._transaction.set(r._key, i), this;
5913
5916
  }
5914
5917
  update(t, n, e, ...r) {
5915
- const s = qr(t, this._firestore);
5918
+ const s = xr(t, this._firestore);
5916
5919
  // For Compat types, we have to "extract" the underlying types before
5917
5920
  // performing validation.
5918
5921
  let i;
5919
- return i = "string" == typeof (n = l(n)) || n instanceof ve ? Ue(this._dataReader, "Transaction.update", s._key, n, e, r) : ke(this._dataReader, "Transaction.update", s._key, n),
5922
+ return i = "string" == typeof (n = l(n)) || n instanceof ge ? ke(this._dataReader, "Transaction.update", s._key, n, e, r) : Le(this._dataReader, "Transaction.update", s._key, n),
5920
5923
  this._transaction.update(s._key, i), this;
5921
5924
  }
5922
5925
  /**
@@ -5925,7 +5928,7 @@ class Mr {
5925
5928
  * @param documentRef - A reference to the document to be deleted.
5926
5929
  * @returns This `Transaction` instance. Used for chaining method calls.
5927
5930
  */ delete(t) {
5928
- const n = qr(t, this._firestore);
5931
+ const n = xr(t, this._firestore);
5929
5932
  return this._transaction.delete(n._key), this;
5930
5933
  }
5931
5934
  }
@@ -5946,9 +5949,9 @@ class Mr {
5946
5949
  * (the `updateFunction` returned a failed promise), the promise returned by the
5947
5950
  * `updateFunction `is returned here. Otherwise, if the transaction failed, a
5948
5951
  * rejected promise with the corresponding failure error is returned.
5949
- */ function Br(t, n) {
5950
- const e = ie(t = ut(t, ue)), r = new j;
5951
- return new Lr(new jr, e, (e => n(new Mr(t, e))), r).run(), r.promise;
5952
+ */ function Mr(t, n) {
5953
+ const e = se(t = ut(t, oe)), r = new j;
5954
+ return new Cr(new Ur, e, (e => n(new jr(t, e))), r).run(), r.promise;
5952
5955
  }
5953
5956
 
5954
5957
  /**
@@ -5961,11 +5964,11 @@ class Mr {
5961
5964
  */ !function(t) {
5962
5965
  d = t;
5963
5966
  }(`${s}_lite`), e(new i("firestore/lite", ((t, {options: n}) => {
5964
- const e = t.getProvider("app").getImmediate(), r = new ue(e, new Q(t.getProvider("auth-internal")), new H(t.getProvider("app-check-internal")));
5967
+ const e = t.getProvider("app").getImmediate(), r = new oe(e, new Q(t.getProvider("auth-internal")), new H(t.getProvider("app-check-internal")));
5965
5968
  return n && r._setSettings(n), r;
5966
5969
  }), "PUBLIC")),
5967
5970
  // RUNTIME_ENV and BUILD_TARGET are replaced by real values during the compilation
5968
- r("firestore-lite", "3.4.4-canary.2dd99ae2d", "rn"), r("firestore-lite", "3.4.4-canary.2dd99ae2d", "esm2017");
5971
+ r("firestore-lite", "3.4.4-canary.7f959622d", "rn"), r("firestore-lite", "3.4.4-canary.7f959622d", "esm2017");
5969
5972
 
5970
- export { Ee as Bytes, we as CollectionReference, fe as DocumentReference, Je as DocumentSnapshot, ve as FieldPath, Te as FieldValue, ue as Firestore, U as FirestoreError, Ie as GeoPoint, de as Query, er as QueryConstraint, Xe as QueryDocumentSnapshot, Ze as QuerySnapshot, vt as Timestamp, Mr as Transaction, xr as WriteBatch, Vr as addDoc, Sr as arrayRemove, $r as arrayUnion, me as collection, pe as collectionGroup, he as connectFirestoreEmulator, Pr as deleteDoc, Nr as deleteField, ye as doc, be as documentId, pr as endAt, mr as endBefore, Tr as getDoc, Ir as getDocs, ae as getFirestore, Fr as increment, ce as initializeFirestore, ar as limit, hr as limitToLast, ur as orderBy, rr as query, ge as queryEqual, _e as refEqual, Br as runTransaction, Dr as serverTimestamp, Ar as setDoc, m as setLogLevel, tr as snapshotEqual, dr as startAfter, fr as startAt, le as terminate, Rr as updateDoc, ir as where, Or as writeBatch };
5973
+ export { be as Bytes, de as CollectionReference, le as DocumentReference, Ke as DocumentSnapshot, ge as FieldPath, Ee as FieldValue, oe as Firestore, U as FirestoreError, Te as GeoPoint, fe as Query, nr as QueryConstraint, Je as QueryDocumentSnapshot, Xe as QuerySnapshot, vt as Timestamp, jr as Transaction, Fr as WriteBatch, Pr as addDoc, $r as arrayRemove, Dr as arrayUnion, we as collection, me as collectionGroup, ae as connectFirestoreEmulator, Rr as deleteDoc, Vr as deleteField, pe as doc, ve as documentId, mr as endAt, wr as endBefore, Er as getDoc, Tr as getDocs, ce as getFirestore, Sr as increment, ue as initializeFirestore, cr as limit, ar as limitToLast, or as orderBy, er as query, _e as queryEqual, ye as refEqual, Mr as runTransaction, Nr as serverTimestamp, Ir as setDoc, m as setLogLevel, Ze as snapshotEqual, fr as startAfter, lr as startAt, he as terminate, Ar as updateDoc, sr as where, qr as writeBatch };
5971
5974
  //# sourceMappingURL=index.rn.esm2017.js.map