@firebase/firestore 4.1.2-canary.5f6304d39 → 4.1.2-canary.60e4a07d2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/firestore/src/api/persistent_cache_index_manager.d.ts +10 -0
- package/dist/firestore/src/api.d.ts +1 -1
- package/dist/firestore/src/core/firestore_client.d.ts +1 -0
- package/dist/firestore/src/global_index.d.ts +14 -2
- package/dist/firestore/src/local/index_manager.d.ts +2 -0
- package/dist/firestore/src/local/indexeddb_index_manager.d.ts +1 -0
- package/dist/firestore/src/local/local_store_impl.d.ts +1 -0
- package/dist/firestore/src/local/memory_index_manager.d.ts +1 -0
- package/dist/firestore/test/unit/local/test_index_manager.d.ts +1 -0
- package/dist/index.cjs.js +103 -74
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.esm2017.js +103 -75
- package/dist/index.esm2017.js.map +1 -1
- package/dist/index.esm5.js +127 -80
- package/dist/index.esm5.js.map +1 -1
- package/dist/index.node.cjs.js +42 -2
- package/dist/index.node.cjs.js.map +1 -1
- package/dist/index.node.mjs +42 -3
- package/dist/index.node.mjs.map +1 -1
- package/dist/index.rn.js +120 -92
- package/dist/index.rn.js.map +1 -1
- package/dist/internal.d.ts +13 -0
- package/dist/lite/firestore/src/api/persistent_cache_index_manager.d.ts +10 -0
- package/dist/lite/firestore/src/api.d.ts +1 -1
- package/dist/lite/firestore/src/core/firestore_client.d.ts +1 -0
- package/dist/lite/firestore/src/local/index_manager.d.ts +2 -0
- package/dist/lite/firestore/src/local/indexeddb_index_manager.d.ts +1 -0
- package/dist/lite/firestore/src/local/local_store_impl.d.ts +1 -0
- package/dist/lite/firestore/src/local/memory_index_manager.d.ts +1 -0
- package/dist/lite/firestore/test/unit/local/test_index_manager.d.ts +1 -0
- package/dist/lite/index.browser.esm2017.js +2 -2
- package/dist/lite/index.browser.esm5.js +2 -2
- package/dist/lite/index.cjs.js +2 -2
- package/dist/lite/index.node.cjs.js +2 -2
- package/dist/lite/index.node.mjs +2 -2
- package/dist/lite/index.rn.esm2017.js +2 -2
- package/dist/lite/internal.d.ts +2 -0
- package/dist/lite/packages/firestore/src/api/persistent_cache_index_manager.d.ts +10 -0
- package/dist/lite/packages/firestore/src/api.d.ts +1 -1
- package/dist/lite/packages/firestore/src/core/firestore_client.d.ts +1 -0
- package/dist/lite/packages/firestore/src/local/index_manager.d.ts +2 -0
- package/dist/lite/packages/firestore/src/local/indexeddb_index_manager.d.ts +1 -0
- package/dist/lite/packages/firestore/src/local/local_store_impl.d.ts +1 -0
- package/dist/lite/packages/firestore/src/local/memory_index_manager.d.ts +1 -0
- package/dist/lite/packages/firestore/test/unit/local/test_index_manager.d.ts +1 -0
- package/dist/lite/private.d.ts +2 -0
- package/dist/packages/firestore/dist/index.esm2017.d.ts +18 -7
- package/dist/packages/firestore/src/api/persistent_cache_index_manager.d.ts +10 -0
- package/dist/packages/firestore/src/api.d.ts +1 -1
- package/dist/packages/firestore/src/core/firestore_client.d.ts +1 -0
- package/dist/packages/firestore/src/local/index_manager.d.ts +2 -0
- package/dist/packages/firestore/src/local/indexeddb_index_manager.d.ts +1 -0
- package/dist/packages/firestore/src/local/local_store_impl.d.ts +1 -0
- package/dist/packages/firestore/src/local/memory_index_manager.d.ts +1 -0
- package/dist/packages/firestore/test/unit/local/test_index_manager.d.ts +1 -0
- package/dist/private.d.ts +4 -0
- package/package.json +9 -9
package/dist/index.cjs.js
CHANGED
|
@@ -70,7 +70,7 @@ User.MOCK_USER = new User("mock-user");
|
|
|
70
70
|
* See the License for the specific language governing permissions and
|
|
71
71
|
* limitations under the License.
|
|
72
72
|
*/
|
|
73
|
-
let S = "10.3.0-canary.
|
|
73
|
+
let S = "10.3.0-canary.60e4a07d2";
|
|
74
74
|
|
|
75
75
|
/**
|
|
76
76
|
* @license
|
|
@@ -4459,7 +4459,7 @@ class __PRIVATE_QueryImpl {
|
|
|
4459
4459
|
// aggregate queries. Unlike targets for non-aggregate queries,
|
|
4460
4460
|
// aggregate query targets do not contain normalized order-bys, they only
|
|
4461
4461
|
// contain explicit order-bys.
|
|
4462
|
-
this.
|
|
4462
|
+
this.de = null, this.startAt, this.endAt;
|
|
4463
4463
|
}
|
|
4464
4464
|
}
|
|
4465
4465
|
|
|
@@ -4927,8 +4927,8 @@ function __PRIVATE_targetIdSet() {
|
|
|
4927
4927
|
// PORTING NOTE: Since JavaScript's integer arithmetic is limited to 53 bit
|
|
4928
4928
|
// precision and resolves overflows by reducing precision, we do not
|
|
4929
4929
|
// manually cap overflows at 2^63.
|
|
4930
|
-
const n = __PRIVATE_computeTransformOperationBaseValue(e, t), r = asNumber(n) + asNumber(e.
|
|
4931
|
-
return isInteger(n) && isInteger(e.
|
|
4930
|
+
const n = __PRIVATE_computeTransformOperationBaseValue(e, t), r = asNumber(n) + asNumber(e.Te);
|
|
4931
|
+
return isInteger(n) && isInteger(e.Te) ? __PRIVATE_toInteger(r) : __PRIVATE_toDouble(e.serializer, r);
|
|
4932
4932
|
}(e, t);
|
|
4933
4933
|
}
|
|
4934
4934
|
|
|
@@ -5010,7 +5010,7 @@ function __PRIVATE_applyArrayRemoveTransformOperation(e, t) {
|
|
|
5010
5010
|
* arithmetic is used and precision loss can occur for values greater than 2^53.
|
|
5011
5011
|
*/ class __PRIVATE_NumericIncrementTransformOperation extends TransformOperation {
|
|
5012
5012
|
constructor(e, t) {
|
|
5013
|
-
super(), this.serializer = e, this.
|
|
5013
|
+
super(), this.serializer = e, this.Te = t;
|
|
5014
5014
|
}
|
|
5015
5015
|
}
|
|
5016
5016
|
|
|
@@ -5046,7 +5046,7 @@ function __PRIVATE_coercedFieldValuesArray(e) {
|
|
|
5046
5046
|
|
|
5047
5047
|
function __PRIVATE_fieldTransformEquals(e, t) {
|
|
5048
5048
|
return e.field.isEqual(t.field) && function __PRIVATE_transformOperationEquals(e, t) {
|
|
5049
|
-
return e instanceof __PRIVATE_ArrayUnionTransformOperation && t instanceof __PRIVATE_ArrayUnionTransformOperation || e instanceof __PRIVATE_ArrayRemoveTransformOperation && t instanceof __PRIVATE_ArrayRemoveTransformOperation ? __PRIVATE_arrayEquals(e.elements, t.elements, __PRIVATE_valueEquals) : e instanceof __PRIVATE_NumericIncrementTransformOperation && t instanceof __PRIVATE_NumericIncrementTransformOperation ? __PRIVATE_valueEquals(e.
|
|
5049
|
+
return e instanceof __PRIVATE_ArrayUnionTransformOperation && t instanceof __PRIVATE_ArrayUnionTransformOperation || e instanceof __PRIVATE_ArrayRemoveTransformOperation && t instanceof __PRIVATE_ArrayRemoveTransformOperation ? __PRIVATE_arrayEquals(e.elements, t.elements, __PRIVATE_valueEquals) : e instanceof __PRIVATE_NumericIncrementTransformOperation && t instanceof __PRIVATE_NumericIncrementTransformOperation ? __PRIVATE_valueEquals(e.Te, t.Te) : e instanceof __PRIVATE_ServerTimestampTransform && t instanceof __PRIVATE_ServerTimestampTransform;
|
|
5050
5050
|
}(e.transform, t.transform);
|
|
5051
5051
|
}
|
|
5052
5052
|
|
|
@@ -6758,7 +6758,7 @@ function toMutation(e, t) {
|
|
|
6758
6758
|
};
|
|
6759
6759
|
if (n instanceof __PRIVATE_NumericIncrementTransformOperation) return {
|
|
6760
6760
|
fieldPath: t.field.canonicalString(),
|
|
6761
|
-
increment: n.
|
|
6761
|
+
increment: n.Te
|
|
6762
6762
|
};
|
|
6763
6763
|
throw fail();
|
|
6764
6764
|
}(0, e)))), t.precondition.isNone || (n.currentDocument = function __PRIVATE_toPrecondition(e, t) {
|
|
@@ -7592,13 +7592,13 @@ class __PRIVATE_FirestoreIndexValueWriter {
|
|
|
7592
7592
|
// ["bar", [2, truncated("foo")]] -> (STRING, "bar", TERM, ARRAY, NUMBER, 2, STRING, "foo", TRUNC)
|
|
7593
7593
|
// ["bar", truncated(["foo"])] -> (STRING, "bar", TERM, ARRAY. STRING, "foo", TERM, TRUNC)
|
|
7594
7594
|
/** Writes an index value. */
|
|
7595
|
-
|
|
7596
|
-
this.
|
|
7595
|
+
dt(e, t) {
|
|
7596
|
+
this.Tt(e, t),
|
|
7597
7597
|
// Write separator to split index values
|
|
7598
7598
|
// (see go/firestore-storage-format#encodings).
|
|
7599
7599
|
t.Et();
|
|
7600
7600
|
}
|
|
7601
|
-
|
|
7601
|
+
Tt(e, t) {
|
|
7602
7602
|
if ("nullValue" in e) this.At(t, 5); else if ("booleanValue" in e) this.At(t, 10),
|
|
7603
7603
|
t.Rt(e.booleanValue ? 1 : 0); else if ("integerValue" in e) this.At(t, 15), t.Rt(__PRIVATE_normalizeNumber(e.integerValue)); else if ("doubleValue" in e) {
|
|
7604
7604
|
const n = __PRIVATE_normalizeNumber(e.doubleValue);
|
|
@@ -7624,12 +7624,12 @@ class __PRIVATE_FirestoreIndexValueWriter {
|
|
|
7624
7624
|
St(e, t) {
|
|
7625
7625
|
const n = e.fields || {};
|
|
7626
7626
|
this.At(t, 55);
|
|
7627
|
-
for (const e of Object.keys(n)) this.ft(e, t), this.
|
|
7627
|
+
for (const e of Object.keys(n)) this.ft(e, t), this.Tt(n[e], t);
|
|
7628
7628
|
}
|
|
7629
7629
|
bt(e, t) {
|
|
7630
7630
|
const n = e.values || [];
|
|
7631
7631
|
this.At(t, 50);
|
|
7632
|
-
for (const e of n) this.
|
|
7632
|
+
for (const e of n) this.Tt(e, t);
|
|
7633
7633
|
}
|
|
7634
7634
|
wt(e, t) {
|
|
7635
7635
|
this.At(t, 37);
|
|
@@ -8277,6 +8277,10 @@ function __PRIVATE_applyDistributionFieldAndCompositeFilters(e, t) {
|
|
|
8277
8277
|
// Field indices are not supported with memory persistence.
|
|
8278
8278
|
return PersistencePromise.resolve();
|
|
8279
8279
|
}
|
|
8280
|
+
deleteAllFieldIndexes(e) {
|
|
8281
|
+
// Field indices are not supported with memory persistence.
|
|
8282
|
+
return PersistencePromise.resolve();
|
|
8283
|
+
}
|
|
8280
8284
|
createTargetIndexes(e, t) {
|
|
8281
8285
|
// Field indices are not supported with memory persistence.
|
|
8282
8286
|
return PersistencePromise.resolve();
|
|
@@ -8350,7 +8354,7 @@ function __PRIVATE_applyDistributionFieldAndCompositeFilters(e, t) {
|
|
|
8350
8354
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
8351
8355
|
* See the License for the specific language governing permissions and
|
|
8352
8356
|
* limitations under the License.
|
|
8353
|
-
*/ const
|
|
8357
|
+
*/ const de = new Uint8Array(0);
|
|
8354
8358
|
|
|
8355
8359
|
/**
|
|
8356
8360
|
* A persisted implementation of IndexManager.
|
|
@@ -8443,6 +8447,10 @@ class __PRIVATE_IndexedDbIndexManager {
|
|
|
8443
8447
|
/*lowerOpen=*/ !1,
|
|
8444
8448
|
/*upperOpen=*/ !0))));
|
|
8445
8449
|
}
|
|
8450
|
+
deleteAllFieldIndexes(e) {
|
|
8451
|
+
const t = __PRIVATE_indexConfigurationStore(e), n = __PRIVATE_indexEntriesStore(e), r = __PRIVATE_indexStateStore(e);
|
|
8452
|
+
return t.J().next((() => n.J())).next((() => r.J()));
|
|
8453
|
+
}
|
|
8446
8454
|
createTargetIndexes(e, t) {
|
|
8447
8455
|
return PersistencePromise.forEach(this.ln(t), (t => this.getIndexType(e, t).next((n => {
|
|
8448
8456
|
if (0 /* IndexType.NONE */ === n || 1 /* IndexType.PARTIAL */ === n) {
|
|
@@ -8530,7 +8538,7 @@ class __PRIVATE_IndexedDbIndexManager {
|
|
|
8530
8538
|
n.push(t.value), r && (r = t.inclusive);
|
|
8531
8539
|
}
|
|
8532
8540
|
return new Bound(n, r);
|
|
8533
|
-
}(s, i), c = this.Pn(i, s, a), l = this.Pn(i, s, u), h = this.In(i, s, _), P = this.
|
|
8541
|
+
}(s, i), c = this.Pn(i, s, a), l = this.Pn(i, s, u), h = this.In(i, s, _), P = this.dn(i.indexId, o, c, a.inclusive, l, u.inclusive, h);
|
|
8534
8542
|
return PersistencePromise.forEach(P, (i => n.H(i, t.limit).next((t => {
|
|
8535
8543
|
t.forEach((t => {
|
|
8536
8544
|
const n = DocumentKey.fromSegments(t.documentKey);
|
|
@@ -8553,14 +8561,14 @@ class __PRIVATE_IndexedDbIndexManager {
|
|
|
8553
8561
|
/**
|
|
8554
8562
|
* Constructs a key range query on `DbIndexEntryStore` that unions all
|
|
8555
8563
|
* bounds.
|
|
8556
|
-
*/
|
|
8564
|
+
*/ dn(e, t, n, r, i, s, o) {
|
|
8557
8565
|
// The number of total index scans we union together. This is similar to a
|
|
8558
8566
|
// distributed normal form, but adapted for array values. We create a single
|
|
8559
8567
|
// index range per value in an ARRAY_CONTAINS or ARRAY_CONTAINS_ANY filter
|
|
8560
8568
|
// combined with the values from the query bounds.
|
|
8561
8569
|
const _ = (null != t ? t.length : 1) * Math.max(n.length, i.length), a = _ / (null != t ? t.length : 1), u = [];
|
|
8562
8570
|
for (let c = 0; c < _; ++c) {
|
|
8563
|
-
const _ = t ? this.
|
|
8571
|
+
const _ = t ? this.Tn(t[c / a]) : de, l = this.En(e, _, n[c % a], r), h = this.An(e, _, i[c % a], s), P = o.map((t => this.En(e, _, t,
|
|
8564
8572
|
/* inclusive= */ !0)));
|
|
8565
8573
|
u.push(...this.createRange(l, h, P));
|
|
8566
8574
|
}
|
|
@@ -8624,13 +8632,13 @@ class __PRIVATE_IndexedDbIndexManager {
|
|
|
8624
8632
|
const e = t.data.field(r.fieldPath);
|
|
8625
8633
|
if (null == e) return null;
|
|
8626
8634
|
const i = n.Yt(r.kind);
|
|
8627
|
-
__PRIVATE_FirestoreIndexValueWriter.Ct.
|
|
8635
|
+
__PRIVATE_FirestoreIndexValueWriter.Ct.dt(e, i);
|
|
8628
8636
|
}
|
|
8629
8637
|
return n.zt();
|
|
8630
8638
|
}
|
|
8631
|
-
/** Encodes a single value to the ascending index format. */
|
|
8639
|
+
/** Encodes a single value to the ascending index format. */ Tn(e) {
|
|
8632
8640
|
const t = new __PRIVATE_IndexByteEncoder;
|
|
8633
|
-
return __PRIVATE_FirestoreIndexValueWriter.Ct.
|
|
8641
|
+
return __PRIVATE_FirestoreIndexValueWriter.Ct.dt(e, t.Yt(0 /* IndexKind.ASCENDING */)),
|
|
8634
8642
|
t.zt();
|
|
8635
8643
|
}
|
|
8636
8644
|
/**
|
|
@@ -8638,7 +8646,7 @@ class __PRIVATE_IndexedDbIndexManager {
|
|
|
8638
8646
|
* ordering of the field index.
|
|
8639
8647
|
*/ Vn(e, t) {
|
|
8640
8648
|
const n = new __PRIVATE_IndexByteEncoder;
|
|
8641
|
-
return __PRIVATE_FirestoreIndexValueWriter.Ct.
|
|
8649
|
+
return __PRIVATE_FirestoreIndexValueWriter.Ct.dt(__PRIVATE_refValue(this.databaseId, t), n.Yt(function __PRIVATE_fieldIndexGetKeyOrder(e) {
|
|
8642
8650
|
const t = __PRIVATE_fieldIndexGetDirectionalSegments(e);
|
|
8643
8651
|
return 0 === t.length ? 0 /* IndexKind.ASCENDING */ : t[t.length - 1].kind;
|
|
8644
8652
|
}(e))), n.zt();
|
|
@@ -8655,7 +8663,7 @@ class __PRIVATE_IndexedDbIndexManager {
|
|
|
8655
8663
|
const e = n[i++];
|
|
8656
8664
|
for (const n of r) if (this.mn(t, s.fieldPath) && isArray(e)) r = this.fn(r, s, e); else {
|
|
8657
8665
|
const t = n.Yt(s.kind);
|
|
8658
|
-
__PRIVATE_FirestoreIndexValueWriter.Ct.
|
|
8666
|
+
__PRIVATE_FirestoreIndexValueWriter.Ct.dt(e, t);
|
|
8659
8667
|
}
|
|
8660
8668
|
}
|
|
8661
8669
|
return this.gn(r);
|
|
@@ -8681,7 +8689,7 @@ class __PRIVATE_IndexedDbIndexManager {
|
|
|
8681
8689
|
const r = [ ...e ], i = [];
|
|
8682
8690
|
for (const e of n.arrayValue.values || []) for (const n of r) {
|
|
8683
8691
|
const r = new __PRIVATE_IndexByteEncoder;
|
|
8684
|
-
r.seed(n.zt()), __PRIVATE_FirestoreIndexValueWriter.Ct.
|
|
8692
|
+
r.seed(n.zt()), __PRIVATE_FirestoreIndexValueWriter.Ct.dt(e, r.Yt(t.kind)), i.push(r);
|
|
8685
8693
|
}
|
|
8686
8694
|
return i;
|
|
8687
8695
|
}
|
|
@@ -8756,8 +8764,8 @@ class __PRIVATE_IndexedDbIndexManager {
|
|
|
8756
8764
|
const i = __PRIVATE_fieldIndexGetArraySegment(t);
|
|
8757
8765
|
if (null != i) {
|
|
8758
8766
|
const s = e.data.field(i.fieldPath);
|
|
8759
|
-
if (isArray(s)) for (const i of s.arrayValue.values || []) n = n.add(new __PRIVATE_IndexEntry(t.indexId, e.key, this.
|
|
8760
|
-
} else n = n.add(new __PRIVATE_IndexEntry(t.indexId, e.key,
|
|
8767
|
+
if (isArray(s)) for (const i of s.arrayValue.values || []) n = n.add(new __PRIVATE_IndexEntry(t.indexId, e.key, this.Tn(i), r));
|
|
8768
|
+
} else n = n.add(new __PRIVATE_IndexEntry(t.indexId, e.key, de, r));
|
|
8761
8769
|
return n;
|
|
8762
8770
|
}
|
|
8763
8771
|
/**
|
|
@@ -8832,7 +8840,7 @@ class __PRIVATE_IndexedDbIndexManager {
|
|
|
8832
8840
|
// If we encounter two bounds that will create an unmatchable key range,
|
|
8833
8841
|
// then we return an empty set of key ranges.
|
|
8834
8842
|
if (this.Cn(r[e], r[e + 1])) return [];
|
|
8835
|
-
const t = [ r[e].indexId, this.uid, r[e].arrayValue, r[e].directionalValue,
|
|
8843
|
+
const t = [ r[e].indexId, this.uid, r[e].arrayValue, r[e].directionalValue, de, [] ], n = [ r[e + 1].indexId, this.uid, r[e + 1].arrayValue, r[e + 1].directionalValue, de, [] ];
|
|
8836
8844
|
i.push(IDBKeyRange.bound(t, n));
|
|
8837
8845
|
}
|
|
8838
8846
|
return i;
|
|
@@ -8900,7 +8908,7 @@ function __PRIVATE_getMinOffsetFromFieldIndexes(e) {
|
|
|
8900
8908
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
8901
8909
|
* See the License for the specific language governing permissions and
|
|
8902
8910
|
* limitations under the License.
|
|
8903
|
-
*/ const
|
|
8911
|
+
*/ const Te = {
|
|
8904
8912
|
didRun: !1,
|
|
8905
8913
|
sequenceNumbersCollected: 0,
|
|
8906
8914
|
targetsRemoved: 0,
|
|
@@ -9633,8 +9641,8 @@ class __PRIVATE_TargetIdGenerator {
|
|
|
9633
9641
|
}
|
|
9634
9642
|
collect(e, t) {
|
|
9635
9643
|
return -1 === this.params.cacheSizeCollectionThreshold ? (__PRIVATE_logDebug("LruGarbageCollector", "Garbage collection skipped; disabled"),
|
|
9636
|
-
PersistencePromise.resolve(
|
|
9637
|
-
|
|
9644
|
+
PersistencePromise.resolve(Te)) : this.getCacheSize(e).next((n => n < this.params.cacheSizeCollectionThreshold ? (__PRIVATE_logDebug("LruGarbageCollector", `Garbage collection skipped; Cache size ${n} is lower than threshold ${this.params.cacheSizeCollectionThreshold}`),
|
|
9645
|
+
Te) : this.Zn(e, t)));
|
|
9638
9646
|
}
|
|
9639
9647
|
getCacheSize(e) {
|
|
9640
9648
|
return this.Hn.getCacheSize(e);
|
|
@@ -10674,16 +10682,16 @@ class OverlayedDocument {
|
|
|
10674
10682
|
*/ class __PRIVATE_ReferenceSet {
|
|
10675
10683
|
constructor() {
|
|
10676
10684
|
// A set of outstanding references to a document sorted by key.
|
|
10677
|
-
this.Ir = new SortedSet(__PRIVATE_DocReference.
|
|
10685
|
+
this.Ir = new SortedSet(__PRIVATE_DocReference.dr),
|
|
10678
10686
|
// A set of outstanding references to a document sorted by target id.
|
|
10679
|
-
this.
|
|
10687
|
+
this.Tr = new SortedSet(__PRIVATE_DocReference.Er);
|
|
10680
10688
|
}
|
|
10681
10689
|
/** Returns true if the reference set contains no references. */ isEmpty() {
|
|
10682
10690
|
return this.Ir.isEmpty();
|
|
10683
10691
|
}
|
|
10684
10692
|
/** Adds a reference to the given document key for the given ID. */ addReference(e, t) {
|
|
10685
10693
|
const n = new __PRIVATE_DocReference(e, t);
|
|
10686
|
-
this.Ir = this.Ir.add(n), this.
|
|
10694
|
+
this.Ir = this.Ir.add(n), this.Tr = this.Tr.add(n);
|
|
10687
10695
|
}
|
|
10688
10696
|
/** Add references to the given document keys for the given ID. */ Ar(e, t) {
|
|
10689
10697
|
e.forEach((e => this.addReference(e, t)));
|
|
@@ -10702,7 +10710,7 @@ class OverlayedDocument {
|
|
|
10702
10710
|
* removed.
|
|
10703
10711
|
*/ mr(e) {
|
|
10704
10712
|
const t = new DocumentKey(new ResourcePath([])), n = new __PRIVATE_DocReference(t, e), r = new __PRIVATE_DocReference(t, e + 1), i = [];
|
|
10705
|
-
return this.
|
|
10713
|
+
return this.Tr.forEachInRange([ n, r ], (e => {
|
|
10706
10714
|
this.Rr(e), i.push(e.key);
|
|
10707
10715
|
})), i;
|
|
10708
10716
|
}
|
|
@@ -10710,12 +10718,12 @@ class OverlayedDocument {
|
|
|
10710
10718
|
this.Ir.forEach((e => this.Rr(e)));
|
|
10711
10719
|
}
|
|
10712
10720
|
Rr(e) {
|
|
10713
|
-
this.Ir = this.Ir.delete(e), this.
|
|
10721
|
+
this.Ir = this.Ir.delete(e), this.Tr = this.Tr.delete(e);
|
|
10714
10722
|
}
|
|
10715
10723
|
pr(e) {
|
|
10716
10724
|
const t = new DocumentKey(new ResourcePath([])), n = new __PRIVATE_DocReference(t, e), r = new __PRIVATE_DocReference(t, e + 1);
|
|
10717
10725
|
let i = __PRIVATE_documentKeySet();
|
|
10718
|
-
return this.
|
|
10726
|
+
return this.Tr.forEachInRange([ n, r ], (e => {
|
|
10719
10727
|
i = i.add(e.key);
|
|
10720
10728
|
})), i;
|
|
10721
10729
|
}
|
|
@@ -10729,7 +10737,7 @@ class __PRIVATE_DocReference {
|
|
|
10729
10737
|
constructor(e, t) {
|
|
10730
10738
|
this.key = e, this.yr = t;
|
|
10731
10739
|
}
|
|
10732
|
-
/** Compare by key then by ID */ static
|
|
10740
|
+
/** Compare by key then by ID */ static dr(e, t) {
|
|
10733
10741
|
return DocumentKey.comparator(e.key, t.key) || __PRIVATE_primitiveComparator(e.yr, t.yr);
|
|
10734
10742
|
}
|
|
10735
10743
|
/** Compare by ID then by key */ static Er(e, t) {
|
|
@@ -10763,7 +10771,7 @@ class __PRIVATE_DocReference {
|
|
|
10763
10771
|
/** Next value to use when assigning sequential IDs to each mutation batch. */
|
|
10764
10772
|
this.wr = 1,
|
|
10765
10773
|
/** An ordered mapping between documents and the mutations batch IDs. */
|
|
10766
|
-
this.Sr = new SortedSet(__PRIVATE_DocReference.
|
|
10774
|
+
this.Sr = new SortedSet(__PRIVATE_DocReference.dr);
|
|
10767
10775
|
}
|
|
10768
10776
|
checkEmpty(e) {
|
|
10769
10777
|
return PersistencePromise.resolve(0 === this.mutationQueue.length);
|
|
@@ -11725,9 +11733,9 @@ class __PRIVATE_IndexedDbPersistence {
|
|
|
11725
11733
|
/** The last time we garbage collected the client metadata object store. */
|
|
11726
11734
|
this.Ii = Number.NEGATIVE_INFINITY,
|
|
11727
11735
|
/** A listener to notify on primary state changes. */
|
|
11728
|
-
this.
|
|
11729
|
-
this.referenceDelegate = new __PRIVATE_IndexedDbLruDelegateImpl(this, r), this.
|
|
11730
|
-
this.serializer = new __PRIVATE_LocalSerializer(_), this.Ei = new __PRIVATE_SimpleDb(this.
|
|
11736
|
+
this.di = e => Promise.resolve(), !__PRIVATE_IndexedDbPersistence.C()) throw new FirestoreError(D.UNIMPLEMENTED, "This platform is either missing IndexedDB or is known to have an incomplete implementation. Offline persistence has been disabled.");
|
|
11737
|
+
this.referenceDelegate = new __PRIVATE_IndexedDbLruDelegateImpl(this, r), this.Ti = t + "main",
|
|
11738
|
+
this.serializer = new __PRIVATE_LocalSerializer(_), this.Ei = new __PRIVATE_SimpleDb(this.Ti, this.ci, new __PRIVATE_SchemaConverter(this.serializer)),
|
|
11731
11739
|
this.Kr = new __PRIVATE_IndexedDbTargetCache(this.referenceDelegate, this.serializer),
|
|
11732
11740
|
this.remoteDocumentCache = __PRIVATE_newIndexedDbRemoteDocumentCache(this.serializer),
|
|
11733
11741
|
this.Ur = new __PRIVATE_IndexedDbBundleCache, this.window && this.window.localStorage ? this.Ai = this.window.localStorage : (this.Ai = null,
|
|
@@ -11760,7 +11768,7 @@ class __PRIVATE_IndexedDbPersistence {
|
|
|
11760
11768
|
*
|
|
11761
11769
|
* PORTING NOTE: This is only used for Web multi-tab.
|
|
11762
11770
|
*/ gi(e) {
|
|
11763
|
-
return this.
|
|
11771
|
+
return this.di = async t => {
|
|
11764
11772
|
if (this.started) return e(t);
|
|
11765
11773
|
}, e(this.isPrimary);
|
|
11766
11774
|
}
|
|
@@ -11801,7 +11809,7 @@ class __PRIVATE_IndexedDbPersistence {
|
|
|
11801
11809
|
inForeground: this.inForeground
|
|
11802
11810
|
}).next((() => {
|
|
11803
11811
|
if (this.isPrimary) return this.pi(e).next((e => {
|
|
11804
|
-
e || (this.isPrimary = !1, this._i.enqueueRetryable((() => this.
|
|
11812
|
+
e || (this.isPrimary = !1, this._i.enqueueRetryable((() => this.di(!1))));
|
|
11805
11813
|
}));
|
|
11806
11814
|
})).next((() => this.yi(e))).next((t => this.isPrimary && !t ? this.wi(e).next((() => !1)) : !!t && this.Si(e).next((() => !0)))))).catch((e => {
|
|
11807
11815
|
if (__PRIVATE_isIndexedDbTransactionError(e))
|
|
@@ -11813,7 +11821,7 @@ class __PRIVATE_IndexedDbPersistence {
|
|
|
11813
11821
|
return __PRIVATE_logDebug("IndexedDbPersistence", "Releasing owner lease after error during lease refresh", e),
|
|
11814
11822
|
/* isPrimary= */ !1;
|
|
11815
11823
|
})).then((e => {
|
|
11816
|
-
this.isPrimary !== e && this._i.enqueueRetryable((() => this.
|
|
11824
|
+
this.isPrimary !== e && this._i.enqueueRetryable((() => this.di(e))), this.isPrimary = e;
|
|
11817
11825
|
}));
|
|
11818
11826
|
}
|
|
11819
11827
|
pi(e) {
|
|
@@ -11965,7 +11973,7 @@ class __PRIVATE_IndexedDbPersistence {
|
|
|
11965
11973
|
return this.Ei.runTransaction(e, r, i, (r => (s = new __PRIVATE_IndexedDbTransaction(r, this.qr ? this.qr.next() : __PRIVATE_ListenSequence.ae),
|
|
11966
11974
|
"readwrite-primary" === t ? this.pi(s).next((e => !!e || this.yi(s))).next((t => {
|
|
11967
11975
|
if (!t) throw __PRIVATE_logError(`Failed to obtain primary lease for action '${e}'.`),
|
|
11968
|
-
this.isPrimary = !1, this._i.enqueueRetryable((() => this.
|
|
11976
|
+
this.isPrimary = !1, this._i.enqueueRetryable((() => this.di(!1))), new FirestoreError(D.FAILED_PRECONDITION, v);
|
|
11969
11977
|
return n(s);
|
|
11970
11978
|
})).next((e => this.Si(s).next((() => e)))) : this.qi(s).next((() => n(s)))))).then((e => (s.raiseOnCommittedEvent(),
|
|
11971
11979
|
e)));
|
|
@@ -12797,8 +12805,8 @@ async function __PRIVATE_localStoreApplyBundledDocuments(e, t, n, r) {
|
|
|
12797
12805
|
for (const e of n) {
|
|
12798
12806
|
const n = t.Is(e.metadata.name);
|
|
12799
12807
|
e.document && (s = s.add(n));
|
|
12800
|
-
const r = t.
|
|
12801
|
-
r.setReadTime(t.
|
|
12808
|
+
const r = t.ds(e);
|
|
12809
|
+
r.setReadTime(t.Ts(e.metadata.readTime)), o = o.insert(n, r);
|
|
12802
12810
|
}
|
|
12803
12811
|
const _ = i._s.newChangeBuffer({
|
|
12804
12812
|
trackRemovals: !0
|
|
@@ -14317,7 +14325,7 @@ class __PRIVATE_PersistentStream {
|
|
|
14317
14325
|
this.P_ = !1, this.lastStreamToken = void 0, super.start();
|
|
14318
14326
|
}
|
|
14319
14327
|
s_() {
|
|
14320
|
-
this.P_ && this.
|
|
14328
|
+
this.P_ && this.d_([]);
|
|
14321
14329
|
}
|
|
14322
14330
|
u_(e, t) {
|
|
14323
14331
|
return this.connection.Mo("Write", e, t);
|
|
@@ -14331,7 +14339,7 @@ class __PRIVATE_PersistentStream {
|
|
|
14331
14339
|
// the write itself might be causing an error we want to back off from.
|
|
14332
14340
|
this.Ho.reset();
|
|
14333
14341
|
const t = __PRIVATE_fromWriteResults(e.writeResults, e.commitTime), n = __PRIVATE_fromVersion(e.commitTime);
|
|
14334
|
-
return this.listener.
|
|
14342
|
+
return this.listener.T_(n, t);
|
|
14335
14343
|
}
|
|
14336
14344
|
// The first response is always the handshake response
|
|
14337
14345
|
return __PRIVATE_hardAssert(!e.writeResults || 0 === e.writeResults.length), this.P_ = !0,
|
|
@@ -14347,7 +14355,7 @@ class __PRIVATE_PersistentStream {
|
|
|
14347
14355
|
const e = {};
|
|
14348
14356
|
e.database = __PRIVATE_getEncodedDatabaseId(this.serializer), this.n_(e);
|
|
14349
14357
|
}
|
|
14350
|
-
/** Sends a group of mutations to the Firestore backend to apply. */
|
|
14358
|
+
/** Sends a group of mutations to the Firestore backend to apply. */ d_(e) {
|
|
14351
14359
|
const t = {
|
|
14352
14360
|
streamToken: this.lastStreamToken,
|
|
14353
14361
|
writes: e.map((e => toMutation(this.serializer, e)))
|
|
@@ -14444,9 +14452,9 @@ async function __PRIVATE_invokeRunAggregationQueryRpc(e, t, n) {
|
|
|
14444
14452
|
};
|
|
14445
14453
|
}(i.serializer, function __PRIVATE_queryToAggregateTarget(e) {
|
|
14446
14454
|
const t = __PRIVATE_debugCast(e);
|
|
14447
|
-
return t.
|
|
14455
|
+
return t.de || (
|
|
14448
14456
|
// Do not include implicit order-bys for aggregate queries.
|
|
14449
|
-
t.
|
|
14457
|
+
t.de = __PRIVATE__queryToTarget(t, e.explicitOrderBy)), t.de;
|
|
14450
14458
|
}(t), n), _ = s.parent;
|
|
14451
14459
|
i.connection.So || delete s.parent;
|
|
14452
14460
|
const a = (await i.Fo("RunAggregationQuery", _, s, /*expectedResponseCount=*/ 1)).filter((e => !!e.result));
|
|
@@ -14850,7 +14858,7 @@ async function __PRIVATE_fillWritePipeline(e) {
|
|
|
14850
14858
|
*/ function __PRIVATE_addToWritePipeline(e, t) {
|
|
14851
14859
|
e.C_.push(t);
|
|
14852
14860
|
const n = __PRIVATE_ensureWriteStream(e);
|
|
14853
|
-
n.Yo() && n.I_ && n.
|
|
14861
|
+
n.Yo() && n.I_ && n.d_(t.mutations);
|
|
14854
14862
|
}
|
|
14855
14863
|
|
|
14856
14864
|
function __PRIVATE_shouldStartWriteStream(e) {
|
|
@@ -14868,7 +14876,7 @@ async function __PRIVATE_onWriteStreamOpen(e) {
|
|
|
14868
14876
|
async function __PRIVATE_onWriteHandshakeComplete(e) {
|
|
14869
14877
|
const t = __PRIVATE_ensureWriteStream(e);
|
|
14870
14878
|
// Send the write pipeline now that the stream is established.
|
|
14871
|
-
for (const n of e.C_) t.
|
|
14879
|
+
for (const n of e.C_) t.d_(n.mutations);
|
|
14872
14880
|
}
|
|
14873
14881
|
|
|
14874
14882
|
async function __PRIVATE_onMutationResult(e, t, n) {
|
|
@@ -14985,7 +14993,7 @@ async function __PRIVATE_remoteStoreHandleCredentialChange(e, t) {
|
|
|
14985
14993
|
Io: __PRIVATE_onWriteStreamOpen.bind(null, e),
|
|
14986
14994
|
Eo: __PRIVATE_onWriteStreamClose.bind(null, e),
|
|
14987
14995
|
E_: __PRIVATE_onWriteHandshakeComplete.bind(null, e),
|
|
14988
|
-
|
|
14996
|
+
T_: __PRIVATE_onMutationResult.bind(null, e)
|
|
14989
14997
|
}), e.M_.push((async t => {
|
|
14990
14998
|
t ? (e.L_.Xo(),
|
|
14991
14999
|
// This will start the write stream if necessary.
|
|
@@ -15487,10 +15495,10 @@ function __PRIVATE_raiseSnapshotsInSyncEvent(e) {
|
|
|
15487
15495
|
}
|
|
15488
15496
|
/**
|
|
15489
15497
|
* Converts a BundleDocument to a MutableDocument.
|
|
15490
|
-
*/
|
|
15491
|
-
return e.metadata.exists ? __PRIVATE_fromDocument(this.serializer, e.document, !1) : MutableDocument.newNoDocument(this.Is(e.metadata.name), this.
|
|
15498
|
+
*/ ds(e) {
|
|
15499
|
+
return e.metadata.exists ? __PRIVATE_fromDocument(this.serializer, e.document, !1) : MutableDocument.newNoDocument(this.Is(e.metadata.name), this.Ts(e.metadata.readTime));
|
|
15492
15500
|
}
|
|
15493
|
-
|
|
15501
|
+
Ts(e) {
|
|
15494
15502
|
return __PRIVATE_fromVersion(e);
|
|
15495
15503
|
}
|
|
15496
15504
|
}
|
|
@@ -15754,8 +15762,8 @@ class __PRIVATE_RemovedLimboDocument {
|
|
|
15754
15762
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15755
15763
|
* See the License for the specific language governing permissions and
|
|
15756
15764
|
* limitations under the License.
|
|
15757
|
-
*/ (e.type, t.type) || this.ua(e.doc, t.doc))), this.
|
|
15758
|
-
const s = t ? this.
|
|
15765
|
+
*/ (e.type, t.type) || this.ua(e.doc, t.doc))), this.da(n);
|
|
15766
|
+
const s = t ? this.Ta() : [], o = 0 === this.aa.size && this.current ? 1 /* SyncState.Synced */ : 0 /* SyncState.Local */ , _ = o !== this._a;
|
|
15759
15767
|
if (this._a = o, 0 !== i.length || _) {
|
|
15760
15768
|
return {
|
|
15761
15769
|
snapshot: new ViewSnapshot(this.query, e.ca, r, i, e.mutatedKeys, 0 /* SyncState.Local */ === o, _,
|
|
@@ -15798,11 +15806,11 @@ class __PRIVATE_RemovedLimboDocument {
|
|
|
15798
15806
|
/**
|
|
15799
15807
|
* Updates syncedDocuments, current, and limbo docs based on the given change.
|
|
15800
15808
|
* Returns the list of changes to which docs are in limbo.
|
|
15801
|
-
*/
|
|
15809
|
+
*/ da(e) {
|
|
15802
15810
|
e && (e.addedDocuments.forEach((e => this.oa = this.oa.add(e))), e.modifiedDocuments.forEach((e => {})),
|
|
15803
15811
|
e.removedDocuments.forEach((e => this.oa = this.oa.delete(e))), this.current = e.current);
|
|
15804
15812
|
}
|
|
15805
|
-
|
|
15813
|
+
Ta() {
|
|
15806
15814
|
// We can only determine limbo documents when we're in-sync with the server.
|
|
15807
15815
|
if (!this.current) return [];
|
|
15808
15816
|
// TODO(klimt): Do this incrementally so that it's not quadratic when
|
|
@@ -17696,6 +17704,13 @@ function __PRIVATE_firestoreClientSetIndexConfiguration(e, t) {
|
|
|
17696
17704
|
function __PRIVATE_firestoreClientSetPersistentCacheIndexAutoCreationEnabled(e, t) {
|
|
17697
17705
|
return e.asyncQueue.enqueue((async () => function __PRIVATE_localStoreSetIndexAutoCreationEnabled(e, t) {
|
|
17698
17706
|
__PRIVATE_debugCast(e).ns.Wi = t;
|
|
17707
|
+
}(await __PRIVATE_getLocalStore(e), t)));
|
|
17708
|
+
}
|
|
17709
|
+
|
|
17710
|
+
function __PRIVATE_firestoreClientDeleteAllFieldIndexes(e) {
|
|
17711
|
+
return e.asyncQueue.enqueue((async () => function __PRIVATE_localStoreDeleteAllFieldIndexes(e) {
|
|
17712
|
+
const t = __PRIVATE_debugCast(e), n = t.indexManager;
|
|
17713
|
+
return t.persistence.runTransaction("Delete All Indexes", "readwrite", (e => n.deleteAllFieldIndexes(e)));
|
|
17699
17714
|
}
|
|
17700
17715
|
/**
|
|
17701
17716
|
* @license
|
|
@@ -17715,7 +17730,7 @@ function __PRIVATE_firestoreClientSetPersistentCacheIndexAutoCreationEnabled(e,
|
|
|
17715
17730
|
*/
|
|
17716
17731
|
// The format of the LocalStorage key that stores the client state is:
|
|
17717
17732
|
// firestore_clients_<persistence_prefix>_<instance_key>
|
|
17718
|
-
(await __PRIVATE_getLocalStore(e)
|
|
17733
|
+
(await __PRIVATE_getLocalStore(e))));
|
|
17719
17734
|
}
|
|
17720
17735
|
|
|
17721
17736
|
/**
|
|
@@ -19247,13 +19262,13 @@ function __PRIVATE_isWrite(e) {
|
|
|
19247
19262
|
this.settings = e, this.databaseId = t, this.serializer = n, this.ignoreUndefinedProperties = r,
|
|
19248
19263
|
// Minor hack: If fieldTransforms is undefined, we assume this is an
|
|
19249
19264
|
// external call and we need to validate the entire path.
|
|
19250
|
-
void 0 === i && this.
|
|
19265
|
+
void 0 === i && this.du(), this.fieldTransforms = i || [], this.fieldMask = s || [];
|
|
19251
19266
|
}
|
|
19252
19267
|
get path() {
|
|
19253
19268
|
return this.settings.path;
|
|
19254
19269
|
}
|
|
19255
|
-
get
|
|
19256
|
-
return this.settings.
|
|
19270
|
+
get Tu() {
|
|
19271
|
+
return this.settings.Tu;
|
|
19257
19272
|
}
|
|
19258
19273
|
/** Returns a new context with the specified settings overwritten. */ Eu(e) {
|
|
19259
19274
|
return new __PRIVATE_ParseContextImpl(Object.assign(Object.assign({}, this.settings), e), this.databaseId, this.serializer, this.ignoreUndefinedProperties, this.fieldTransforms, this.fieldMask);
|
|
@@ -19272,7 +19287,7 @@ function __PRIVATE_isWrite(e) {
|
|
|
19272
19287
|
path: n,
|
|
19273
19288
|
Ru: !1
|
|
19274
19289
|
});
|
|
19275
|
-
return r.
|
|
19290
|
+
return r.du(), r;
|
|
19276
19291
|
}
|
|
19277
19292
|
fu(e) {
|
|
19278
19293
|
// TODO(b/34871131): We don't support array paths right now; so make path
|
|
@@ -19288,14 +19303,14 @@ function __PRIVATE_isWrite(e) {
|
|
|
19288
19303
|
/** Returns 'true' if 'fieldPath' was traversed when creating this context. */ contains(e) {
|
|
19289
19304
|
return void 0 !== this.fieldMask.find((t => e.isPrefixOf(t))) || void 0 !== this.fieldTransforms.find((t => e.isPrefixOf(t.field)));
|
|
19290
19305
|
}
|
|
19291
|
-
|
|
19306
|
+
du() {
|
|
19292
19307
|
// TODO(b/34871131): Remove null check once we have proper paths for fields
|
|
19293
19308
|
// within arrays.
|
|
19294
19309
|
if (this.path) for (let e = 0; e < this.path.length; e++) this.Vu(this.path.get(e));
|
|
19295
19310
|
}
|
|
19296
19311
|
Vu(e) {
|
|
19297
19312
|
if (0 === e.length) throw this.gu("Document fields must not be empty");
|
|
19298
|
-
if (__PRIVATE_isWrite(this.
|
|
19313
|
+
if (__PRIVATE_isWrite(this.Tu) && ge.test(e)) throw this.gu('Document fields cannot begin and end with "__"');
|
|
19299
19314
|
}
|
|
19300
19315
|
}
|
|
19301
19316
|
|
|
@@ -19308,7 +19323,7 @@ function __PRIVATE_isWrite(e) {
|
|
|
19308
19323
|
}
|
|
19309
19324
|
/** Creates a new top-level parse context. */ wu(e, t, n, r = !1) {
|
|
19310
19325
|
return new __PRIVATE_ParseContextImpl({
|
|
19311
|
-
|
|
19326
|
+
Tu: e,
|
|
19312
19327
|
methodName: t,
|
|
19313
19328
|
yu: n,
|
|
19314
19329
|
path: FieldPath$1.emptyPath(),
|
|
@@ -19342,7 +19357,7 @@ function __PRIVATE_newUserDataReader(e) {
|
|
|
19342
19357
|
|
|
19343
19358
|
class __PRIVATE_DeleteFieldValueImpl extends FieldValue {
|
|
19344
19359
|
_toFieldTransform(e) {
|
|
19345
|
-
if (2 /* UserDataSource.MergeSet */ !== e.
|
|
19360
|
+
if (2 /* UserDataSource.MergeSet */ !== e.Tu) throw 1 /* UserDataSource.Update */ === e.Tu ? e.gu(`${this._methodName}() can only appear at the top level of your update data`) : e.gu(`${this._methodName}() cannot be used with set() unless you pass {merge:true}`);
|
|
19346
19361
|
// No transform to add for a delete, but we need to add it to our
|
|
19347
19362
|
// fieldMask so it gets deleted.
|
|
19348
19363
|
return e.fieldMask.push(e.path), null;
|
|
@@ -19369,7 +19384,7 @@ class __PRIVATE_DeleteFieldValueImpl extends FieldValue {
|
|
|
19369
19384
|
* @param arrayElement - Whether or not the FieldValue has an array.
|
|
19370
19385
|
*/ function __PRIVATE_createSentinelChildContext(e, t, n) {
|
|
19371
19386
|
return new __PRIVATE_ParseContextImpl({
|
|
19372
|
-
|
|
19387
|
+
Tu: 3 /* UserDataSource.Argument */ ,
|
|
19373
19388
|
yu: t.settings.yu,
|
|
19374
19389
|
methodName: e._methodName,
|
|
19375
19390
|
Ru: n
|
|
@@ -19512,7 +19527,7 @@ class __PRIVATE_NumericIncrementFieldValueImpl extends FieldValue {
|
|
|
19512
19527
|
*/
|
|
19513
19528
|
return function __PRIVATE_parseSentinelFieldValue(e, t) {
|
|
19514
19529
|
// Sentinels are only supported with writes, and not within arrays.
|
|
19515
|
-
if (!__PRIVATE_isWrite(t.
|
|
19530
|
+
if (!__PRIVATE_isWrite(t.Tu)) throw t.gu(`${e._methodName}() can only be used with update() and set()`);
|
|
19516
19531
|
if (!t.path) throw t.gu(`${e._methodName}() is not currently supported inside arrays`);
|
|
19517
19532
|
const n = e._toFieldTransform(t);
|
|
19518
19533
|
n && t.fieldTransforms.push(n);
|
|
@@ -19537,7 +19552,7 @@ class __PRIVATE_NumericIncrementFieldValueImpl extends FieldValue {
|
|
|
19537
19552
|
// the set of values to be included for the IN query) that may directly
|
|
19538
19553
|
// contain additional arrays (each representing an individual field
|
|
19539
19554
|
// value), so we disable this validation.
|
|
19540
|
-
if (t.settings.Ru && 4 /* UserDataSource.ArrayArgument */ !== t.
|
|
19555
|
+
if (t.settings.Ru && 4 /* UserDataSource.ArrayArgument */ !== t.Tu) throw t.gu("Nested arrays are not supported");
|
|
19541
19556
|
return function __PRIVATE_parseArray(e, t) {
|
|
19542
19557
|
const n = [];
|
|
19543
19558
|
let r = 0;
|
|
@@ -21702,6 +21717,19 @@ function __PRIVATE_tryGetString(e, t) {
|
|
|
21702
21717
|
__PRIVATE_setPersistentCacheIndexAutoCreationEnabled(e, !1);
|
|
21703
21718
|
}
|
|
21704
21719
|
|
|
21720
|
+
/**
|
|
21721
|
+
* Removes all persistent cache indexes.
|
|
21722
|
+
*
|
|
21723
|
+
* Please note this function will also deletes indexes generated by
|
|
21724
|
+
* `setIndexConfiguration()`, which is deprecated.
|
|
21725
|
+
*
|
|
21726
|
+
* TODO(CSI) Remove @internal to make the API publicly available.
|
|
21727
|
+
* @internal
|
|
21728
|
+
*/ function deleteAllPersistentCacheIndexes(e) {
|
|
21729
|
+
e._client.verifyNotTerminated();
|
|
21730
|
+
__PRIVATE_firestoreClientDeleteAllFieldIndexes(e._client).then((e => __PRIVATE_logDebug("deleting all persistent cache indexes succeeded"))).catch((e => __PRIVATE_logWarn("deleting all persistent cache indexes failed", e)));
|
|
21731
|
+
}
|
|
21732
|
+
|
|
21705
21733
|
function __PRIVATE_setPersistentCacheIndexAutoCreationEnabled(e, t) {
|
|
21706
21734
|
e._client.verifyNotTerminated();
|
|
21707
21735
|
__PRIVATE_firestoreClientSetPersistentCacheIndexAutoCreationEnabled(e._client, t).then((e => __PRIVATE_logDebug(`setting persistent cache index auto creation isEnabled=${t} succeeded`))).catch((e => __PRIVATE_logWarn(`setting persistent cache index auto creation isEnabled=${t} failed`, e)));
|
|
@@ -21798,9 +21826,9 @@ let Se = null;
|
|
|
21798
21826
|
return r = Object.assign({
|
|
21799
21827
|
useFetchStreams: t
|
|
21800
21828
|
}, r), s._setSettings(r), s;
|
|
21801
|
-
}), "PUBLIC").setMultipleInstances(!0)), app.registerVersion(w, "4.1.2-canary.
|
|
21829
|
+
}), "PUBLIC").setMultipleInstances(!0)), app.registerVersion(w, "4.1.2-canary.60e4a07d2", e),
|
|
21802
21830
|
// BUILD_TARGET will be replaced by values like esm5, esm2017, cjs5, etc during the compilation
|
|
21803
|
-
app.registerVersion(w, "4.1.2-canary.
|
|
21831
|
+
app.registerVersion(w, "4.1.2-canary.60e4a07d2", "cjs2017");
|
|
21804
21832
|
}();
|
|
21805
21833
|
|
|
21806
21834
|
exports.AbstractUserDataWriter = AbstractUserDataWriter;
|
|
@@ -21856,6 +21884,7 @@ exports.collection = collection;
|
|
|
21856
21884
|
exports.collectionGroup = collectionGroup;
|
|
21857
21885
|
exports.connectFirestoreEmulator = connectFirestoreEmulator;
|
|
21858
21886
|
exports.count = count;
|
|
21887
|
+
exports.deleteAllPersistentCacheIndexes = deleteAllPersistentCacheIndexes;
|
|
21859
21888
|
exports.deleteDoc = deleteDoc;
|
|
21860
21889
|
exports.deleteField = deleteField;
|
|
21861
21890
|
exports.disableNetwork = disableNetwork;
|