@dereekb/firebase 13.6.6 → 13.6.7
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/index.cjs.js +769 -53
- package/index.esm.js +759 -55
- package/package.json +5 -5
- package/src/lib/client/firestore/firestore.d.ts +6 -1
- package/src/lib/common/firestore/accessor/document.d.ts +43 -9
- package/src/lib/common/firestore/cache/cache.d.ts +365 -0
- package/src/lib/common/firestore/cache/cache.memory.d.ts +187 -0
- package/src/lib/common/firestore/cache/index.d.ts +2 -0
- package/src/lib/common/firestore/collection/collection.d.ts +3 -2
- package/src/lib/common/firestore/collection/collection.group.d.ts +2 -1
- package/src/lib/common/firestore/context.d.ts +23 -5
- package/src/lib/common/firestore/index.d.ts +1 -0
- package/test/index.cjs.js +145 -77
- package/test/index.esm.js +144 -79
- package/test/package.json +6 -6
- package/test/src/lib/client/firebase.authorized.d.ts +28 -2
- package/test/src/lib/client/firebase.d.ts +9 -1
- package/test/src/lib/client/firestore.mock.item.fixture.authorized.d.ts +3 -0
package/index.esm.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { increment, arrayRemove, arrayUnion, onSnapshot, getDoc, deleteDoc, setDoc, updateDoc, collection, collectionGroup, doc, writeBatch, runTransaction, limit as limit$1, limitToLast as limitToLast$1, orderBy as orderBy$1, documentId, where as where$1, startAt as startAt$1, startAfter as startAfter$1, endAt as endAt$1, endBefore as endBefore$1, query, getDocs, getCountFromServer } from 'firebase/firestore';
|
|
2
2
|
import { cachedGetter, mergeModifiers, asArray, filterUndefinedValues, objectHasNoKeys, filterFalsyAndEmptyValues, build, wrapUseAsyncFunction, runAsyncTasksForValues, filterMaybeArrayValues, performMakeLoop, makeWithFactory, useAsync, MAP_IDENTITY, toModelFieldConversions, makeModelMapFunctions, modifyModelMapFunctions, assignValuesToPOJOFunction, KeyValueTypleValueFilter, asObjectCopyFactory, transformStringFunctionConfig, transformStringFunction, passThrough, filterUniqueTransform, unique, transformNumberFunction, sortValuesFunctionOrMapIdentityWithSortRef, toModelMapFunctions, isEqualToValueDecisionFunction, filterFromPOJOFunction, mapObjectMap, copyObject, modelFieldMapFunctions, filterNullAndUndefinedValues, dateFromDateOrTimeSecondsNumber, unixDateTimeSecondsNumberFromDate, isDate, bitwiseSetDencoder, sortAscendingIndexNumberRefFunction, latLngStringFunction, mapObjectMapFunction, filterEmptyArrayValues, filterUniqueFunction, isMapIdentityFunction, chainMapSameFunctions, DEFAULT_LAT_LNG_STRING_VALUE, pushItemOrArrayItemsIntoArray, separateValues, convertToArray, UTF_PRIVATE_USAGE_AREA_START, UTF_8_START_CHARACTER, mergeArraysIntoArray, lastValue, flattenArrayOrValueArray, allowValueOnceFilter, asGetter, getValueFromGetter, mapIdentityFunction, performTasksFromFactoryInParallelFunction, performAsyncTasks, batch, flattenArray, calculateExpirationDate, groupValues, stringContains, forEachInIterable, arrayToObject, takeFront, isOddNumber, objectToMap, ServerErrorResponse, toReadableError, capitalizeFirstLetter, lowercaseFirstLetter, toRelativeSlashPathStartType, mappedUseFunction, iterableToArray, setContainsAllValues, usePromise, slashPathFactory, errorMessageContainsString, bitwiseObjectDencoder, mergeObjectsFunction, mergeObjects, forEachKeyValue, updateMaybeValue, UNSET_INDEX_NUMBER, ModelRelationUtility, filterKeysOnPOJOFunction, areEqualPOJOValuesUsingPojoFilter, filterOnlyUndefinedValues, makeModelMap, isThrottled, MS_IN_HOUR, multiValueMapBuilder, mergeSlashPaths, slashPathDetails, toAbsoluteSlashPathStartType, SLASH_PATH_FILE_TYPE_SEPARATOR, slashPathPathMatcher, decisionFunction, slashPathSubPathMatcher } from '@dereekb/util';
|
|
3
3
|
import { filterMaybe, lazyFrom, itemAccumulator, ItemPageIterator, mappedPageItemIteration } from '@dereekb/rxjs';
|
|
4
|
-
import { map, from, combineLatest, of, exhaustMap, Observable, switchMap, timer, skip, shareReplay } from 'rxjs';
|
|
4
|
+
import { map, from, EMPTY, tap, combineLatest, of, Subject, filter, exhaustMap, Observable, switchMap, timer, skip, shareReplay } from 'rxjs';
|
|
5
5
|
import { UNKNOWN_WEBSITE_LINK_TYPE, encodeWebsiteFileLinkToWebsiteLinkEncodedData, decodeWebsiteLinkEncodedDataToWebsiteFileLink, AbstractModelPermissionService, grantedRoleMapReader, noAccessRoleMap, fullAccessRoleMap, clearable, e164PhoneNumberType, ARKTYPE_DATE_DTO_TYPE } from '@dereekb/model';
|
|
6
6
|
import { toISODateString, toJsDate, formatToISO8601DateString, isSameDate, dateRange, sortByDateFunction, yearWeekCode, UNKNOWN_YEAR_WEEK_CODE } from '@dereekb/date';
|
|
7
7
|
import { httpsCallable } from 'firebase/functions';
|
|
@@ -486,7 +486,7 @@ function _is_native_reflect_construct$9() {
|
|
|
486
486
|
return COPY_USER_RELATED_DATA_ACCESSOR_FACTORY_FUNCTION();
|
|
487
487
|
}
|
|
488
488
|
|
|
489
|
-
function asyncGeneratorStep$
|
|
489
|
+
function asyncGeneratorStep$l(gen, resolve, reject, _next, _throw, key, arg) {
|
|
490
490
|
try {
|
|
491
491
|
var info = gen[key](arg);
|
|
492
492
|
var value = info.value;
|
|
@@ -500,22 +500,22 @@ function asyncGeneratorStep$k(gen, resolve, reject, _next, _throw, key, arg) {
|
|
|
500
500
|
Promise.resolve(value).then(_next, _throw);
|
|
501
501
|
}
|
|
502
502
|
}
|
|
503
|
-
function _async_to_generator$
|
|
503
|
+
function _async_to_generator$l(fn) {
|
|
504
504
|
return function() {
|
|
505
505
|
var self = this, args = arguments;
|
|
506
506
|
return new Promise(function(resolve, reject) {
|
|
507
507
|
var gen = fn.apply(self, args);
|
|
508
508
|
function _next(value) {
|
|
509
|
-
asyncGeneratorStep$
|
|
509
|
+
asyncGeneratorStep$l(gen, resolve, reject, _next, _throw, "next", value);
|
|
510
510
|
}
|
|
511
511
|
function _throw(err) {
|
|
512
|
-
asyncGeneratorStep$
|
|
512
|
+
asyncGeneratorStep$l(gen, resolve, reject, _next, _throw, "throw", err);
|
|
513
513
|
}
|
|
514
514
|
_next(undefined);
|
|
515
515
|
});
|
|
516
516
|
};
|
|
517
517
|
}
|
|
518
|
-
function _ts_generator$
|
|
518
|
+
function _ts_generator$l(thisArg, body) {
|
|
519
519
|
var f, y, t, _ = {
|
|
520
520
|
label: 0,
|
|
521
521
|
sent: function() {
|
|
@@ -685,9 +685,9 @@ function _ts_generator$k(thisArg, body) {
|
|
|
685
685
|
* @returns A function that updates the document with converted data
|
|
686
686
|
*/ function updateWithAccessorUpdateAndConverterFunction(accessor, converter) {
|
|
687
687
|
return function(data, params) {
|
|
688
|
-
return _async_to_generator$
|
|
688
|
+
return _async_to_generator$l(function() {
|
|
689
689
|
var updateInput, updateData;
|
|
690
|
-
return _ts_generator$
|
|
690
|
+
return _ts_generator$l(this, function(_state) {
|
|
691
691
|
updateInput = filterUndefinedValues(data);
|
|
692
692
|
updateData = converter.toFirestore(updateInput, {
|
|
693
693
|
merge: true
|
|
@@ -730,7 +730,129 @@ function _ts_generator$k(thisArg, body) {
|
|
|
730
730
|
*/ FirestoreDocumentContextType["BATCH"] = "batch";
|
|
731
731
|
})(FirestoreDocumentContextType || (FirestoreDocumentContextType = {}));
|
|
732
732
|
|
|
733
|
-
|
|
733
|
+
/**
|
|
734
|
+
* Creates a {@link FirestoreCollectionDocumentCache} that delegates to the given
|
|
735
|
+
* collection cache with the key pre-bound.
|
|
736
|
+
*
|
|
737
|
+
* @param collectionCache - The parent collection cache
|
|
738
|
+
* @param key - The document path to bind
|
|
739
|
+
* @returns A document-scoped cache
|
|
740
|
+
*
|
|
741
|
+
* @example
|
|
742
|
+
* ```ts
|
|
743
|
+
* const docCache = firestoreCollectionDocumentCache(collectionCache, 'users/abc');
|
|
744
|
+
* docCache.set({ data: userData });
|
|
745
|
+
* const entry = docCache.get();
|
|
746
|
+
* ```
|
|
747
|
+
*/ function firestoreCollectionDocumentCache(collectionCache, key) {
|
|
748
|
+
return {
|
|
749
|
+
get: function get(maxTtl) {
|
|
750
|
+
return collectionCache.get(key, maxTtl);
|
|
751
|
+
},
|
|
752
|
+
set: function set(entry) {
|
|
753
|
+
return collectionCache.set(key, entry);
|
|
754
|
+
},
|
|
755
|
+
invalidate: function invalidate() {
|
|
756
|
+
return collectionCache.invalidate(key);
|
|
757
|
+
}
|
|
758
|
+
};
|
|
759
|
+
}
|
|
760
|
+
/**
|
|
761
|
+
* Singleton noop {@link FirestoreCollectionDocumentCache} that discards all operations.
|
|
762
|
+
*/ var NOOP_FIRESTORE_COLLECTION_DOCUMENT_CACHE = {
|
|
763
|
+
get: function get() {
|
|
764
|
+
return undefined;
|
|
765
|
+
},
|
|
766
|
+
set: function set() {},
|
|
767
|
+
invalidate: function invalidate() {}
|
|
768
|
+
};
|
|
769
|
+
/**
|
|
770
|
+
* Returns the singleton noop {@link FirestoreCollectionDocumentCache}.
|
|
771
|
+
*/ function noopFirestoreCollectionDocumentCache() {
|
|
772
|
+
return NOOP_FIRESTORE_COLLECTION_DOCUMENT_CACHE;
|
|
773
|
+
}
|
|
774
|
+
// MARK: Noop
|
|
775
|
+
/**
|
|
776
|
+
* Singleton noop {@link FirestoreCollectionCacheInstance} that discards all operations.
|
|
777
|
+
*/ var NOOP_FIRESTORE_COLLECTION_CACHE_INSTANCE = {
|
|
778
|
+
get: function get() {
|
|
779
|
+
return undefined;
|
|
780
|
+
},
|
|
781
|
+
getOrFetch: function getOrFetch(_key, fetchFn) {
|
|
782
|
+
return fetchFn();
|
|
783
|
+
}
|
|
784
|
+
};
|
|
785
|
+
/**
|
|
786
|
+
* Singleton noop {@link FirestoreCollectionCache} that discards all operations.
|
|
787
|
+
*
|
|
788
|
+
* Used when no cache driver is configured so that `.cache` is always defined,
|
|
789
|
+
* avoiding optional checks throughout the codebase.
|
|
790
|
+
*/ var NOOP_FIRESTORE_COLLECTION_CACHE = {
|
|
791
|
+
defaultTtl: 0,
|
|
792
|
+
get: function get() {
|
|
793
|
+
return undefined;
|
|
794
|
+
},
|
|
795
|
+
set: function set() {},
|
|
796
|
+
invalidate: function invalidate() {},
|
|
797
|
+
clear: function clear() {},
|
|
798
|
+
instance: function instance() {
|
|
799
|
+
return NOOP_FIRESTORE_COLLECTION_CACHE_INSTANCE;
|
|
800
|
+
},
|
|
801
|
+
destroy: function destroy() {}
|
|
802
|
+
};
|
|
803
|
+
/**
|
|
804
|
+
* Returns the singleton noop {@link FirestoreCollectionCache} that discards all operations.
|
|
805
|
+
*
|
|
806
|
+
* Used when no cache driver is configured so that `.cache` is always defined.
|
|
807
|
+
*
|
|
808
|
+
* @example
|
|
809
|
+
* ```ts
|
|
810
|
+
* const cache = noopFirestoreCollectionCache();
|
|
811
|
+
* cache.get('path/to/doc'); // always returns undefined
|
|
812
|
+
* cache.set('path/to/doc', { data }); // no-op
|
|
813
|
+
* ```
|
|
814
|
+
*/ function noopFirestoreCollectionCache() {
|
|
815
|
+
return NOOP_FIRESTORE_COLLECTION_CACHE;
|
|
816
|
+
}
|
|
817
|
+
/**
|
|
818
|
+
* Singleton noop {@link FirestoreContextCache} that always returns noop collection caches.
|
|
819
|
+
*
|
|
820
|
+
* Used when no cache factory is configured so that `FirestoreContext.cache` is always defined.
|
|
821
|
+
*/ var NOOP_FIRESTORE_CONTEXT_CACHE = {
|
|
822
|
+
cacheForCollection: function cacheForCollection() {
|
|
823
|
+
return noopFirestoreCollectionCache();
|
|
824
|
+
},
|
|
825
|
+
events$: EMPTY,
|
|
826
|
+
disabledTypes: new Set(),
|
|
827
|
+
isEnabled: function isEnabled() {
|
|
828
|
+
return false;
|
|
829
|
+
},
|
|
830
|
+
setEnabled: function setEnabled() {},
|
|
831
|
+
clearAll: function clearAll() {},
|
|
832
|
+
isEnabledForType: function isEnabledForType() {
|
|
833
|
+
return false;
|
|
834
|
+
},
|
|
835
|
+
setEnabledForType: function setEnabledForType() {},
|
|
836
|
+
clearForType: function clearForType() {},
|
|
837
|
+
destroy: function destroy() {}
|
|
838
|
+
};
|
|
839
|
+
/**
|
|
840
|
+
* Returns the singleton noop {@link FirestoreContextCache}.
|
|
841
|
+
*
|
|
842
|
+
* Used when no cache factory is configured so that `FirestoreContext.cache` is always defined,
|
|
843
|
+
* avoiding null checks throughout the codebase.
|
|
844
|
+
*
|
|
845
|
+
* @example
|
|
846
|
+
* ```ts
|
|
847
|
+
* const cache = noopFirestoreContextCache();
|
|
848
|
+
* cache.cacheForCollection('user', { defaultTtl: 0 }); // returns noop collection cache
|
|
849
|
+
* cache.isEnabled(); // false
|
|
850
|
+
* ```
|
|
851
|
+
*/ function noopFirestoreContextCache() {
|
|
852
|
+
return NOOP_FIRESTORE_CONTEXT_CACHE;
|
|
853
|
+
}
|
|
854
|
+
|
|
855
|
+
function asyncGeneratorStep$k(gen, resolve, reject, _next, _throw, key, arg) {
|
|
734
856
|
try {
|
|
735
857
|
var info = gen[key](arg);
|
|
736
858
|
var value = info.value;
|
|
@@ -744,22 +866,22 @@ function asyncGeneratorStep$j(gen, resolve, reject, _next, _throw, key, arg) {
|
|
|
744
866
|
Promise.resolve(value).then(_next, _throw);
|
|
745
867
|
}
|
|
746
868
|
}
|
|
747
|
-
function _async_to_generator$
|
|
869
|
+
function _async_to_generator$k(fn) {
|
|
748
870
|
return function() {
|
|
749
871
|
var self = this, args = arguments;
|
|
750
872
|
return new Promise(function(resolve, reject) {
|
|
751
873
|
var gen = fn.apply(self, args);
|
|
752
874
|
function _next(value) {
|
|
753
|
-
asyncGeneratorStep$
|
|
875
|
+
asyncGeneratorStep$k(gen, resolve, reject, _next, _throw, "next", value);
|
|
754
876
|
}
|
|
755
877
|
function _throw(err) {
|
|
756
|
-
asyncGeneratorStep$
|
|
878
|
+
asyncGeneratorStep$k(gen, resolve, reject, _next, _throw, "throw", err);
|
|
757
879
|
}
|
|
758
880
|
_next(undefined);
|
|
759
881
|
});
|
|
760
882
|
};
|
|
761
883
|
}
|
|
762
|
-
function _ts_generator$
|
|
884
|
+
function _ts_generator$k(thisArg, body) {
|
|
763
885
|
var f, y, t, _ = {
|
|
764
886
|
label: 0,
|
|
765
887
|
sent: function() {
|
|
@@ -872,9 +994,9 @@ function _ts_generator$j(thisArg, body) {
|
|
|
872
994
|
* @see https://cloud.google.com/firestore/docs/samples/firestore-data-set-numeric-increment
|
|
873
995
|
*/ function incrementUpdateWithAccessorFunction(accessor) {
|
|
874
996
|
return function(data) {
|
|
875
|
-
return _async_to_generator$
|
|
997
|
+
return _async_to_generator$k(function() {
|
|
876
998
|
var updateData;
|
|
877
|
-
return _ts_generator$
|
|
999
|
+
return _ts_generator$k(this, function(_state) {
|
|
878
1000
|
updateData = filterFalsyAndEmptyValues(data);
|
|
879
1001
|
// Only update
|
|
880
1002
|
if (!objectHasNoKeys(updateData)) {
|
|
@@ -891,7 +1013,7 @@ function _ts_generator$j(thisArg, body) {
|
|
|
891
1013
|
};
|
|
892
1014
|
}
|
|
893
1015
|
|
|
894
|
-
function asyncGeneratorStep$
|
|
1016
|
+
function asyncGeneratorStep$j(gen, resolve, reject, _next, _throw, key, arg) {
|
|
895
1017
|
try {
|
|
896
1018
|
var info = gen[key](arg);
|
|
897
1019
|
var value = info.value;
|
|
@@ -905,22 +1027,22 @@ function asyncGeneratorStep$i(gen, resolve, reject, _next, _throw, key, arg) {
|
|
|
905
1027
|
Promise.resolve(value).then(_next, _throw);
|
|
906
1028
|
}
|
|
907
1029
|
}
|
|
908
|
-
function _async_to_generator$
|
|
1030
|
+
function _async_to_generator$j(fn) {
|
|
909
1031
|
return function() {
|
|
910
1032
|
var self = this, args = arguments;
|
|
911
1033
|
return new Promise(function(resolve, reject) {
|
|
912
1034
|
var gen = fn.apply(self, args);
|
|
913
1035
|
function _next(value) {
|
|
914
|
-
asyncGeneratorStep$
|
|
1036
|
+
asyncGeneratorStep$j(gen, resolve, reject, _next, _throw, "next", value);
|
|
915
1037
|
}
|
|
916
1038
|
function _throw(err) {
|
|
917
|
-
asyncGeneratorStep$
|
|
1039
|
+
asyncGeneratorStep$j(gen, resolve, reject, _next, _throw, "throw", err);
|
|
918
1040
|
}
|
|
919
1041
|
_next(undefined);
|
|
920
1042
|
});
|
|
921
1043
|
};
|
|
922
1044
|
}
|
|
923
|
-
function _ts_generator$
|
|
1045
|
+
function _ts_generator$j(thisArg, body) {
|
|
924
1046
|
var f, y, t, _ = {
|
|
925
1047
|
label: 0,
|
|
926
1048
|
sent: function() {
|
|
@@ -1032,9 +1154,9 @@ function _ts_generator$i(thisArg, body) {
|
|
|
1032
1154
|
* @see https://firebase.google.com/docs/firestore/manage-data/add-data#update_elements_in_an_array
|
|
1033
1155
|
*/ function arrayUpdateWithAccessorFunction(accessor) {
|
|
1034
1156
|
return function(data) {
|
|
1035
|
-
return _async_to_generator$
|
|
1157
|
+
return _async_to_generator$j(function() {
|
|
1036
1158
|
var updateData;
|
|
1037
|
-
return _ts_generator$
|
|
1159
|
+
return _ts_generator$j(this, function(_state) {
|
|
1038
1160
|
updateData = filterFalsyAndEmptyValues(data);
|
|
1039
1161
|
// Only update
|
|
1040
1162
|
if (!objectHasNoKeys(updateData)) {
|
|
@@ -1156,6 +1278,7 @@ function _is_native_reflect_construct$8() {
|
|
|
1156
1278
|
_class_call_check$h(this, AbstractFirestoreDocument);
|
|
1157
1279
|
_define_property$u(this, "_accessor", void 0);
|
|
1158
1280
|
_define_property$u(this, "_documentAccessor", void 0);
|
|
1281
|
+
_define_property$u(this, "_cache", void 0);
|
|
1159
1282
|
_define_property$u(this, "stream$", lazyFrom(function() {
|
|
1160
1283
|
return _this._accessor.stream();
|
|
1161
1284
|
}));
|
|
@@ -1164,6 +1287,7 @@ function _is_native_reflect_construct$8() {
|
|
|
1164
1287
|
}));
|
|
1165
1288
|
this._accessor = accessor;
|
|
1166
1289
|
this._documentAccessor = documentAccessor;
|
|
1290
|
+
this._cache = documentAccessor.cacheForDocument(accessor.documentRef);
|
|
1167
1291
|
}
|
|
1168
1292
|
_create_class$a(AbstractFirestoreDocument, [
|
|
1169
1293
|
{
|
|
@@ -1172,6 +1296,12 @@ function _is_native_reflect_construct$8() {
|
|
|
1172
1296
|
return this._accessor;
|
|
1173
1297
|
}
|
|
1174
1298
|
},
|
|
1299
|
+
{
|
|
1300
|
+
key: "cache",
|
|
1301
|
+
get: function get() {
|
|
1302
|
+
return this._cache;
|
|
1303
|
+
}
|
|
1304
|
+
},
|
|
1175
1305
|
{
|
|
1176
1306
|
key: "documentAccessor",
|
|
1177
1307
|
get: function get() {
|
|
@@ -1224,41 +1354,69 @@ function _is_native_reflect_construct$8() {
|
|
|
1224
1354
|
/**
|
|
1225
1355
|
* Retrieves a DocumentSnapshot of the document as an Observable. Streams based on the input mode.
|
|
1226
1356
|
*
|
|
1357
|
+
* Passively populates the cache with each emitted snapshot.
|
|
1358
|
+
*
|
|
1227
1359
|
* @param mode - The stream mode controlling how the Observable emits snapshot updates
|
|
1228
1360
|
* @returns An Observable that emits DocumentSnapshot values based on the given mode
|
|
1229
1361
|
*/ key: "snapshotStream",
|
|
1230
1362
|
value: function snapshotStream(mode) {
|
|
1231
|
-
|
|
1363
|
+
var _this = this;
|
|
1364
|
+
return snapshotStreamForAccessor(this.accessor, mode).pipe(tap(function(snap) {
|
|
1365
|
+
var data = snap.data();
|
|
1366
|
+
if (data != null) {
|
|
1367
|
+
_this._cache.set({
|
|
1368
|
+
data: data
|
|
1369
|
+
});
|
|
1370
|
+
}
|
|
1371
|
+
}));
|
|
1232
1372
|
}
|
|
1233
1373
|
},
|
|
1234
1374
|
{
|
|
1235
1375
|
/**
|
|
1236
1376
|
* Retrieves the data of the DocumentSnapshot of the document as an Observable. Streams based on the input mode.
|
|
1237
1377
|
*
|
|
1378
|
+
* Passively populates the cache via {@link snapshotStream}.
|
|
1379
|
+
*
|
|
1238
1380
|
* @param mode - The stream mode controlling how the Observable emits snapshot data updates
|
|
1239
1381
|
* @param options - Optional SnapshotOptions for reading the document data
|
|
1240
1382
|
* @returns An Observable that emits the document data or undefined based on the given mode
|
|
1241
1383
|
*/ key: "snapshotDataStream",
|
|
1242
1384
|
value: function snapshotDataStream(mode, options) {
|
|
1243
|
-
return
|
|
1385
|
+
return this.snapshotStream(mode).pipe(map(function(snap) {
|
|
1386
|
+
return snap.data(options);
|
|
1387
|
+
}));
|
|
1244
1388
|
}
|
|
1245
1389
|
},
|
|
1246
1390
|
{
|
|
1247
1391
|
/**
|
|
1248
|
-
* Retrieves a DocumentSnapshot of the document.
|
|
1392
|
+
* Retrieves a DocumentSnapshot of the document from Firestore.
|
|
1249
1393
|
*
|
|
1250
|
-
*
|
|
1394
|
+
* Passively populates the cache with the fetched snapshot.
|
|
1395
|
+
*
|
|
1396
|
+
* @returns A Promise resolving to the document snapshot
|
|
1251
1397
|
*/ key: "snapshot",
|
|
1252
1398
|
value: function snapshot() {
|
|
1253
|
-
|
|
1399
|
+
var _this = this;
|
|
1400
|
+
return this.accessor.get().then(function(snap) {
|
|
1401
|
+
var data = snap.data();
|
|
1402
|
+
if (data != null) {
|
|
1403
|
+
_this._cache.set({
|
|
1404
|
+
data: data
|
|
1405
|
+
});
|
|
1406
|
+
}
|
|
1407
|
+
return snap;
|
|
1408
|
+
});
|
|
1254
1409
|
}
|
|
1255
1410
|
},
|
|
1256
1411
|
{
|
|
1257
1412
|
/**
|
|
1258
|
-
* Retrieves the data of the
|
|
1413
|
+
* Retrieves the data of the document, checking the cache first.
|
|
1259
1414
|
*
|
|
1260
|
-
*
|
|
1261
|
-
* @
|
|
1415
|
+
* If a fresh cache entry exists, returns it without hitting Firestore.
|
|
1416
|
+
* Otherwise falls through to {@link snapshot} which populates the cache.
|
|
1417
|
+
*
|
|
1418
|
+
* @param options - Optional SnapshotOptions for reading the document data
|
|
1419
|
+
* @returns A Promise resolving to the document data, or undefined if the document does not exist
|
|
1262
1420
|
*/ key: "snapshotData",
|
|
1263
1421
|
value: function snapshotData(options) {
|
|
1264
1422
|
return this.snapshot().then(function(x) {
|
|
@@ -1281,49 +1439,74 @@ function _is_native_reflect_construct$8() {
|
|
|
1281
1439
|
/**
|
|
1282
1440
|
* Creates the document if it does not exist, using the accessor's create functionality.
|
|
1283
1441
|
*
|
|
1284
|
-
*
|
|
1285
|
-
*
|
|
1442
|
+
* Populates the cache with the written data after a successful create.
|
|
1443
|
+
*
|
|
1444
|
+
* @param data - The document data to create
|
|
1445
|
+
* @returns A Promise that resolves when the create completes
|
|
1286
1446
|
*/ key: "create",
|
|
1287
1447
|
value: function create(data) {
|
|
1288
|
-
|
|
1448
|
+
var _this = this;
|
|
1449
|
+
return this.accessor.create(data).then(function(result) {
|
|
1450
|
+
_this._cache.set({
|
|
1451
|
+
data: data
|
|
1452
|
+
});
|
|
1453
|
+
return result;
|
|
1454
|
+
});
|
|
1289
1455
|
}
|
|
1290
1456
|
},
|
|
1291
1457
|
{
|
|
1292
1458
|
/**
|
|
1293
|
-
* Updates the document using the accessor's update
|
|
1459
|
+
* Updates the document using the accessor's update functionality if the document exists. This differs from Firestore's default
|
|
1294
1460
|
* update implementation which does not use the configured converter. This update function will, allowing the use of
|
|
1295
1461
|
* snapshotConverterFunctions().
|
|
1296
1462
|
*
|
|
1297
|
-
*
|
|
1463
|
+
* Invalidates the cache entry since partial updates don't provide the full document.
|
|
1464
|
+
* Throws an exception when the document does not exist.
|
|
1298
1465
|
*
|
|
1299
1466
|
* @param data - Partial document data to update
|
|
1300
1467
|
* @param params - Optional update parameters
|
|
1301
1468
|
* @returns A Promise that resolves when the update completes
|
|
1302
1469
|
*/ key: "update",
|
|
1303
1470
|
value: function update(data, params) {
|
|
1304
|
-
|
|
1471
|
+
var _this = this;
|
|
1472
|
+
return updateWithAccessorUpdateAndConverterFunction(this.accessor, this.converter)(data, params).then(function(result) {
|
|
1473
|
+
_this._cache.invalidate();
|
|
1474
|
+
return result;
|
|
1475
|
+
});
|
|
1305
1476
|
}
|
|
1306
1477
|
},
|
|
1307
1478
|
{
|
|
1308
1479
|
/**
|
|
1309
1480
|
* Updates the document using the accessor's increment functionality.
|
|
1310
1481
|
*
|
|
1482
|
+
* Invalidates the cache entry since increment updates don't provide the full document.
|
|
1483
|
+
*
|
|
1311
1484
|
* @param data - The increment update to apply to numeric fields
|
|
1312
1485
|
* @returns A Promise that resolves when the increment update completes
|
|
1313
1486
|
*/ key: "increment",
|
|
1314
1487
|
value: function increment(data) {
|
|
1315
|
-
|
|
1488
|
+
var _this = this;
|
|
1489
|
+
return incrementUpdateWithAccessorFunction(this.accessor)(data).then(function(result) {
|
|
1490
|
+
_this._cache.invalidate();
|
|
1491
|
+
return result;
|
|
1492
|
+
});
|
|
1316
1493
|
}
|
|
1317
1494
|
},
|
|
1318
1495
|
{
|
|
1319
1496
|
/**
|
|
1320
1497
|
* Updates the document using the accessor's array field update functionality.
|
|
1321
1498
|
*
|
|
1499
|
+
* Invalidates the cache entry since array updates don't provide the full document.
|
|
1500
|
+
*
|
|
1322
1501
|
* @param data - The array field update to apply (union or remove elements)
|
|
1323
1502
|
* @returns A Promise that resolves when the array update completes
|
|
1324
1503
|
*/ key: "arrayUpdate",
|
|
1325
1504
|
value: function arrayUpdate(data) {
|
|
1326
|
-
|
|
1505
|
+
var _this = this;
|
|
1506
|
+
return arrayUpdateWithAccessorFunction(this.accessor)(data).then(function(result) {
|
|
1507
|
+
_this._cache.invalidate();
|
|
1508
|
+
return result;
|
|
1509
|
+
});
|
|
1327
1510
|
}
|
|
1328
1511
|
}
|
|
1329
1512
|
]);
|
|
@@ -1335,7 +1518,7 @@ function _is_native_reflect_construct$8() {
|
|
|
1335
1518
|
* @param config - Configuration including converter, accessor factory, and document factory
|
|
1336
1519
|
* @returns A factory function for creating LimitedFirestoreDocumentAccessor instances
|
|
1337
1520
|
*/ function limitedFirestoreDocumentAccessorFactory(config) {
|
|
1338
|
-
var firestoreContext = config.firestoreContext, firestoreAccessorDriver = config.firestoreAccessorDriver, makeDocument = config.makeDocument, interceptAccessorFactory = config.accessorFactory, inputDefaultConverter = config.converter, inputConverterFactory = config.converterFactory, modelIdentity = config.modelIdentity;
|
|
1521
|
+
var firestoreContext = config.firestoreContext, firestoreAccessorDriver = config.firestoreAccessorDriver, makeDocument = config.makeDocument, interceptAccessorFactory = config.accessorFactory, inputDefaultConverter = config.converter, inputConverterFactory = config.converterFactory, modelIdentity = config.modelIdentity, inputCache = config.cache;
|
|
1339
1522
|
var expectedCollectionName = firestoreAccessorDriver.fuzzedPathForPath ? firestoreAccessorDriver.fuzzedPathForPath(modelIdentity.collectionName) : modelIdentity.collectionName;
|
|
1340
1523
|
var converterFactory = inputConverterFactory ? function(ref) {
|
|
1341
1524
|
var _inputConverterFactory;
|
|
@@ -1364,10 +1547,17 @@ function _is_native_reflect_construct$8() {
|
|
|
1364
1547
|
};
|
|
1365
1548
|
var databaseContext = context !== null && context !== void 0 ? context : config.firestoreAccessorDriver.defaultContextFactory();
|
|
1366
1549
|
var dataAccessorFactory = interceptAccessorFactory ? interceptAccessorFactory(databaseContext.accessorFactory) : databaseContext.accessorFactory;
|
|
1550
|
+
// Transaction/batch contexts bypass cache; otherwise bind the collection cache to the document ref
|
|
1551
|
+
var cacheForDocument = context ? function() {
|
|
1552
|
+
return noopFirestoreCollectionDocumentCache();
|
|
1553
|
+
} : function(ref) {
|
|
1554
|
+
return firestoreCollectionDocumentCache(inputCache, ref.path);
|
|
1555
|
+
};
|
|
1367
1556
|
var documentAccessor = {
|
|
1368
1557
|
converter: inputDefaultConverter,
|
|
1369
1558
|
converterFactory: converterFactory,
|
|
1370
1559
|
modelIdentity: modelIdentity,
|
|
1560
|
+
cacheForDocument: cacheForDocument,
|
|
1371
1561
|
loadDocumentFrom: function loadDocumentFrom(document) {
|
|
1372
1562
|
return loadDocument(document.documentRef);
|
|
1373
1563
|
},
|
|
@@ -1498,7 +1688,7 @@ var AbstractFirestoreDocumentWithParent = /*#__PURE__*/ function(AbstractFiresto
|
|
|
1498
1688
|
x.loadDocumentForWriteBatch = singleAccessor.loadDocumentForWriteBatch;
|
|
1499
1689
|
}
|
|
1500
1690
|
|
|
1501
|
-
function asyncGeneratorStep$
|
|
1691
|
+
function asyncGeneratorStep$i(gen, resolve, reject, _next, _throw, key, arg) {
|
|
1502
1692
|
try {
|
|
1503
1693
|
var info = gen[key](arg);
|
|
1504
1694
|
var value = info.value;
|
|
@@ -1512,22 +1702,22 @@ function asyncGeneratorStep$h(gen, resolve, reject, _next, _throw, key, arg) {
|
|
|
1512
1702
|
Promise.resolve(value).then(_next, _throw);
|
|
1513
1703
|
}
|
|
1514
1704
|
}
|
|
1515
|
-
function _async_to_generator$
|
|
1705
|
+
function _async_to_generator$i(fn) {
|
|
1516
1706
|
return function() {
|
|
1517
1707
|
var self = this, args = arguments;
|
|
1518
1708
|
return new Promise(function(resolve, reject) {
|
|
1519
1709
|
var gen = fn.apply(self, args);
|
|
1520
1710
|
function _next(value) {
|
|
1521
|
-
asyncGeneratorStep$
|
|
1711
|
+
asyncGeneratorStep$i(gen, resolve, reject, _next, _throw, "next", value);
|
|
1522
1712
|
}
|
|
1523
1713
|
function _throw(err) {
|
|
1524
|
-
asyncGeneratorStep$
|
|
1714
|
+
asyncGeneratorStep$i(gen, resolve, reject, _next, _throw, "throw", err);
|
|
1525
1715
|
}
|
|
1526
1716
|
_next(undefined);
|
|
1527
1717
|
});
|
|
1528
1718
|
};
|
|
1529
1719
|
}
|
|
1530
|
-
function _ts_generator$
|
|
1720
|
+
function _ts_generator$i(thisArg, body) {
|
|
1531
1721
|
var f, y, t, _ = {
|
|
1532
1722
|
label: 0,
|
|
1533
1723
|
sent: function() {
|
|
@@ -1663,9 +1853,9 @@ function _ts_generator$h(thisArg, body) {
|
|
|
1663
1853
|
return performMakeLoop({
|
|
1664
1854
|
count: make.count,
|
|
1665
1855
|
make: function make1(i) {
|
|
1666
|
-
return _async_to_generator$
|
|
1856
|
+
return _async_to_generator$i(function() {
|
|
1667
1857
|
var document, data;
|
|
1668
|
-
return _ts_generator$
|
|
1858
|
+
return _ts_generator$i(this, function(_state) {
|
|
1669
1859
|
switch(_state.label){
|
|
1670
1860
|
case 0:
|
|
1671
1861
|
document = newDocumentFn(documentAccessor);
|
|
@@ -2024,9 +2214,9 @@ function documentDataWithIdAndKey(snapshot) {
|
|
|
2024
2214
|
* @param defaultValue - Fallback value when `document` is nullish or the snapshot is unavailable
|
|
2025
2215
|
* @returns The result of `use`, or the default value
|
|
2026
2216
|
*/ function useDocumentSnapshot(document, use, defaultValue) {
|
|
2027
|
-
return _async_to_generator$
|
|
2217
|
+
return _async_to_generator$i(function() {
|
|
2028
2218
|
var snapshot;
|
|
2029
|
-
return _ts_generator$
|
|
2219
|
+
return _ts_generator$i(this, function(_state) {
|
|
2030
2220
|
switch(_state.label){
|
|
2031
2221
|
case 0:
|
|
2032
2222
|
return [
|
|
@@ -2153,8 +2343,8 @@ function documentDataWithIdAndKey(snapshot) {
|
|
|
2153
2343
|
return cached;
|
|
2154
2344
|
}
|
|
2155
2345
|
function getDocumentSnapshotDataPairsForKeys(keys) {
|
|
2156
|
-
return _async_to_generator$
|
|
2157
|
-
return _ts_generator$
|
|
2346
|
+
return _async_to_generator$i(function() {
|
|
2347
|
+
return _ts_generator$i(this, function(_state) {
|
|
2158
2348
|
return [
|
|
2159
2349
|
2,
|
|
2160
2350
|
Promise.all(keys.map(function(key) {
|
|
@@ -2165,9 +2355,9 @@ function documentDataWithIdAndKey(snapshot) {
|
|
|
2165
2355
|
})();
|
|
2166
2356
|
}
|
|
2167
2357
|
function getDocumentSnapshotDataPairsWithDataForKeys(keys) {
|
|
2168
|
-
return _async_to_generator$
|
|
2358
|
+
return _async_to_generator$i(function() {
|
|
2169
2359
|
var pairs;
|
|
2170
|
-
return _ts_generator$
|
|
2360
|
+
return _ts_generator$i(this, function(_state) {
|
|
2171
2361
|
switch(_state.label){
|
|
2172
2362
|
case 0:
|
|
2173
2363
|
return [
|
|
@@ -2309,6 +2499,499 @@ function documentDataWithIdAndKey(snapshot) {
|
|
|
2309
2499
|
* @deprecated Use {@link streamDocumentSnapshotsData} instead.
|
|
2310
2500
|
*/ var latestDataFromDocuments = streamDocumentSnapshotsData;
|
|
2311
2501
|
|
|
2502
|
+
function asyncGeneratorStep$h(gen, resolve, reject, _next, _throw, key, arg) {
|
|
2503
|
+
try {
|
|
2504
|
+
var info = gen[key](arg);
|
|
2505
|
+
var value = info.value;
|
|
2506
|
+
} catch (error) {
|
|
2507
|
+
reject(error);
|
|
2508
|
+
return;
|
|
2509
|
+
}
|
|
2510
|
+
if (info.done) {
|
|
2511
|
+
resolve(value);
|
|
2512
|
+
} else {
|
|
2513
|
+
Promise.resolve(value).then(_next, _throw);
|
|
2514
|
+
}
|
|
2515
|
+
}
|
|
2516
|
+
function _async_to_generator$h(fn) {
|
|
2517
|
+
return function() {
|
|
2518
|
+
var self = this, args = arguments;
|
|
2519
|
+
return new Promise(function(resolve, reject) {
|
|
2520
|
+
var gen = fn.apply(self, args);
|
|
2521
|
+
function _next(value) {
|
|
2522
|
+
asyncGeneratorStep$h(gen, resolve, reject, _next, _throw, "next", value);
|
|
2523
|
+
}
|
|
2524
|
+
function _throw(err) {
|
|
2525
|
+
asyncGeneratorStep$h(gen, resolve, reject, _next, _throw, "throw", err);
|
|
2526
|
+
}
|
|
2527
|
+
_next(undefined);
|
|
2528
|
+
});
|
|
2529
|
+
};
|
|
2530
|
+
}
|
|
2531
|
+
function _ts_generator$h(thisArg, body) {
|
|
2532
|
+
var f, y, t, _ = {
|
|
2533
|
+
label: 0,
|
|
2534
|
+
sent: function() {
|
|
2535
|
+
if (t[0] & 1) throw t[1];
|
|
2536
|
+
return t[1];
|
|
2537
|
+
},
|
|
2538
|
+
trys: [],
|
|
2539
|
+
ops: []
|
|
2540
|
+
}, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype), d = Object.defineProperty;
|
|
2541
|
+
return d(g, "next", {
|
|
2542
|
+
value: verb(0)
|
|
2543
|
+
}), d(g, "throw", {
|
|
2544
|
+
value: verb(1)
|
|
2545
|
+
}), d(g, "return", {
|
|
2546
|
+
value: verb(2)
|
|
2547
|
+
}), typeof Symbol === "function" && d(g, Symbol.iterator, {
|
|
2548
|
+
value: function() {
|
|
2549
|
+
return this;
|
|
2550
|
+
}
|
|
2551
|
+
}), g;
|
|
2552
|
+
function verb(n) {
|
|
2553
|
+
return function(v) {
|
|
2554
|
+
return step([
|
|
2555
|
+
n,
|
|
2556
|
+
v
|
|
2557
|
+
]);
|
|
2558
|
+
};
|
|
2559
|
+
}
|
|
2560
|
+
function step(op) {
|
|
2561
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
2562
|
+
while(g && (g = 0, op[0] && (_ = 0)), _)try {
|
|
2563
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
2564
|
+
if (y = 0, t) op = [
|
|
2565
|
+
op[0] & 2,
|
|
2566
|
+
t.value
|
|
2567
|
+
];
|
|
2568
|
+
switch(op[0]){
|
|
2569
|
+
case 0:
|
|
2570
|
+
case 1:
|
|
2571
|
+
t = op;
|
|
2572
|
+
break;
|
|
2573
|
+
case 4:
|
|
2574
|
+
_.label++;
|
|
2575
|
+
return {
|
|
2576
|
+
value: op[1],
|
|
2577
|
+
done: false
|
|
2578
|
+
};
|
|
2579
|
+
case 5:
|
|
2580
|
+
_.label++;
|
|
2581
|
+
y = op[1];
|
|
2582
|
+
op = [
|
|
2583
|
+
0
|
|
2584
|
+
];
|
|
2585
|
+
continue;
|
|
2586
|
+
case 7:
|
|
2587
|
+
op = _.ops.pop();
|
|
2588
|
+
_.trys.pop();
|
|
2589
|
+
continue;
|
|
2590
|
+
default:
|
|
2591
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
|
|
2592
|
+
_ = 0;
|
|
2593
|
+
continue;
|
|
2594
|
+
}
|
|
2595
|
+
if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
|
|
2596
|
+
_.label = op[1];
|
|
2597
|
+
break;
|
|
2598
|
+
}
|
|
2599
|
+
if (op[0] === 6 && _.label < t[1]) {
|
|
2600
|
+
_.label = t[1];
|
|
2601
|
+
t = op;
|
|
2602
|
+
break;
|
|
2603
|
+
}
|
|
2604
|
+
if (t && _.label < t[2]) {
|
|
2605
|
+
_.label = t[2];
|
|
2606
|
+
_.ops.push(op);
|
|
2607
|
+
break;
|
|
2608
|
+
}
|
|
2609
|
+
if (t[2]) _.ops.pop();
|
|
2610
|
+
_.trys.pop();
|
|
2611
|
+
continue;
|
|
2612
|
+
}
|
|
2613
|
+
op = body.call(thisArg, _);
|
|
2614
|
+
} catch (e) {
|
|
2615
|
+
op = [
|
|
2616
|
+
6,
|
|
2617
|
+
e
|
|
2618
|
+
];
|
|
2619
|
+
y = 0;
|
|
2620
|
+
} finally{
|
|
2621
|
+
f = t = 0;
|
|
2622
|
+
}
|
|
2623
|
+
if (op[0] & 5) throw op[1];
|
|
2624
|
+
return {
|
|
2625
|
+
value: op[0] ? op[1] : void 0,
|
|
2626
|
+
done: true
|
|
2627
|
+
};
|
|
2628
|
+
}
|
|
2629
|
+
}
|
|
2630
|
+
/**
|
|
2631
|
+
* Default TTL used by the in-memory cache when no TTL is specified.
|
|
2632
|
+
*
|
|
2633
|
+
* Set to 5 minutes.
|
|
2634
|
+
*/ var IN_MEMORY_CACHE_DEFAULT_TTL = 5 * 60 * 1000;
|
|
2635
|
+
/**
|
|
2636
|
+
* Creates an in-memory {@link FirestoreCollectionCacheDelegate} backed by a Map.
|
|
2637
|
+
*
|
|
2638
|
+
* @example
|
|
2639
|
+
* ```ts
|
|
2640
|
+
* const delegate = inMemoryFirestoreCollectionCacheDelegate<UserData>();
|
|
2641
|
+
* ```
|
|
2642
|
+
*/ function inMemoryFirestoreCollectionCacheDelegate() {
|
|
2643
|
+
var entries = new Map();
|
|
2644
|
+
return {
|
|
2645
|
+
get: function get(key) {
|
|
2646
|
+
return entries.get(key);
|
|
2647
|
+
},
|
|
2648
|
+
set: function set(key, entry) {
|
|
2649
|
+
return entries.set(key, entry);
|
|
2650
|
+
},
|
|
2651
|
+
delete: function _delete(key) {
|
|
2652
|
+
entries.delete(key);
|
|
2653
|
+
},
|
|
2654
|
+
clear: function clear() {
|
|
2655
|
+
return entries.clear();
|
|
2656
|
+
}
|
|
2657
|
+
};
|
|
2658
|
+
}
|
|
2659
|
+
/**
|
|
2660
|
+
* Creates a no-storage {@link FirestoreCollectionCacheDelegate} that discards all data.
|
|
2661
|
+
*
|
|
2662
|
+
* Used by {@link readLoggingFirestoreContextCache} where only event emission matters.
|
|
2663
|
+
*
|
|
2664
|
+
* @example
|
|
2665
|
+
* ```ts
|
|
2666
|
+
* const delegate = noopFirestoreCollectionCacheDelegate<UserData>();
|
|
2667
|
+
* ```
|
|
2668
|
+
*/ function noopFirestoreCollectionCacheDelegate() {
|
|
2669
|
+
return {
|
|
2670
|
+
get: function get() {
|
|
2671
|
+
return undefined;
|
|
2672
|
+
},
|
|
2673
|
+
set: function set() {},
|
|
2674
|
+
delete: function _delete() {},
|
|
2675
|
+
clear: function clear() {}
|
|
2676
|
+
};
|
|
2677
|
+
}
|
|
2678
|
+
/**
|
|
2679
|
+
* Creates a {@link FirestoreCollectionCache} with shared TTL, event, and enabled/disabled logic.
|
|
2680
|
+
*
|
|
2681
|
+
* The actual storage is handled by the provided {@link FirestoreCollectionCacheDelegate}.
|
|
2682
|
+
*
|
|
2683
|
+
* @template T - The document data type
|
|
2684
|
+
* @param config - Configuration including TTL, enabled check, event emitter, and delegate
|
|
2685
|
+
* @returns A collection cache instance
|
|
2686
|
+
*/ function makeFirestoreCollectionCache(config) {
|
|
2687
|
+
var defaultTtl = config.defaultTtl, isEnabled = config.isEnabled, emitEvent = config.emitEvent, delegate = config.delegate;
|
|
2688
|
+
function isFresh(entry, maxTtl) {
|
|
2689
|
+
var age = Date.now() - entry.cachedAt.getTime();
|
|
2690
|
+
return age < maxTtl;
|
|
2691
|
+
}
|
|
2692
|
+
var cache = {
|
|
2693
|
+
defaultTtl: defaultTtl,
|
|
2694
|
+
get: function get(key, maxTtl) {
|
|
2695
|
+
var result;
|
|
2696
|
+
if (isEnabled()) {
|
|
2697
|
+
var entry = delegate.get(key);
|
|
2698
|
+
var effectiveTtl = maxTtl !== null && maxTtl !== void 0 ? maxTtl : defaultTtl;
|
|
2699
|
+
if (entry && isFresh(entry, effectiveTtl)) {
|
|
2700
|
+
emitEvent('hit', key);
|
|
2701
|
+
result = entry;
|
|
2702
|
+
} else {
|
|
2703
|
+
if (entry) {
|
|
2704
|
+
delegate.delete(key);
|
|
2705
|
+
}
|
|
2706
|
+
emitEvent('miss', key);
|
|
2707
|
+
}
|
|
2708
|
+
}
|
|
2709
|
+
return result;
|
|
2710
|
+
},
|
|
2711
|
+
set: function set(key, input) {
|
|
2712
|
+
if (isEnabled()) {
|
|
2713
|
+
var entry = {
|
|
2714
|
+
key: key,
|
|
2715
|
+
data: input.data,
|
|
2716
|
+
cachedAt: new Date()
|
|
2717
|
+
};
|
|
2718
|
+
delegate.set(key, entry);
|
|
2719
|
+
emitEvent('update', key);
|
|
2720
|
+
}
|
|
2721
|
+
},
|
|
2722
|
+
invalidate: function invalidate(key) {
|
|
2723
|
+
if (isEnabled()) {
|
|
2724
|
+
delegate.delete(key);
|
|
2725
|
+
emitEvent('invalidate', key);
|
|
2726
|
+
}
|
|
2727
|
+
},
|
|
2728
|
+
clear: function clear() {
|
|
2729
|
+
delegate.clear();
|
|
2730
|
+
},
|
|
2731
|
+
instance: function instance() {
|
|
2732
|
+
return makeFirestoreCollectionCacheInstance(cache);
|
|
2733
|
+
},
|
|
2734
|
+
destroy: function destroy() {
|
|
2735
|
+
delegate.clear();
|
|
2736
|
+
}
|
|
2737
|
+
};
|
|
2738
|
+
return cache;
|
|
2739
|
+
}
|
|
2740
|
+
/**
|
|
2741
|
+
* Creates a {@link FirestoreContextCache} with shared event handling, enable/disable controls,
|
|
2742
|
+
* and per-type management. The actual cache storage for each collection is handled by
|
|
2743
|
+
* delegates created via {@link MakeFirestoreContextCacheConfig.createDelegate}.
|
|
2744
|
+
*
|
|
2745
|
+
* This is the shared foundation used by both {@link inMemoryFirestoreContextCache} and
|
|
2746
|
+
* {@link readLoggingFirestoreContextCache}.
|
|
2747
|
+
*
|
|
2748
|
+
* @param config - Configuration including default TTL and delegate factory
|
|
2749
|
+
* @returns A new context cache
|
|
2750
|
+
*
|
|
2751
|
+
* @example
|
|
2752
|
+
* ```ts
|
|
2753
|
+
* const contextCache = makeFirestoreContextCache({
|
|
2754
|
+
* defaultTtl: 60000,
|
|
2755
|
+
* createDelegate: () => inMemoryFirestoreCollectionCacheDelegate()
|
|
2756
|
+
* });
|
|
2757
|
+
* ```
|
|
2758
|
+
*/ function makeFirestoreContextCache(config) {
|
|
2759
|
+
var globalDefaultTtl = config.defaultTtl, createDelegate = config.createDelegate, mapEvents$ = config.mapEvents$;
|
|
2760
|
+
var collectionCaches = new Map();
|
|
2761
|
+
var disabledTypes = new Set();
|
|
2762
|
+
var eventsSubject = new Subject();
|
|
2763
|
+
var globalEnabled = true;
|
|
2764
|
+
var rawEvents$ = eventsSubject.asObservable();
|
|
2765
|
+
var events$ = mapEvents$ ? mapEvents$(rawEvents$) : rawEvents$;
|
|
2766
|
+
function emitEvent(type, collectionType, key) {
|
|
2767
|
+
eventsSubject.next({
|
|
2768
|
+
type: type,
|
|
2769
|
+
collectionType: collectionType,
|
|
2770
|
+
key: key !== null && key !== void 0 ? key : null,
|
|
2771
|
+
timestamp: new Date()
|
|
2772
|
+
});
|
|
2773
|
+
}
|
|
2774
|
+
function isEffectivelyEnabled(collectionType) {
|
|
2775
|
+
return globalEnabled && !disabledTypes.has(collectionType);
|
|
2776
|
+
}
|
|
2777
|
+
var contextCache = {
|
|
2778
|
+
cacheForCollection: function cacheForCollection(collectionType, collectionConfig) {
|
|
2779
|
+
var cache = collectionCaches.get(collectionType);
|
|
2780
|
+
if (!cache) {
|
|
2781
|
+
var _collectionConfig_defaultTtl;
|
|
2782
|
+
cache = makeFirestoreCollectionCache({
|
|
2783
|
+
defaultTtl: (_collectionConfig_defaultTtl = collectionConfig.defaultTtl) !== null && _collectionConfig_defaultTtl !== void 0 ? _collectionConfig_defaultTtl : globalDefaultTtl,
|
|
2784
|
+
isEnabled: function isEnabled() {
|
|
2785
|
+
return isEffectivelyEnabled(collectionType);
|
|
2786
|
+
},
|
|
2787
|
+
emitEvent: function emitEvent1(type, key) {
|
|
2788
|
+
return emitEvent(type, collectionType, key);
|
|
2789
|
+
},
|
|
2790
|
+
delegate: createDelegate(collectionType)
|
|
2791
|
+
});
|
|
2792
|
+
collectionCaches.set(collectionType, cache);
|
|
2793
|
+
}
|
|
2794
|
+
return cache;
|
|
2795
|
+
},
|
|
2796
|
+
events$: events$,
|
|
2797
|
+
get disabledTypes () {
|
|
2798
|
+
return disabledTypes;
|
|
2799
|
+
},
|
|
2800
|
+
isEnabled: function isEnabled() {
|
|
2801
|
+
return globalEnabled;
|
|
2802
|
+
},
|
|
2803
|
+
setEnabled: function setEnabled(enabled) {
|
|
2804
|
+
globalEnabled = enabled;
|
|
2805
|
+
},
|
|
2806
|
+
clearAll: function clearAll() {
|
|
2807
|
+
collectionCaches.forEach(function(cache) {
|
|
2808
|
+
return cache.clear();
|
|
2809
|
+
});
|
|
2810
|
+
},
|
|
2811
|
+
isEnabledForType: function isEnabledForType(collectionType) {
|
|
2812
|
+
return isEffectivelyEnabled(collectionType);
|
|
2813
|
+
},
|
|
2814
|
+
setEnabledForType: function setEnabledForType(collectionType, enabled) {
|
|
2815
|
+
if (enabled) {
|
|
2816
|
+
disabledTypes.delete(collectionType);
|
|
2817
|
+
} else {
|
|
2818
|
+
disabledTypes.add(collectionType);
|
|
2819
|
+
}
|
|
2820
|
+
var eventType = enabled ? 'enable_collection' : 'disable_collection';
|
|
2821
|
+
emitEvent(eventType, collectionType);
|
|
2822
|
+
},
|
|
2823
|
+
clearForType: function clearForType(collectionType) {
|
|
2824
|
+
var cache = collectionCaches.get(collectionType);
|
|
2825
|
+
if (cache) {
|
|
2826
|
+
cache.clear();
|
|
2827
|
+
}
|
|
2828
|
+
},
|
|
2829
|
+
destroy: function destroy() {
|
|
2830
|
+
eventsSubject.complete();
|
|
2831
|
+
collectionCaches.forEach(function(cache) {
|
|
2832
|
+
return cache.destroy();
|
|
2833
|
+
});
|
|
2834
|
+
collectionCaches.clear();
|
|
2835
|
+
}
|
|
2836
|
+
};
|
|
2837
|
+
return contextCache;
|
|
2838
|
+
}
|
|
2839
|
+
// MARK: In-Memory Cache
|
|
2840
|
+
/**
|
|
2841
|
+
* Creates a {@link FirestoreContextCacheFactory} that stores cached documents in memory.
|
|
2842
|
+
*
|
|
2843
|
+
* Uses simple Map-based storage with TTL-based expiration. Suitable for
|
|
2844
|
+
* client-side caching where the application lifecycle matches the cache lifecycle.
|
|
2845
|
+
*
|
|
2846
|
+
* @returns A factory function that creates in-memory context caches
|
|
2847
|
+
*
|
|
2848
|
+
* @example
|
|
2849
|
+
* ```ts
|
|
2850
|
+
* const factory = inMemoryFirestoreContextCacheFactory();
|
|
2851
|
+
* const contextCache = factory({ defaultTtl: 60000 });
|
|
2852
|
+
* ```
|
|
2853
|
+
*/ function inMemoryFirestoreContextCacheFactory() {
|
|
2854
|
+
return function(config) {
|
|
2855
|
+
return inMemoryFirestoreContextCache(config);
|
|
2856
|
+
};
|
|
2857
|
+
}
|
|
2858
|
+
/**
|
|
2859
|
+
* Creates an in-memory {@link FirestoreContextCache} that manages per-collection
|
|
2860
|
+
* caches with TTL-based expiration, per-type enable/disable, and event streaming.
|
|
2861
|
+
*
|
|
2862
|
+
* @param config - Optional configuration
|
|
2863
|
+
* @returns A new context cache
|
|
2864
|
+
*
|
|
2865
|
+
* @example
|
|
2866
|
+
* ```ts
|
|
2867
|
+
* const contextCache = inMemoryFirestoreContextCache({ defaultTtl: 60000 });
|
|
2868
|
+
* const userCache = contextCache.cacheForCollection<UserData>('user', { defaultTtl: 30000 });
|
|
2869
|
+
* userCache.set('users/abc', { data: userData });
|
|
2870
|
+
* ```
|
|
2871
|
+
*/ function inMemoryFirestoreContextCache(config) {
|
|
2872
|
+
var _ref;
|
|
2873
|
+
return makeFirestoreContextCache({
|
|
2874
|
+
defaultTtl: (_ref = config === null || config === void 0 ? void 0 : config.defaultTtl) !== null && _ref !== void 0 ? _ref : IN_MEMORY_CACHE_DEFAULT_TTL,
|
|
2875
|
+
createDelegate: function createDelegate() {
|
|
2876
|
+
return inMemoryFirestoreCollectionCacheDelegate();
|
|
2877
|
+
}
|
|
2878
|
+
});
|
|
2879
|
+
}
|
|
2880
|
+
// MARK: Read-Logging Cache
|
|
2881
|
+
/**
|
|
2882
|
+
* Creates a {@link FirestoreContextCacheFactory} that emits events for all cache interactions
|
|
2883
|
+
* but does not actually store any data.
|
|
2884
|
+
*
|
|
2885
|
+
* Useful for analytics, debugging, and monitoring read patterns without the
|
|
2886
|
+
* memory overhead of actual caching.
|
|
2887
|
+
*
|
|
2888
|
+
* @returns A factory function that creates read-logging context caches
|
|
2889
|
+
*
|
|
2890
|
+
* @example
|
|
2891
|
+
* ```ts
|
|
2892
|
+
* const factory = readLoggingFirestoreContextCacheFactory();
|
|
2893
|
+
* const contextCache = factory();
|
|
2894
|
+
* contextCache.events$.subscribe((event) => console.log(event));
|
|
2895
|
+
* ```
|
|
2896
|
+
*/ function readLoggingFirestoreContextCacheFactory() {
|
|
2897
|
+
return function(config) {
|
|
2898
|
+
return readLoggingFirestoreContextCache(config);
|
|
2899
|
+
};
|
|
2900
|
+
}
|
|
2901
|
+
/**
|
|
2902
|
+
* Creates a {@link FirestoreContextCache} that emits events for all cache interactions
|
|
2903
|
+
* but does not actually store any data. Every `get()` call results in a 'miss' event.
|
|
2904
|
+
*
|
|
2905
|
+
* Useful for tracking read patterns, debugging, and monitoring which documents
|
|
2906
|
+
* are accessed and how often, without the memory overhead of actual caching.
|
|
2907
|
+
*
|
|
2908
|
+
* @param config - Optional configuration
|
|
2909
|
+
* @returns A new read-logging context cache
|
|
2910
|
+
*
|
|
2911
|
+
* @example
|
|
2912
|
+
* ```ts
|
|
2913
|
+
* const contextCache = readLoggingFirestoreContextCache();
|
|
2914
|
+
* contextCache.events$.subscribe((event) => {
|
|
2915
|
+
* console.log(`${event.type}: ${event.collectionType} ${event.key}`);
|
|
2916
|
+
* });
|
|
2917
|
+
* ```
|
|
2918
|
+
*/ function readLoggingFirestoreContextCache(config) {
|
|
2919
|
+
var _ref;
|
|
2920
|
+
return makeFirestoreContextCache({
|
|
2921
|
+
defaultTtl: (_ref = config === null || config === void 0 ? void 0 : config.defaultTtl) !== null && _ref !== void 0 ? _ref : IN_MEMORY_CACHE_DEFAULT_TTL,
|
|
2922
|
+
createDelegate: function createDelegate() {
|
|
2923
|
+
return noopFirestoreCollectionCacheDelegate();
|
|
2924
|
+
},
|
|
2925
|
+
mapEvents$: function mapEvents$(events$) {
|
|
2926
|
+
return events$.pipe(filter(function(event) {
|
|
2927
|
+
return event.type !== 'miss';
|
|
2928
|
+
}));
|
|
2929
|
+
}
|
|
2930
|
+
});
|
|
2931
|
+
}
|
|
2932
|
+
// MARK: Cache Instance
|
|
2933
|
+
/**
|
|
2934
|
+
* Creates an operation-scoped {@link FirestoreCollectionCacheInstance} that deduplicates
|
|
2935
|
+
* concurrent reads and uses the parent cache as a warm start.
|
|
2936
|
+
*
|
|
2937
|
+
* @template T - The document data type
|
|
2938
|
+
* @param parentCache - The parent collection cache for warm-start lookups
|
|
2939
|
+
* @returns An operation-scoped cache instance
|
|
2940
|
+
*/ function makeFirestoreCollectionCacheInstance(parentCache) {
|
|
2941
|
+
var localEntries = new Map();
|
|
2942
|
+
var inFlight = new Map();
|
|
2943
|
+
var instance = {
|
|
2944
|
+
get: function get(key, maxTtl) {
|
|
2945
|
+
// Check local instance cache first
|
|
2946
|
+
var result = localEntries.get(key);
|
|
2947
|
+
// Fall back to parent cache
|
|
2948
|
+
if (!result) {
|
|
2949
|
+
result = parentCache.get(key, maxTtl);
|
|
2950
|
+
if (result) {
|
|
2951
|
+
localEntries.set(key, result);
|
|
2952
|
+
}
|
|
2953
|
+
}
|
|
2954
|
+
return result;
|
|
2955
|
+
},
|
|
2956
|
+
getOrFetch: function getOrFetch(key, fetchFn) {
|
|
2957
|
+
return _async_to_generator$h(function() {
|
|
2958
|
+
var cached, existing, fetchPromise;
|
|
2959
|
+
return _ts_generator$h(this, function(_state) {
|
|
2960
|
+
// Check local cache first
|
|
2961
|
+
cached = localEntries.get(key);
|
|
2962
|
+
if (cached) {
|
|
2963
|
+
return [
|
|
2964
|
+
2,
|
|
2965
|
+
cached
|
|
2966
|
+
];
|
|
2967
|
+
}
|
|
2968
|
+
// Check for in-flight request
|
|
2969
|
+
existing = inFlight.get(key);
|
|
2970
|
+
if (existing) {
|
|
2971
|
+
return [
|
|
2972
|
+
2,
|
|
2973
|
+
existing
|
|
2974
|
+
];
|
|
2975
|
+
}
|
|
2976
|
+
// Start new fetch
|
|
2977
|
+
fetchPromise = fetchFn().then(function(entry) {
|
|
2978
|
+
localEntries.set(key, entry);
|
|
2979
|
+
parentCache.set(key, entry);
|
|
2980
|
+
inFlight.delete(key);
|
|
2981
|
+
return entry;
|
|
2982
|
+
});
|
|
2983
|
+
inFlight.set(key, fetchPromise);
|
|
2984
|
+
return [
|
|
2985
|
+
2,
|
|
2986
|
+
fetchPromise
|
|
2987
|
+
];
|
|
2988
|
+
});
|
|
2989
|
+
})();
|
|
2990
|
+
}
|
|
2991
|
+
};
|
|
2992
|
+
return instance;
|
|
2993
|
+
}
|
|
2994
|
+
|
|
2312
2995
|
/**
|
|
2313
2996
|
* Platform-agnostic Firestore type definitions.
|
|
2314
2997
|
*
|
|
@@ -7091,9 +7774,14 @@ var FIRESTORE_DUMMY_MODEL_KEY = 'dummymodel/dummykey';
|
|
|
7091
7774
|
* @param inputConfig - Configuration for the collection
|
|
7092
7775
|
* @returns A fully configured FirestoreCollection instance
|
|
7093
7776
|
*/ function makeFirestoreCollection(inputConfig) {
|
|
7777
|
+
var _config_defaultTtl;
|
|
7094
7778
|
var config = inputConfig;
|
|
7095
7779
|
var modelIdentity = config.modelIdentity, collection = config.collection, firestoreContext = config.firestoreContext, firestoreAccessorDriver = config.firestoreAccessorDriver;
|
|
7096
7780
|
config.queryLike = collection;
|
|
7781
|
+
var cache = firestoreContext.cache.cacheForCollection(modelIdentity.collectionType, {
|
|
7782
|
+
defaultTtl: (_config_defaultTtl = config.defaultTtl) !== null && _config_defaultTtl !== void 0 ? _config_defaultTtl : 0
|
|
7783
|
+
});
|
|
7784
|
+
config.cache = cache;
|
|
7097
7785
|
var documentAccessor = firestoreDocumentAccessorFactory(config);
|
|
7098
7786
|
var documentAccessorExtension = firestoreDocumentAccessorContextExtension({
|
|
7099
7787
|
documentAccessor: documentAccessor,
|
|
@@ -7106,6 +7794,7 @@ var FIRESTORE_DUMMY_MODEL_KEY = 'dummymodel/dummykey';
|
|
|
7106
7794
|
var query = queryFactory.query;
|
|
7107
7795
|
return _object_spread_props$f(_object_spread$j({
|
|
7108
7796
|
config: config,
|
|
7797
|
+
cache: cache,
|
|
7109
7798
|
modelIdentity: modelIdentity,
|
|
7110
7799
|
collection: collection,
|
|
7111
7800
|
queryLike: collection,
|
|
@@ -7202,7 +7891,12 @@ function _object_spread_props$e(target, source) {
|
|
|
7202
7891
|
* @param config - Configuration for the collection group
|
|
7203
7892
|
* @returns A fully configured FirestoreCollectionGroup instance
|
|
7204
7893
|
*/ function makeFirestoreCollectionGroup(config) {
|
|
7894
|
+
var _config_defaultTtl;
|
|
7205
7895
|
var modelIdentity = config.modelIdentity, queryLike = config.queryLike, firestoreContext = config.firestoreContext, firestoreAccessorDriver = config.firestoreAccessorDriver;
|
|
7896
|
+
var cache = firestoreContext.cache.cacheForCollection(modelIdentity.collectionType, {
|
|
7897
|
+
defaultTtl: (_config_defaultTtl = config.defaultTtl) !== null && _config_defaultTtl !== void 0 ? _config_defaultTtl : 0
|
|
7898
|
+
});
|
|
7899
|
+
config.cache = cache;
|
|
7206
7900
|
// Create the document accessor for loading documents
|
|
7207
7901
|
var documentAccessor = limitedFirestoreDocumentAccessorFactory(config);
|
|
7208
7902
|
// Create the document accessor extension with context
|
|
@@ -7221,6 +7915,7 @@ function _object_spread_props$e(target, source) {
|
|
|
7221
7915
|
// Return the fully constructed collection group
|
|
7222
7916
|
return _object_spread_props$e(_object_spread$i({
|
|
7223
7917
|
config: config,
|
|
7918
|
+
cache: cache,
|
|
7224
7919
|
queryLike: queryLike,
|
|
7225
7920
|
modelIdentity: modelIdentity,
|
|
7226
7921
|
firestoreContext: firestoreContext
|
|
@@ -7379,8 +8074,11 @@ function _unsupported_iterable_to_array$9(o, minLen) {
|
|
|
7379
8074
|
* @param drivers - The Firestore drivers to use in created contexts
|
|
7380
8075
|
* @returns A factory function that creates FirestoreContext instances
|
|
7381
8076
|
*/ function firestoreContextFactory(drivers) {
|
|
7382
|
-
return function(firestore) {
|
|
8077
|
+
return function(firestore, params) {
|
|
7383
8078
|
var _drivers_firestoreAccessorDriver;
|
|
8079
|
+
var _ref;
|
|
8080
|
+
var _params_firestoreContextCacheFactory;
|
|
8081
|
+
var contextCache = (_ref = params === null || params === void 0 ? void 0 : (_params_firestoreContextCacheFactory = params.firestoreContextCacheFactory) === null || _params_firestoreContextCacheFactory === void 0 ? void 0 : _params_firestoreContextCacheFactory.call(params)) !== null && _ref !== void 0 ? _ref : noopFirestoreContextCache();
|
|
7384
8082
|
var makeFirestoreCollectionConfig = function makeFirestoreCollectionConfig(config) {
|
|
7385
8083
|
var collection = config.collection;
|
|
7386
8084
|
var queryLike = collection !== null && collection !== void 0 ? collection : config.queryLike;
|
|
@@ -7403,6 +8101,7 @@ function _unsupported_iterable_to_array$9(o, minLen) {
|
|
|
7403
8101
|
var context = {
|
|
7404
8102
|
firestore: firestore,
|
|
7405
8103
|
drivers: drivers,
|
|
8104
|
+
cache: contextCache,
|
|
7406
8105
|
collectionGroup: function collectionGroup(collectionId) {
|
|
7407
8106
|
return drivers.firestoreAccessorDriver.collectionGroup(firestore, collectionId);
|
|
7408
8107
|
},
|
|
@@ -8748,8 +9447,13 @@ var _obj;
|
|
|
8748
9447
|
*
|
|
8749
9448
|
* @example
|
|
8750
9449
|
* ```ts
|
|
9450
|
+
* // Without caching
|
|
8751
9451
|
* const context = clientFirebaseFirestoreContextFactory(firestore);
|
|
8752
|
-
*
|
|
9452
|
+
*
|
|
9453
|
+
* // With caching
|
|
9454
|
+
* const context = clientFirebaseFirestoreContextFactory(firestore, {
|
|
9455
|
+
* firestoreContextCacheFactory: inMemoryFirestoreContextCacheFactory()
|
|
9456
|
+
* });
|
|
8753
9457
|
* ```
|
|
8754
9458
|
*/ var clientFirebaseFirestoreContextFactory = firestoreContextFactory(firebaseFirestoreClientDrivers());
|
|
8755
9459
|
|
|
@@ -18104,4 +18808,4 @@ function _is_native_reflect_construct() {
|
|
|
18104
18808
|
});
|
|
18105
18809
|
}
|
|
18106
18810
|
|
|
18107
|
-
export { ALL_OIDC_TOKEN_ENDPOINT_AUTH_METHOD_OPTIONS, ALL_STORAGE_FILE_NOTIFICATION_TASK_TYPES, ALL_USER_UPLOADS_FOLDER_NAME, ALL_USER_UPLOADS_FOLDER_PATH, AbstractFirestoreDocument, AbstractFirestoreDocumentDataAccessorWrapper, AbstractFirestoreDocumentWithParent, AppNotificationTemplateTypeInfoRecordService, BASE_MODEL_STORAGE_FILE_PATH, CALL_MODEL_APP_FUNCTION_KEY, COPY_USER_RELATED_DATA_ACCESSOR_FACTORY_FUNCTION, CREATE_NOTIFICATION_ID_REQUIRED_ERROR_CODE, ContextGrantedModelRolesReaderInstance, DBX_FIREBASE_SERVER_NO_AUTH_ERROR_CODE, DBX_FIREBASE_SERVER_NO_UID_ERROR_CODE, DEFAULT_DATE_CELL_RANGE_VALUE, DEFAULT_FIRESTORE_DATE_CELL_SCHEDULE_VALUE, DEFAULT_FIRESTORE_ITEM_PAGE_ITERATOR_ITEMS_PER_PAGE, DEFAULT_FIRESTORE_STRING_FIELD_VALUE, DEFAULT_FIRESTORE_UNITED_STATES_ADDRESS_VALUE, DEFAULT_FIRESTORE_WEBSITE_FILE_LINK_VALUE, DEFAULT_ITERATE_FIRESTORE_DOCUMENT_SNAPSHOT_BATCHES_BATCH_SIZE, DEFAULT_NOTIFICATION_TASK_NOTIFICATION_MODEL_KEY, DEFAULT_NOTIFICATION_TASK_SUBTASK_CLEANUP_RETRY_ATTEMPTS, DEFAULT_NOTIFICATION_TASK_SUBTASK_CLEANUP_RETRY_DELAY, DEFAULT_NOTIFICATION_TEMPLATE_TYPE, DEFAULT_QUERY_CHANGE_WATCHER_DELAY, DEFAULT_SINGLE_ITEM_FIRESTORE_COLLECTION_DOCUMENT_IDENTIFIER, DEFAULT_UPLOADED_FILE_TYPE_DETERMINATION_LEVEL, DEFAULT_WEBSITE_LINK, EMPTY_STORAGE_FILE_PURPOSE_SUBGROUP, EXACT_UPLOADED_FILE_TYPE_DETERMINATION_LEVEL, FIREBASE_AUTH_CREDENTIAL_ALREADY_IN_USE_ERROR, FIREBASE_AUTH_EMAIL_ALREADY_EXISTS_ERROR, FIREBASE_AUTH_EMAIL_ALREADY_IN_USE_ERROR, FIREBASE_AUTH_INVALID_PHONE_NUMBER_ERROR, FIREBASE_AUTH_NETWORK_REQUEST_ERROR, FIREBASE_AUTH_NETWORK_REQUEST_FAILED, FIREBASE_AUTH_PASSWORD_MAX_LENGTH, FIREBASE_AUTH_PASSWORD_MIN_LENGTH, FIREBASE_AUTH_PHONE_NUMBER_ALREADY_EXISTS_ERROR, FIREBASE_AUTH_PROVIDER_ALREADY_LINKED_ERROR, FIREBASE_AUTH_USER_NOT_FOUND_ERROR, FIREBASE_AUTH_WRONG_PASSWORD, FIREBASE_DEVELOPMENT_FUNCTIONS_MAP_KEY, FIREBASE_SERVER_AUTH_CLAIMS_RESET_LAST_COM_DATE_KEY, FIREBASE_SERVER_AUTH_CLAIMS_RESET_PASSWORD_KEY, FIREBASE_SERVER_AUTH_CLAIMS_SETUP_LAST_COM_DATE_KEY, FIREBASE_SERVER_AUTH_CLAIMS_SETUP_PASSWORD_KEY, FIRESTORE_CLIENT_QUERY_CONSTRAINT_HANDLER_MAPPING, FIRESTORE_COLLECTION_NAME_SEPARATOR, FIRESTORE_DUMMY_MODEL_KEY, FIRESTORE_EMPTY_VALUE, FIRESTORE_END_AT_QUERY_CONSTRAINT_TYPE, FIRESTORE_END_AT_VALUE_QUERY_CONSTRAINT_TYPE, FIRESTORE_END_BEFORE_QUERY_CONSTRAINT_TYPE, FIRESTORE_ITEM_PAGE_ITERATOR, FIRESTORE_ITEM_PAGE_ITERATOR_DELEGATE, FIRESTORE_LIMIT_QUERY_CONSTRAINT_TYPE, FIRESTORE_LIMIT_TO_LAST_QUERY_CONSTRAINT_TYPE, FIRESTORE_MAX_WHERE_IN_FILTER_ARGS_COUNT, FIRESTORE_MODEL_ID_REGEX, FIRESTORE_MODEL_KEY_REGEX, FIRESTORE_MODEL_KEY_REGEX_STRICT, FIRESTORE_OFFSET_QUERY_CONSTRAINT_TYPE, FIRESTORE_ORDER_BY_DOCUMENT_ID_QUERY_CONSTRAINT_TYPE, FIRESTORE_ORDER_BY_QUERY_CONSTRAINT_TYPE, FIRESTORE_PASSTHROUGH_FIELD, FIRESTORE_PERMISSION_DENIED_ERROR_CODE, FIRESTORE_START_AFTER_QUERY_CONSTRAINT_TYPE, FIRESTORE_START_AT_QUERY_CONSTRAINT_TYPE, FIRESTORE_START_AT_VALUE_QUERY_CONSTRAINT_TYPE, FIRESTORE_WHERE_DOCUMENT_ID_QUERY_CONSTRAINT_TYPE, FIRESTORE_WHERE_QUERY_CONSTRAINT_TYPE, FirebaseDevelopmentFunctions, FirebaseModelPermissionServiceInstance, FirebaseServerError, FirestoreAccessorStreamMode, FirestoreDocumentContextType, HIGH_UPLOADED_FILE_TYPE_DETERMINATION_LEVEL, LOW_UPLOADED_FILE_TYPE_DETERMINATION_LEVEL, MAX_FIRESTORE_MAP_ZOOM_LEVEL_VALUE, MIN_FIRESTORE_MAP_ZOOM_LEVEL_VALUE, MODEL_FUNCTION_FIREBASE_CRUD_FUNCTION_SPECIFIER_DEFAULT, MODEL_FUNCTION_FIREBASE_CRUD_FUNCTION_SPECIFIER_SPLITTER, MODEL_STORAGE_FILE_SLASH_PATH_FACTORY, ModifyBeforeSetFirestoreDocumentDataAccessorWrapper, NOTIFICATION_BOX_DOES_NOT_EXIST_ERROR_CODE, NOTIFICATION_BOX_EXCLUSION_TARGET_INVALID_ERROR_CODE, NOTIFICATION_BOX_EXISTS_FOR_MODEL_ERROR_CODE, NOTIFICATION_BOX_RECIPIENT_DOES_NOT_EXIST_ERROR_CODE, NOTIFICATION_MESSAGE_MAX_LENGTH, NOTIFICATION_MESSAGE_MIN_LENGTH, NOTIFICATION_MODEL_ALREADY_INITIALIZED_ERROR_CODE, NOTIFICATION_RECIPIENT_NAME_MAX_LENGTH, NOTIFICATION_RECIPIENT_NAME_MIN_LENGTH, NOTIFICATION_SUBJECT_MAX_LENGTH, NOTIFICATION_SUBJECT_MIN_LENGTH, NOTIFICATION_SUMMARY_EMBEDDED_NOTIFICATION_ITEM_MESSAGE_MAX_LENGTH, NOTIFICATION_SUMMARY_EMBEDDED_NOTIFICATION_ITEM_SUBJECT_MAX_LENGTH, NOTIFICATION_SUMMARY_ITEM_LIMIT, NOTIFICATION_TASK_SUBTASK_CHECKPOINT_CLEANUP, NOTIFICATION_TASK_SUBTASK_CHECKPOINT_PROCESSING, NOTIFICATION_USER_BLOCKED_FROM_BEING_ADD_TO_RECIPIENTS_ERROR_CODE, NOTIFICATION_USER_INVALID_UID_FOR_CREATE_ERROR_CODE, NOTIFICATION_USER_LOCKED_CONFIG_FROM_BEING_UPDATED_ERROR_CODE, NOTIFICATION_WEEK_NOTIFICATION_ITEM_LIMIT, NotificationBoxDocument, NotificationBoxRecipientFlag, NotificationBoxRecipientTemplateConfigBoolean, NotificationDocument, NotificationFirestoreCollections, NotificationFunctions, NotificationMessageFlag, NotificationRecipientSendFlag, NotificationSendState, NotificationSendType, NotificationSummaryDocument, NotificationUserDocument, NotificationWeekDocument, OIDC_ENTRY_CLIENT_TYPE, OidcEntryDocument, OidcModelFirestoreCollections, OidcModelFunctions, PRIVATE_KEY_JWT_TOKEN_ENDPOINT_AUTH_METHOD, RUN_DEV_FUNCTION_APP_FUNCTION_KEY, SCHEDULED_FUNCTION_DEV_FUNCTION_SPECIFIER, STORAGEFILE_RELATED_FILE_METADATA_KEY, STORAGE_FILE_ALREADY_PROCESSED_ERROR_CODE, STORAGE_FILE_CANNOT_BE_DELETED_YET_ERROR_CODE, STORAGE_FILE_GROUP_CREATE_INPUT_ERROR_CODE, STORAGE_FILE_GROUP_QUEUED_FOR_INITIALIZATION_ERROR_CODE, STORAGE_FILE_GROUP_ROOT_FOLDER_PATH, STORAGE_FILE_GROUP_ZIP_FILE_PATH, STORAGE_FILE_GROUP_ZIP_INFO_JSON_FILE_NAME, STORAGE_FILE_GROUP_ZIP_STORAGE_FILE_PURPOSE, STORAGE_FILE_GROUP_ZIP_STORAGE_FILE_PURPOSE_CREATE_ZIP_SUBTASK, STORAGE_FILE_MODEL_ALREADY_INITIALIZED_ERROR_CODE, STORAGE_FILE_NOT_FLAGGED_FOR_DELETION_ERROR_CODE, STORAGE_FILE_NOT_FLAGGED_FOR_GROUPS_SYNC_ERROR_CODE, STORAGE_FILE_PROCESSING_NOTIFICATION_TASK_TYPE, STORAGE_FILE_PROCESSING_NOT_ALLOWED_FOR_INVALID_STATE_ERROR_CODE, STORAGE_FILE_PROCESSING_NOT_AVAILABLE_FOR_TYPE_ERROR_CODE, STORAGE_FILE_PROCESSING_NOT_QUEUED_FOR_PROCESSING_ERROR_CODE, STORAGE_FILE_PROCESSING_STUCK_THROTTLE_CHECK_MS, STORAGE_FILE_UPLOAD_USER_ROLE, ScheduledFunctionDevelopmentFirebaseFunctionListEntry, ScheduledFunctionDevelopmentFunctionTypeEnum, StorageFileCreationType, StorageFileDocument, StorageFileFirestoreCollections, StorageFileFunctions, StorageFileGroupDocument, StorageFileProcessingState, StorageFileState, StorageFileUploadStreamUnsupportedError, SystemStateDocument, SystemStateFirestoreCollections, UPLOADED_FILE_DOES_NOT_EXIST_ERROR_CODE, UPLOADED_FILE_INITIALIZATION_DISCARDED_ERROR_CODE, UPLOADED_FILE_INITIALIZATION_FAILED_ERROR_CODE, UPLOADED_FILE_NOT_ALLOWED_TO_BE_INITIALIZED_ERROR_CODE, UPLOADS_FOLDER_PATH, _createNotificationDocumentFromPair, abstractSubscribeOrUnsubscribeToNotificationBoxParamsType, abstractSubscribeToNotificationBoxParamsType, addConstraintToBuilder, addOrReplaceLimitInConstraints, allChildDocumentsUnderParent, allChildDocumentsUnderParentPath, allChildDocumentsUnderRelativePath, allowDocumentSnapshotWithPathOnceFilter, allowedNotificationRecipients, appNotificationTemplateTypeInfoRecordService, applyExclusionsToNotificationUserNotificationBoxRecipientConfigs, arrayUpdateWithAccessorFunction, asTopLevelFieldPath, asTopLevelFieldPaths, assertFirestoreUpdateHasData, assertStorageUploadOptionsStringFormat, assignDateCellRangeFunction, assignDateCellScheduleFunction, assignUnitedStatesAddressFunction, assignWebsiteFileLinkFunction, assignWebsiteLinkFunction, buildFirebaseCollectionTypeModelTypeMap, calculateNsForNotificationUserNotificationBoxRecipientConfigs, calculateStorageFileGroupEmbeddedFileUpdate, calculateStorageFileGroupRegeneration, callModelFirebaseFunctionMapFactory, canQueueStorageFileForProcessing, childFirestoreModelKey, childFirestoreModelKeyPath, childFirestoreModelKeys, cleanupSentNotificationsParamsType, clientFirebaseFirestoreContextFactory, clientFirebaseStorageContextFactory, combineUploadFileTypeDeterminers, completeSubtaskProcessingAndScheduleCleanupTaskResult, contextGrantedModelRolesReader, contextGrantedModelRolesReaderDoesNotExistErrorMessage, contextGrantedModelRolesReaderPermissionErrorMessage, convertHttpsCallableErrorToReadableError, copyDocumentIdForUserRelatedModifierFunction, copyDocumentIdToFieldModifierFunction, copyStoragePath, copyUserRelatedDataAccessorFactoryFunction, copyUserRelatedDataModifierConfig, createNotificationBoxParamsType, createNotificationDocument, createNotificationDocumentIfSending, createNotificationDocumentPair, createNotificationSummaryParamsType, createNotificationTaskTemplate, createNotificationTemplate, createNotificationUserParamsType, createOidcClientFieldParamsType, createOidcClientParamsType, createStorageFileDocumentPair, createStorageFileDocumentPairFactory, createStorageFileGroupParamsType, createStorageFileParamsType, dataFromDocumentSnapshots, dataFromSnapshotStream, delayCompletion, deleteAllQueuedStorageFilesParamsType, deleteOidcClientParamsType, deleteStorageFileParamsType, determineByFileName, determineByFilePath, determineByFolderName, determineUserByFolder, determineUserByFolderWrapperFunction, determineUserByUserUploadsFolderWrapperFunction, developmentFirebaseFunctionMapFactory, directDataHttpsCallable, documentData, documentDataFunction, documentDataWithIdAndKey, documentReferenceFromDocument, documentReferencesFromDocuments, documentReferencesFromSnapshot, downloadStorageFileParamsType, effectiveNotificationBoxRecipientConfig, effectiveNotificationBoxRecipientTemplateConfig, endAt, endAtValue, endBefore, extendFirestoreCollectionWithSingleDocumentAccessor, filterConstraintsOfType, filterDisallowedFirestoreItemPageIteratorInputConstraints, filterRepeatCheckpointSnapshots, filterWithDateRange, firebaseAuthErrorToReadableError, firebaseFirestoreClientDrivers, firebaseFirestoreQueryConstraintFunctionsDriver, firebaseFirestoreQueryDriver, firebaseFunctionMapFactory, firebaseModelLoader, firebaseModelPermissionService, firebaseModelService, firebaseModelServiceFactory, firebaseModelsService, firebaseQueryItemAccumulator, firebaseQuerySnapshotAccumulator, firebaseStorageBucketFolderPath, firebaseStorageClientAccessorDriver, firebaseStorageClientAccessorFile, firebaseStorageClientAccessorFolder, firebaseStorageClientDrivers, firebaseStorageClientListFilesResultFactory, firebaseStorageContextFactory, firebaseStorageFileExists, firebaseStorageFilePathFromStorageFilePath, firebaseStorageRefForStorageFilePath, firestoreArray, firestoreArrayMap, firestoreBitwiseObjectMap, firestoreBitwiseSet, firestoreBitwiseSetMap, firestoreBoolean, firestoreClientAccessorDriver, firestoreClientArrayUpdateToUpdateData, firestoreClientIncrementUpdateToUpdateData, firestoreCollectionQueryFactory, firestoreContextFactory, firestoreDate, firestoreDateCellRange, firestoreDateCellRangeArray, firestoreDateCellRangeAssignFn, firestoreDateCellSchedule, firestoreDateCellScheduleAssignFn, firestoreDateNumber, firestoreDencoderArray, firestoreDencoderMap, firestoreDencoderStringArray, firestoreDocumentAccessorContextExtension, firestoreDocumentAccessorFactory, firestoreDocumentLoader, firestoreDocumentSnapshotPairsLoader, firestoreDocumentSnapshotPairsLoaderInstance, firestoreDummyKey, firestoreEncodedArray, firestoreEncodedObjectMap, firestoreEnum, firestoreEnumArray, firestoreField, firestoreFieldConfigToModelMapFunctionsRef, firestoreFixedItemPageIteration, firestoreFixedItemPageIterationFactory, firestoreIdBatchVerifierFactory, firestoreIdentityTypeArray, firestoreIdentityTypeArrayName, firestoreItemPageIteration, firestoreItemPageIterationFactory, firestoreLatLngString, firestoreMap, firestoreMapZoomLevel, firestoreModelId, firestoreModelIdArrayField, firestoreModelIdFromDocument, firestoreModelIdFromEmail, firestoreModelIdGrantedRoleArrayMap, firestoreModelIdGrantedRoleMap, firestoreModelIdOrKeyType, firestoreModelIdString, firestoreModelIdType, firestoreModelIdentity, firestoreModelIdentityTypeMap, firestoreModelIdsFromDocuments, firestoreModelIdsFromKey, firestoreModelKey, firestoreModelKeyArrayField, firestoreModelKeyCollectionName, firestoreModelKeyCollectionType, firestoreModelKeyCollectionTypeArray, firestoreModelKeyCollectionTypeArrayName, firestoreModelKeyCollectionTypePair, firestoreModelKeyEncodedGrantedRoleMap, firestoreModelKeyFactory, firestoreModelKeyFromDocument, firestoreModelKeyGrantedRoleArrayMap, firestoreModelKeyGrantedRoleMap, firestoreModelKeyPairObject, firestoreModelKeyParentKey, firestoreModelKeyParentKeyPartPairs, firestoreModelKeyPart, firestoreModelKeyPartPairs, firestoreModelKeyPartPairsKeyPath, firestoreModelKeyPartPairsPaths, firestoreModelKeyPath, firestoreModelKeyString, firestoreModelKeyType, firestoreModelKeyTypePair, firestoreModelKeys, firestoreModelKeysFromDocuments, firestoreModelType, firestoreNotificationBoxRecipient, firestoreNotificationBoxRecipientTemplateConfigRecord, firestoreNotificationItem, firestoreNotificationRecipientWithConfig, firestoreNotificationUserDefaultNotificationBoxRecipientConfig, firestoreNotificationUserNotificationBoxRecipientConfig, firestoreNumber, firestoreObjectArray, firestorePassThroughField, firestoreQueryConstraint, firestoreQueryConstraintFactory, firestoreQueryDocumentSnapshotPairsLoader, firestoreQueryFactory, firestoreSingleDocumentAccessor, firestoreString, firestoreSubObject, firestoreTimezoneString, firestoreUID, firestoreUniqueArray, firestoreUniqueKeyedArray, firestoreUniqueNumberArray, firestoreUniqueStringArray, firestoreUnitedStatesAddress, firestoreUnitedStatesAddressAssignFn, firestoreUnixDateTimeSecondsNumber, firestoreUpdateWithNoDataError, firestoreWebsiteFileLink, firestoreWebsiteFileLinkAssignFn, firestoreWebsiteFileLinkEncodedArray, firestoreWebsiteFileLinkObjectArray, firestoreWebsiteLink, firestoreWebsiteLinkArray, firestoreWebsiteLinkAssignFn, flatFirestoreModelKey, getDataFromDocumentSnapshots, getDocumentSnapshotData, getDocumentSnapshotDataPair, getDocumentSnapshotDataPairs, getDocumentSnapshotDataPairsWithData, getDocumentSnapshotDataTuples, getDocumentSnapshotPair, getDocumentSnapshotPairs, getDocumentSnapshots, getDocumentSnapshotsData, grantFullAccessIfAdmin, grantFullAccessIfAuthUserRelated, grantModelRolesIfAdmin, grantModelRolesIfAdminFunction, grantModelRolesIfAuthUserRelatedModelFunction, grantModelRolesIfFunction, grantModelRolesIfHasAuthRolesFactory, grantModelRolesIfHasAuthRolesFunction, grantModelRolesOnlyIfFunction, grantStorageFileRolesForUserAuthFunction, inContextFirebaseModelServiceFactory, inContextFirebaseModelsServiceFactory, incrementUpdateWithAccessorFunction, inferKeyFromTwoWayFlatFirestoreModelKey, inferNotificationBoxRelatedModelKey, inferStorageFileGroupRelatedModelKey, inferredTargetModelIdParamsType, inferredTargetModelParamsType, initializeAllApplicableNotificationBoxesParamsType, initializeAllApplicableNotificationSummariesParamsType, initializeAllApplicableStorageFileGroupsParamsType, initializeAllStorageFilesFromUploadsParamsType, initializeNotificationModelParamsType, initializeStorageFileFromUploadParamsType, initializeStorageFileModelParamsType, interceptAccessorFactoryFunction, isAdminInFirebaseModelContext, isClientFirebaseError, isCompleteNotificationSendState, isFirebaseStorageObjectNotFoundError, isFirestoreModelId, isFirestoreModelIdOrKey, isFirestoreModelKey, isOwnerOfUserRelatedModelInFirebaseModelContext, iterateFirestoreDocumentSnapshotBatches, iterateFirestoreDocumentSnapshotCheckpoints, iterateFirestoreDocumentSnapshotPairBatches, iterateFirestoreDocumentSnapshotPairs, iterateFirestoreDocumentSnapshots, iterateStorageListFiles, iterateStorageListFilesByEachFile, iterateStorageListFilesFactory, iterationQueryDocChangeWatcher, iterationQueryDocChangeWatcherChangeTypeForGroup, latestDataFromDocuments, latestSnapshotsFromDocuments, lazyFirebaseFunctionsFactory, limit, limitToLast, limitUploadFileTypeDeterminer, limitedFirestoreDocumentAccessorFactory, limitedFirestoreDocumentAccessorSnapshotCache, loadAllFirestoreDocumentSnapshot, loadAllFirestoreDocumentSnapshotPairs, loadDocumentsForDocumentReferences, loadDocumentsForDocumentReferencesFromValues, loadDocumentsForIds, loadDocumentsForIdsFromValues, loadDocumentsForKeys, loadDocumentsForKeysFromValues, loadDocumentsForSnapshots, loadDocumentsForValues, loadNotificationBoxDocumentForReferencePair, loadStorageFileGroupDocumentForReferencePair, makeDocuments, makeFirestoreCollection, makeFirestoreCollectionGroup, makeFirestoreCollectionWithParent, makeFirestoreItemPageIteratorDelegate, makeFirestoreQueryConstraintFunctionsDriver, makeRootSingleItemFirestoreCollection, makeSingleItemFirestoreCollection, mapDataFromSnapshot, mapHttpsCallable, mapLatestSnapshotsFromDocuments, mergeNotificationBoxRecipientTemplateConfigRecords, mergeNotificationBoxRecipientTemplateConfigs, mergeNotificationBoxRecipients, mergeNotificationSendMessagesResult, mergeNotificationUserDefaultNotificationBoxRecipientConfig, mergeNotificationUserNotificationBoxRecipientConfigs, modelStorageSlashPathFactory, modifyBeforeSetInterceptAccessorFactoryFunction, newDocuments, newNotificationBoxRecipientForUid, noContentNotificationMessageFunctionFactory, noStringFormatInStorageUploadOptionsError, notificationBoxCollectionReference, notificationBoxConverter, notificationBoxFirestoreCollection, notificationBoxIdForModel, notificationBoxIdentity, notificationBoxModelCrudFunctionsConfig, notificationBoxRecipientTemplateConfigArrayEntryParamType, notificationBoxRecipientTemplateConfigArrayToRecord, notificationBoxRecipientTemplateConfigRecordToArray, notificationBoxesFlaggedForNeedsInitializationQuery, notificationBoxesFlaggedInvalidQuery, notificationCollectionReference, notificationCollectionReferenceFactory, notificationConverter, notificationFirestoreCollectionFactory, notificationFirestoreCollectionGroup, notificationFunctionMap, notificationFunctionTypeConfigMap, notificationIdentity, notificationMessageFunction, notificationRecipientParamsType, notificationSendExclusionCanSendFunction, notificationSendFlagsImplyIsComplete, notificationSubtaskComplete, notificationSummariesFlaggedForNeedsInitializationQuery, notificationSummaryCollectionReference, notificationSummaryConverter, notificationSummaryFirestoreCollection, notificationSummaryIdForModel, notificationSummaryIdForUidFunctionForRootFirestoreModelIdentity, notificationSummaryIdentity, notificationTaskCanRunNextCheckpoint, notificationTaskComplete, notificationTaskDelayRetry, notificationTaskFailed, notificationTaskPartiallyComplete, notificationTaskUniqueId, notificationTemplateTypeInfoRecord, notificationUserCollectionReference, notificationUserConverter, notificationUserFirestoreCollection, notificationUserHasExclusionQuery, notificationUserIdentity, notificationUsersFlaggedForNeedsSyncQuery, notificationWeekCollectionReference, notificationWeekCollectionReferenceFactory, notificationWeekConverter, notificationWeekFirestoreCollectionFactory, notificationWeekFirestoreCollectionGroup, notificationWeekIdentity, notificationsPastSendAtTimeQuery, notificationsReadyForCleanupQuery, offset, oidcClientEntriesByOwnerQuery, oidcEntriesByGrantIdQuery, oidcEntriesByUidQuery, oidcEntriesByUserCodeQuery, oidcEntriesWithTypeQuery, oidcEntryCollectionReference, oidcEntryConverter, oidcEntryFirestoreCollection, oidcEntryIdentity, oidcFunctionTypeConfigMap, oidcModelCrudFunctionsConfig, oidcModelFunctionMap, onCallCreateModelParams, onCallCreateModelResult, onCallCreateModelResultWithDocs, onCallDeleteModelParams, onCallDevelopmentParams, onCallReadModelParams, onCallTypedModelParams, onCallTypedModelParamsFunction, onCallUpdateModelParams, optionalFirestoreArray, optionalFirestoreBoolean, optionalFirestoreDate, optionalFirestoreDateNumber, optionalFirestoreEnum, optionalFirestoreField, optionalFirestoreNumber, optionalFirestoreString, optionalFirestoreUID, optionalFirestoreUnitedStatesAddress, optionalFirestoreUnixDateTimeSecondsNumber, orderBy, orderByDocumentId, processAllQueuedStorageFilesParamsType, processStorageFileParamsType, readFirestoreModelKey, readFirestoreModelKeyFromDocumentSnapshot, regenerateAllFlaggedStorageFileGroupsContentParamsType, regenerateStorageFileGroupContentParamsType, replaceConstraints, resyncAllNotificationUserParamsType, resyncNotificationUserParamsType, rotateOidcClientSecretParamsType, scheduledFunctionDevelopmentFirebaseFunctionParamsType, selectFromFirebaseModelsService, sendNotificationParamsType, sendQueuedNotificationsParamsType, separateConstraints, setIdAndKeyFromKeyIdRefOnDocumentData, setIdAndKeyFromSnapshotOnDocumentData, shouldSaveNotificationToNotificationWeek, shouldSendCreatedNotificationInput, snapshotConverterFunctions, snapshotStreamDataForAccessor, snapshotStreamForAccessor, sortNotificationItemsFunction, startAfter, startAt, startAtValue, storageFileCollectionReference, storageFileConverter, storageFileFirestoreCollection, storageFileFlaggedForSyncWithGroupsQuery, storageFileFunctionMap, storageFileFunctionTypeConfigMap, storageFileGroupCollectionReference, storageFileGroupConverter, storageFileGroupCreateStorageFileKeyFactory, storageFileGroupCreatedStorageFileKey, storageFileGroupEmbeddedFile, storageFileGroupFirestoreCollection, storageFileGroupFolderPath, storageFileGroupIdForModel, storageFileGroupIdentity, storageFileGroupZipFileStoragePath, storageFileGroupZipStorageFileKey, storageFileGroupsFlaggedForContentRegenerationQuery, storageFileGroupsFlaggedForNeedsInitializationQuery, storageFileGroupsFlaggedInvalidQuery, storageFileIdentity, storageFileModelCrudFunctionsConfig, storageFileProcessingNotificationTaskTemplate, storageFilePurposeAndUserQuery, storageFileUploadUserSimpleClaimsConfiguration, storageFilesQueuedForDeleteQuery, storageFilesQueuedForProcessingQuery, storageListFilesResultFactory, storageListFilesResultHasNoNextError, storagePathFactory, storedFileReaderFactory, streamDocumentSnapshotDataPairs, streamDocumentSnapshotDataPairsWithData, streamDocumentSnapshotsData, streamFromOnSnapshot, syncAllFlaggedStorageFilesWithGroupsParamsType, syncStorageFileWithGroupsParamsType, systemStateCollectionReference, systemStateConverter, systemStateFirestoreCollection, systemStateIdentity, targetModelIdParamsType, targetModelParamsType, twoWayFlatFirestoreModelKey, unreadNotificationItems, unsupportedFirestoreDriverFunctionError, updateNotificationBoxParamsType, updateNotificationBoxRecipientLikeParamsType, updateNotificationBoxRecipientParamsType, updateNotificationBoxRecipientTemplateConfigRecord, updateNotificationRecipient, updateNotificationSummaryParamsType, updateNotificationUserDefaultNotificationBoxRecipientConfig, updateNotificationUserDefaultNotificationBoxRecipientConfigParamsType, updateNotificationUserNotificationBoxRecipientConfigIfChanged, updateNotificationUserNotificationBoxRecipientConfigs, updateNotificationUserNotificationBoxRecipientParamsType, updateNotificationUserNotificationSendExclusions, updateNotificationUserParamsType, updateOidcClientFieldParamsType, updateOidcClientParamsType, updateStorageFileGroupEntryParamsType, updateStorageFileGroupParamsType, updateStorageFileParamsType, updateWithAccessorUpdateAndConverterFunction, uploadFileWithStream, useContextAuth, useContextAuthUid, useDocumentSnapshot, useDocumentSnapshotData, useFirebaseModelsService, userUploadsFolderSlashPathFactory, userUploadsFolderStoragePathFactory, where, whereDateIsAfter, whereDateIsAfterWithSort, whereDateIsBefore, whereDateIsBeforeWithSort, whereDateIsBetween, whereDateIsInRange, whereDateIsOnOrAfter, whereDateIsOnOrAfterWithSort, whereDateIsOnOrBefore, whereDateIsOnOrBeforeWithSort, whereDocumentId, whereStringHasRootIdentityModelKey, whereStringValueHasPrefix };
|
|
18811
|
+
export { ALL_OIDC_TOKEN_ENDPOINT_AUTH_METHOD_OPTIONS, ALL_STORAGE_FILE_NOTIFICATION_TASK_TYPES, ALL_USER_UPLOADS_FOLDER_NAME, ALL_USER_UPLOADS_FOLDER_PATH, AbstractFirestoreDocument, AbstractFirestoreDocumentDataAccessorWrapper, AbstractFirestoreDocumentWithParent, AppNotificationTemplateTypeInfoRecordService, BASE_MODEL_STORAGE_FILE_PATH, CALL_MODEL_APP_FUNCTION_KEY, COPY_USER_RELATED_DATA_ACCESSOR_FACTORY_FUNCTION, CREATE_NOTIFICATION_ID_REQUIRED_ERROR_CODE, ContextGrantedModelRolesReaderInstance, DBX_FIREBASE_SERVER_NO_AUTH_ERROR_CODE, DBX_FIREBASE_SERVER_NO_UID_ERROR_CODE, DEFAULT_DATE_CELL_RANGE_VALUE, DEFAULT_FIRESTORE_DATE_CELL_SCHEDULE_VALUE, DEFAULT_FIRESTORE_ITEM_PAGE_ITERATOR_ITEMS_PER_PAGE, DEFAULT_FIRESTORE_STRING_FIELD_VALUE, DEFAULT_FIRESTORE_UNITED_STATES_ADDRESS_VALUE, DEFAULT_FIRESTORE_WEBSITE_FILE_LINK_VALUE, DEFAULT_ITERATE_FIRESTORE_DOCUMENT_SNAPSHOT_BATCHES_BATCH_SIZE, DEFAULT_NOTIFICATION_TASK_NOTIFICATION_MODEL_KEY, DEFAULT_NOTIFICATION_TASK_SUBTASK_CLEANUP_RETRY_ATTEMPTS, DEFAULT_NOTIFICATION_TASK_SUBTASK_CLEANUP_RETRY_DELAY, DEFAULT_NOTIFICATION_TEMPLATE_TYPE, DEFAULT_QUERY_CHANGE_WATCHER_DELAY, DEFAULT_SINGLE_ITEM_FIRESTORE_COLLECTION_DOCUMENT_IDENTIFIER, DEFAULT_UPLOADED_FILE_TYPE_DETERMINATION_LEVEL, DEFAULT_WEBSITE_LINK, EMPTY_STORAGE_FILE_PURPOSE_SUBGROUP, EXACT_UPLOADED_FILE_TYPE_DETERMINATION_LEVEL, FIREBASE_AUTH_CREDENTIAL_ALREADY_IN_USE_ERROR, FIREBASE_AUTH_EMAIL_ALREADY_EXISTS_ERROR, FIREBASE_AUTH_EMAIL_ALREADY_IN_USE_ERROR, FIREBASE_AUTH_INVALID_PHONE_NUMBER_ERROR, FIREBASE_AUTH_NETWORK_REQUEST_ERROR, FIREBASE_AUTH_NETWORK_REQUEST_FAILED, FIREBASE_AUTH_PASSWORD_MAX_LENGTH, FIREBASE_AUTH_PASSWORD_MIN_LENGTH, FIREBASE_AUTH_PHONE_NUMBER_ALREADY_EXISTS_ERROR, FIREBASE_AUTH_PROVIDER_ALREADY_LINKED_ERROR, FIREBASE_AUTH_USER_NOT_FOUND_ERROR, FIREBASE_AUTH_WRONG_PASSWORD, FIREBASE_DEVELOPMENT_FUNCTIONS_MAP_KEY, FIREBASE_SERVER_AUTH_CLAIMS_RESET_LAST_COM_DATE_KEY, FIREBASE_SERVER_AUTH_CLAIMS_RESET_PASSWORD_KEY, FIREBASE_SERVER_AUTH_CLAIMS_SETUP_LAST_COM_DATE_KEY, FIREBASE_SERVER_AUTH_CLAIMS_SETUP_PASSWORD_KEY, FIRESTORE_CLIENT_QUERY_CONSTRAINT_HANDLER_MAPPING, FIRESTORE_COLLECTION_NAME_SEPARATOR, FIRESTORE_DUMMY_MODEL_KEY, FIRESTORE_EMPTY_VALUE, FIRESTORE_END_AT_QUERY_CONSTRAINT_TYPE, FIRESTORE_END_AT_VALUE_QUERY_CONSTRAINT_TYPE, FIRESTORE_END_BEFORE_QUERY_CONSTRAINT_TYPE, FIRESTORE_ITEM_PAGE_ITERATOR, FIRESTORE_ITEM_PAGE_ITERATOR_DELEGATE, FIRESTORE_LIMIT_QUERY_CONSTRAINT_TYPE, FIRESTORE_LIMIT_TO_LAST_QUERY_CONSTRAINT_TYPE, FIRESTORE_MAX_WHERE_IN_FILTER_ARGS_COUNT, FIRESTORE_MODEL_ID_REGEX, FIRESTORE_MODEL_KEY_REGEX, FIRESTORE_MODEL_KEY_REGEX_STRICT, FIRESTORE_OFFSET_QUERY_CONSTRAINT_TYPE, FIRESTORE_ORDER_BY_DOCUMENT_ID_QUERY_CONSTRAINT_TYPE, FIRESTORE_ORDER_BY_QUERY_CONSTRAINT_TYPE, FIRESTORE_PASSTHROUGH_FIELD, FIRESTORE_PERMISSION_DENIED_ERROR_CODE, FIRESTORE_START_AFTER_QUERY_CONSTRAINT_TYPE, FIRESTORE_START_AT_QUERY_CONSTRAINT_TYPE, FIRESTORE_START_AT_VALUE_QUERY_CONSTRAINT_TYPE, FIRESTORE_WHERE_DOCUMENT_ID_QUERY_CONSTRAINT_TYPE, FIRESTORE_WHERE_QUERY_CONSTRAINT_TYPE, FirebaseDevelopmentFunctions, FirebaseModelPermissionServiceInstance, FirebaseServerError, FirestoreAccessorStreamMode, FirestoreDocumentContextType, HIGH_UPLOADED_FILE_TYPE_DETERMINATION_LEVEL, IN_MEMORY_CACHE_DEFAULT_TTL, LOW_UPLOADED_FILE_TYPE_DETERMINATION_LEVEL, MAX_FIRESTORE_MAP_ZOOM_LEVEL_VALUE, MIN_FIRESTORE_MAP_ZOOM_LEVEL_VALUE, MODEL_FUNCTION_FIREBASE_CRUD_FUNCTION_SPECIFIER_DEFAULT, MODEL_FUNCTION_FIREBASE_CRUD_FUNCTION_SPECIFIER_SPLITTER, MODEL_STORAGE_FILE_SLASH_PATH_FACTORY, ModifyBeforeSetFirestoreDocumentDataAccessorWrapper, NOTIFICATION_BOX_DOES_NOT_EXIST_ERROR_CODE, NOTIFICATION_BOX_EXCLUSION_TARGET_INVALID_ERROR_CODE, NOTIFICATION_BOX_EXISTS_FOR_MODEL_ERROR_CODE, NOTIFICATION_BOX_RECIPIENT_DOES_NOT_EXIST_ERROR_CODE, NOTIFICATION_MESSAGE_MAX_LENGTH, NOTIFICATION_MESSAGE_MIN_LENGTH, NOTIFICATION_MODEL_ALREADY_INITIALIZED_ERROR_CODE, NOTIFICATION_RECIPIENT_NAME_MAX_LENGTH, NOTIFICATION_RECIPIENT_NAME_MIN_LENGTH, NOTIFICATION_SUBJECT_MAX_LENGTH, NOTIFICATION_SUBJECT_MIN_LENGTH, NOTIFICATION_SUMMARY_EMBEDDED_NOTIFICATION_ITEM_MESSAGE_MAX_LENGTH, NOTIFICATION_SUMMARY_EMBEDDED_NOTIFICATION_ITEM_SUBJECT_MAX_LENGTH, NOTIFICATION_SUMMARY_ITEM_LIMIT, NOTIFICATION_TASK_SUBTASK_CHECKPOINT_CLEANUP, NOTIFICATION_TASK_SUBTASK_CHECKPOINT_PROCESSING, NOTIFICATION_USER_BLOCKED_FROM_BEING_ADD_TO_RECIPIENTS_ERROR_CODE, NOTIFICATION_USER_INVALID_UID_FOR_CREATE_ERROR_CODE, NOTIFICATION_USER_LOCKED_CONFIG_FROM_BEING_UPDATED_ERROR_CODE, NOTIFICATION_WEEK_NOTIFICATION_ITEM_LIMIT, NotificationBoxDocument, NotificationBoxRecipientFlag, NotificationBoxRecipientTemplateConfigBoolean, NotificationDocument, NotificationFirestoreCollections, NotificationFunctions, NotificationMessageFlag, NotificationRecipientSendFlag, NotificationSendState, NotificationSendType, NotificationSummaryDocument, NotificationUserDocument, NotificationWeekDocument, OIDC_ENTRY_CLIENT_TYPE, OidcEntryDocument, OidcModelFirestoreCollections, OidcModelFunctions, PRIVATE_KEY_JWT_TOKEN_ENDPOINT_AUTH_METHOD, RUN_DEV_FUNCTION_APP_FUNCTION_KEY, SCHEDULED_FUNCTION_DEV_FUNCTION_SPECIFIER, STORAGEFILE_RELATED_FILE_METADATA_KEY, STORAGE_FILE_ALREADY_PROCESSED_ERROR_CODE, STORAGE_FILE_CANNOT_BE_DELETED_YET_ERROR_CODE, STORAGE_FILE_GROUP_CREATE_INPUT_ERROR_CODE, STORAGE_FILE_GROUP_QUEUED_FOR_INITIALIZATION_ERROR_CODE, STORAGE_FILE_GROUP_ROOT_FOLDER_PATH, STORAGE_FILE_GROUP_ZIP_FILE_PATH, STORAGE_FILE_GROUP_ZIP_INFO_JSON_FILE_NAME, STORAGE_FILE_GROUP_ZIP_STORAGE_FILE_PURPOSE, STORAGE_FILE_GROUP_ZIP_STORAGE_FILE_PURPOSE_CREATE_ZIP_SUBTASK, STORAGE_FILE_MODEL_ALREADY_INITIALIZED_ERROR_CODE, STORAGE_FILE_NOT_FLAGGED_FOR_DELETION_ERROR_CODE, STORAGE_FILE_NOT_FLAGGED_FOR_GROUPS_SYNC_ERROR_CODE, STORAGE_FILE_PROCESSING_NOTIFICATION_TASK_TYPE, STORAGE_FILE_PROCESSING_NOT_ALLOWED_FOR_INVALID_STATE_ERROR_CODE, STORAGE_FILE_PROCESSING_NOT_AVAILABLE_FOR_TYPE_ERROR_CODE, STORAGE_FILE_PROCESSING_NOT_QUEUED_FOR_PROCESSING_ERROR_CODE, STORAGE_FILE_PROCESSING_STUCK_THROTTLE_CHECK_MS, STORAGE_FILE_UPLOAD_USER_ROLE, ScheduledFunctionDevelopmentFirebaseFunctionListEntry, ScheduledFunctionDevelopmentFunctionTypeEnum, StorageFileCreationType, StorageFileDocument, StorageFileFirestoreCollections, StorageFileFunctions, StorageFileGroupDocument, StorageFileProcessingState, StorageFileState, StorageFileUploadStreamUnsupportedError, SystemStateDocument, SystemStateFirestoreCollections, UPLOADED_FILE_DOES_NOT_EXIST_ERROR_CODE, UPLOADED_FILE_INITIALIZATION_DISCARDED_ERROR_CODE, UPLOADED_FILE_INITIALIZATION_FAILED_ERROR_CODE, UPLOADED_FILE_NOT_ALLOWED_TO_BE_INITIALIZED_ERROR_CODE, UPLOADS_FOLDER_PATH, _createNotificationDocumentFromPair, abstractSubscribeOrUnsubscribeToNotificationBoxParamsType, abstractSubscribeToNotificationBoxParamsType, addConstraintToBuilder, addOrReplaceLimitInConstraints, allChildDocumentsUnderParent, allChildDocumentsUnderParentPath, allChildDocumentsUnderRelativePath, allowDocumentSnapshotWithPathOnceFilter, allowedNotificationRecipients, appNotificationTemplateTypeInfoRecordService, applyExclusionsToNotificationUserNotificationBoxRecipientConfigs, arrayUpdateWithAccessorFunction, asTopLevelFieldPath, asTopLevelFieldPaths, assertFirestoreUpdateHasData, assertStorageUploadOptionsStringFormat, assignDateCellRangeFunction, assignDateCellScheduleFunction, assignUnitedStatesAddressFunction, assignWebsiteFileLinkFunction, assignWebsiteLinkFunction, buildFirebaseCollectionTypeModelTypeMap, calculateNsForNotificationUserNotificationBoxRecipientConfigs, calculateStorageFileGroupEmbeddedFileUpdate, calculateStorageFileGroupRegeneration, callModelFirebaseFunctionMapFactory, canQueueStorageFileForProcessing, childFirestoreModelKey, childFirestoreModelKeyPath, childFirestoreModelKeys, cleanupSentNotificationsParamsType, clientFirebaseFirestoreContextFactory, clientFirebaseStorageContextFactory, combineUploadFileTypeDeterminers, completeSubtaskProcessingAndScheduleCleanupTaskResult, contextGrantedModelRolesReader, contextGrantedModelRolesReaderDoesNotExistErrorMessage, contextGrantedModelRolesReaderPermissionErrorMessage, convertHttpsCallableErrorToReadableError, copyDocumentIdForUserRelatedModifierFunction, copyDocumentIdToFieldModifierFunction, copyStoragePath, copyUserRelatedDataAccessorFactoryFunction, copyUserRelatedDataModifierConfig, createNotificationBoxParamsType, createNotificationDocument, createNotificationDocumentIfSending, createNotificationDocumentPair, createNotificationSummaryParamsType, createNotificationTaskTemplate, createNotificationTemplate, createNotificationUserParamsType, createOidcClientFieldParamsType, createOidcClientParamsType, createStorageFileDocumentPair, createStorageFileDocumentPairFactory, createStorageFileGroupParamsType, createStorageFileParamsType, dataFromDocumentSnapshots, dataFromSnapshotStream, delayCompletion, deleteAllQueuedStorageFilesParamsType, deleteOidcClientParamsType, deleteStorageFileParamsType, determineByFileName, determineByFilePath, determineByFolderName, determineUserByFolder, determineUserByFolderWrapperFunction, determineUserByUserUploadsFolderWrapperFunction, developmentFirebaseFunctionMapFactory, directDataHttpsCallable, documentData, documentDataFunction, documentDataWithIdAndKey, documentReferenceFromDocument, documentReferencesFromDocuments, documentReferencesFromSnapshot, downloadStorageFileParamsType, effectiveNotificationBoxRecipientConfig, effectiveNotificationBoxRecipientTemplateConfig, endAt, endAtValue, endBefore, extendFirestoreCollectionWithSingleDocumentAccessor, filterConstraintsOfType, filterDisallowedFirestoreItemPageIteratorInputConstraints, filterRepeatCheckpointSnapshots, filterWithDateRange, firebaseAuthErrorToReadableError, firebaseFirestoreClientDrivers, firebaseFirestoreQueryConstraintFunctionsDriver, firebaseFirestoreQueryDriver, firebaseFunctionMapFactory, firebaseModelLoader, firebaseModelPermissionService, firebaseModelService, firebaseModelServiceFactory, firebaseModelsService, firebaseQueryItemAccumulator, firebaseQuerySnapshotAccumulator, firebaseStorageBucketFolderPath, firebaseStorageClientAccessorDriver, firebaseStorageClientAccessorFile, firebaseStorageClientAccessorFolder, firebaseStorageClientDrivers, firebaseStorageClientListFilesResultFactory, firebaseStorageContextFactory, firebaseStorageFileExists, firebaseStorageFilePathFromStorageFilePath, firebaseStorageRefForStorageFilePath, firestoreArray, firestoreArrayMap, firestoreBitwiseObjectMap, firestoreBitwiseSet, firestoreBitwiseSetMap, firestoreBoolean, firestoreClientAccessorDriver, firestoreClientArrayUpdateToUpdateData, firestoreClientIncrementUpdateToUpdateData, firestoreCollectionDocumentCache, firestoreCollectionQueryFactory, firestoreContextFactory, firestoreDate, firestoreDateCellRange, firestoreDateCellRangeArray, firestoreDateCellRangeAssignFn, firestoreDateCellSchedule, firestoreDateCellScheduleAssignFn, firestoreDateNumber, firestoreDencoderArray, firestoreDencoderMap, firestoreDencoderStringArray, firestoreDocumentAccessorContextExtension, firestoreDocumentAccessorFactory, firestoreDocumentLoader, firestoreDocumentSnapshotPairsLoader, firestoreDocumentSnapshotPairsLoaderInstance, firestoreDummyKey, firestoreEncodedArray, firestoreEncodedObjectMap, firestoreEnum, firestoreEnumArray, firestoreField, firestoreFieldConfigToModelMapFunctionsRef, firestoreFixedItemPageIteration, firestoreFixedItemPageIterationFactory, firestoreIdBatchVerifierFactory, firestoreIdentityTypeArray, firestoreIdentityTypeArrayName, firestoreItemPageIteration, firestoreItemPageIterationFactory, firestoreLatLngString, firestoreMap, firestoreMapZoomLevel, firestoreModelId, firestoreModelIdArrayField, firestoreModelIdFromDocument, firestoreModelIdFromEmail, firestoreModelIdGrantedRoleArrayMap, firestoreModelIdGrantedRoleMap, firestoreModelIdOrKeyType, firestoreModelIdString, firestoreModelIdType, firestoreModelIdentity, firestoreModelIdentityTypeMap, firestoreModelIdsFromDocuments, firestoreModelIdsFromKey, firestoreModelKey, firestoreModelKeyArrayField, firestoreModelKeyCollectionName, firestoreModelKeyCollectionType, firestoreModelKeyCollectionTypeArray, firestoreModelKeyCollectionTypeArrayName, firestoreModelKeyCollectionTypePair, firestoreModelKeyEncodedGrantedRoleMap, firestoreModelKeyFactory, firestoreModelKeyFromDocument, firestoreModelKeyGrantedRoleArrayMap, firestoreModelKeyGrantedRoleMap, firestoreModelKeyPairObject, firestoreModelKeyParentKey, firestoreModelKeyParentKeyPartPairs, firestoreModelKeyPart, firestoreModelKeyPartPairs, firestoreModelKeyPartPairsKeyPath, firestoreModelKeyPartPairsPaths, firestoreModelKeyPath, firestoreModelKeyString, firestoreModelKeyType, firestoreModelKeyTypePair, firestoreModelKeys, firestoreModelKeysFromDocuments, firestoreModelType, firestoreNotificationBoxRecipient, firestoreNotificationBoxRecipientTemplateConfigRecord, firestoreNotificationItem, firestoreNotificationRecipientWithConfig, firestoreNotificationUserDefaultNotificationBoxRecipientConfig, firestoreNotificationUserNotificationBoxRecipientConfig, firestoreNumber, firestoreObjectArray, firestorePassThroughField, firestoreQueryConstraint, firestoreQueryConstraintFactory, firestoreQueryDocumentSnapshotPairsLoader, firestoreQueryFactory, firestoreSingleDocumentAccessor, firestoreString, firestoreSubObject, firestoreTimezoneString, firestoreUID, firestoreUniqueArray, firestoreUniqueKeyedArray, firestoreUniqueNumberArray, firestoreUniqueStringArray, firestoreUnitedStatesAddress, firestoreUnitedStatesAddressAssignFn, firestoreUnixDateTimeSecondsNumber, firestoreUpdateWithNoDataError, firestoreWebsiteFileLink, firestoreWebsiteFileLinkAssignFn, firestoreWebsiteFileLinkEncodedArray, firestoreWebsiteFileLinkObjectArray, firestoreWebsiteLink, firestoreWebsiteLinkArray, firestoreWebsiteLinkAssignFn, flatFirestoreModelKey, getDataFromDocumentSnapshots, getDocumentSnapshotData, getDocumentSnapshotDataPair, getDocumentSnapshotDataPairs, getDocumentSnapshotDataPairsWithData, getDocumentSnapshotDataTuples, getDocumentSnapshotPair, getDocumentSnapshotPairs, getDocumentSnapshots, getDocumentSnapshotsData, grantFullAccessIfAdmin, grantFullAccessIfAuthUserRelated, grantModelRolesIfAdmin, grantModelRolesIfAdminFunction, grantModelRolesIfAuthUserRelatedModelFunction, grantModelRolesIfFunction, grantModelRolesIfHasAuthRolesFactory, grantModelRolesIfHasAuthRolesFunction, grantModelRolesOnlyIfFunction, grantStorageFileRolesForUserAuthFunction, inContextFirebaseModelServiceFactory, inContextFirebaseModelsServiceFactory, inMemoryFirestoreCollectionCacheDelegate, inMemoryFirestoreContextCache, inMemoryFirestoreContextCacheFactory, incrementUpdateWithAccessorFunction, inferKeyFromTwoWayFlatFirestoreModelKey, inferNotificationBoxRelatedModelKey, inferStorageFileGroupRelatedModelKey, inferredTargetModelIdParamsType, inferredTargetModelParamsType, initializeAllApplicableNotificationBoxesParamsType, initializeAllApplicableNotificationSummariesParamsType, initializeAllApplicableStorageFileGroupsParamsType, initializeAllStorageFilesFromUploadsParamsType, initializeNotificationModelParamsType, initializeStorageFileFromUploadParamsType, initializeStorageFileModelParamsType, interceptAccessorFactoryFunction, isAdminInFirebaseModelContext, isClientFirebaseError, isCompleteNotificationSendState, isFirebaseStorageObjectNotFoundError, isFirestoreModelId, isFirestoreModelIdOrKey, isFirestoreModelKey, isOwnerOfUserRelatedModelInFirebaseModelContext, iterateFirestoreDocumentSnapshotBatches, iterateFirestoreDocumentSnapshotCheckpoints, iterateFirestoreDocumentSnapshotPairBatches, iterateFirestoreDocumentSnapshotPairs, iterateFirestoreDocumentSnapshots, iterateStorageListFiles, iterateStorageListFilesByEachFile, iterateStorageListFilesFactory, iterationQueryDocChangeWatcher, iterationQueryDocChangeWatcherChangeTypeForGroup, latestDataFromDocuments, latestSnapshotsFromDocuments, lazyFirebaseFunctionsFactory, limit, limitToLast, limitUploadFileTypeDeterminer, limitedFirestoreDocumentAccessorFactory, limitedFirestoreDocumentAccessorSnapshotCache, loadAllFirestoreDocumentSnapshot, loadAllFirestoreDocumentSnapshotPairs, loadDocumentsForDocumentReferences, loadDocumentsForDocumentReferencesFromValues, loadDocumentsForIds, loadDocumentsForIdsFromValues, loadDocumentsForKeys, loadDocumentsForKeysFromValues, loadDocumentsForSnapshots, loadDocumentsForValues, loadNotificationBoxDocumentForReferencePair, loadStorageFileGroupDocumentForReferencePair, makeDocuments, makeFirestoreCollection, makeFirestoreCollectionGroup, makeFirestoreCollectionWithParent, makeFirestoreContextCache, makeFirestoreItemPageIteratorDelegate, makeFirestoreQueryConstraintFunctionsDriver, makeRootSingleItemFirestoreCollection, makeSingleItemFirestoreCollection, mapDataFromSnapshot, mapHttpsCallable, mapLatestSnapshotsFromDocuments, mergeNotificationBoxRecipientTemplateConfigRecords, mergeNotificationBoxRecipientTemplateConfigs, mergeNotificationBoxRecipients, mergeNotificationSendMessagesResult, mergeNotificationUserDefaultNotificationBoxRecipientConfig, mergeNotificationUserNotificationBoxRecipientConfigs, modelStorageSlashPathFactory, modifyBeforeSetInterceptAccessorFactoryFunction, newDocuments, newNotificationBoxRecipientForUid, noContentNotificationMessageFunctionFactory, noStringFormatInStorageUploadOptionsError, noopFirestoreCollectionCache, noopFirestoreCollectionCacheDelegate, noopFirestoreCollectionDocumentCache, noopFirestoreContextCache, notificationBoxCollectionReference, notificationBoxConverter, notificationBoxFirestoreCollection, notificationBoxIdForModel, notificationBoxIdentity, notificationBoxModelCrudFunctionsConfig, notificationBoxRecipientTemplateConfigArrayEntryParamType, notificationBoxRecipientTemplateConfigArrayToRecord, notificationBoxRecipientTemplateConfigRecordToArray, notificationBoxesFlaggedForNeedsInitializationQuery, notificationBoxesFlaggedInvalidQuery, notificationCollectionReference, notificationCollectionReferenceFactory, notificationConverter, notificationFirestoreCollectionFactory, notificationFirestoreCollectionGroup, notificationFunctionMap, notificationFunctionTypeConfigMap, notificationIdentity, notificationMessageFunction, notificationRecipientParamsType, notificationSendExclusionCanSendFunction, notificationSendFlagsImplyIsComplete, notificationSubtaskComplete, notificationSummariesFlaggedForNeedsInitializationQuery, notificationSummaryCollectionReference, notificationSummaryConverter, notificationSummaryFirestoreCollection, notificationSummaryIdForModel, notificationSummaryIdForUidFunctionForRootFirestoreModelIdentity, notificationSummaryIdentity, notificationTaskCanRunNextCheckpoint, notificationTaskComplete, notificationTaskDelayRetry, notificationTaskFailed, notificationTaskPartiallyComplete, notificationTaskUniqueId, notificationTemplateTypeInfoRecord, notificationUserCollectionReference, notificationUserConverter, notificationUserFirestoreCollection, notificationUserHasExclusionQuery, notificationUserIdentity, notificationUsersFlaggedForNeedsSyncQuery, notificationWeekCollectionReference, notificationWeekCollectionReferenceFactory, notificationWeekConverter, notificationWeekFirestoreCollectionFactory, notificationWeekFirestoreCollectionGroup, notificationWeekIdentity, notificationsPastSendAtTimeQuery, notificationsReadyForCleanupQuery, offset, oidcClientEntriesByOwnerQuery, oidcEntriesByGrantIdQuery, oidcEntriesByUidQuery, oidcEntriesByUserCodeQuery, oidcEntriesWithTypeQuery, oidcEntryCollectionReference, oidcEntryConverter, oidcEntryFirestoreCollection, oidcEntryIdentity, oidcFunctionTypeConfigMap, oidcModelCrudFunctionsConfig, oidcModelFunctionMap, onCallCreateModelParams, onCallCreateModelResult, onCallCreateModelResultWithDocs, onCallDeleteModelParams, onCallDevelopmentParams, onCallReadModelParams, onCallTypedModelParams, onCallTypedModelParamsFunction, onCallUpdateModelParams, optionalFirestoreArray, optionalFirestoreBoolean, optionalFirestoreDate, optionalFirestoreDateNumber, optionalFirestoreEnum, optionalFirestoreField, optionalFirestoreNumber, optionalFirestoreString, optionalFirestoreUID, optionalFirestoreUnitedStatesAddress, optionalFirestoreUnixDateTimeSecondsNumber, orderBy, orderByDocumentId, processAllQueuedStorageFilesParamsType, processStorageFileParamsType, readFirestoreModelKey, readFirestoreModelKeyFromDocumentSnapshot, readLoggingFirestoreContextCache, readLoggingFirestoreContextCacheFactory, regenerateAllFlaggedStorageFileGroupsContentParamsType, regenerateStorageFileGroupContentParamsType, replaceConstraints, resyncAllNotificationUserParamsType, resyncNotificationUserParamsType, rotateOidcClientSecretParamsType, scheduledFunctionDevelopmentFirebaseFunctionParamsType, selectFromFirebaseModelsService, sendNotificationParamsType, sendQueuedNotificationsParamsType, separateConstraints, setIdAndKeyFromKeyIdRefOnDocumentData, setIdAndKeyFromSnapshotOnDocumentData, shouldSaveNotificationToNotificationWeek, shouldSendCreatedNotificationInput, snapshotConverterFunctions, snapshotStreamDataForAccessor, snapshotStreamForAccessor, sortNotificationItemsFunction, startAfter, startAt, startAtValue, storageFileCollectionReference, storageFileConverter, storageFileFirestoreCollection, storageFileFlaggedForSyncWithGroupsQuery, storageFileFunctionMap, storageFileFunctionTypeConfigMap, storageFileGroupCollectionReference, storageFileGroupConverter, storageFileGroupCreateStorageFileKeyFactory, storageFileGroupCreatedStorageFileKey, storageFileGroupEmbeddedFile, storageFileGroupFirestoreCollection, storageFileGroupFolderPath, storageFileGroupIdForModel, storageFileGroupIdentity, storageFileGroupZipFileStoragePath, storageFileGroupZipStorageFileKey, storageFileGroupsFlaggedForContentRegenerationQuery, storageFileGroupsFlaggedForNeedsInitializationQuery, storageFileGroupsFlaggedInvalidQuery, storageFileIdentity, storageFileModelCrudFunctionsConfig, storageFileProcessingNotificationTaskTemplate, storageFilePurposeAndUserQuery, storageFileUploadUserSimpleClaimsConfiguration, storageFilesQueuedForDeleteQuery, storageFilesQueuedForProcessingQuery, storageListFilesResultFactory, storageListFilesResultHasNoNextError, storagePathFactory, storedFileReaderFactory, streamDocumentSnapshotDataPairs, streamDocumentSnapshotDataPairsWithData, streamDocumentSnapshotsData, streamFromOnSnapshot, syncAllFlaggedStorageFilesWithGroupsParamsType, syncStorageFileWithGroupsParamsType, systemStateCollectionReference, systemStateConverter, systemStateFirestoreCollection, systemStateIdentity, targetModelIdParamsType, targetModelParamsType, twoWayFlatFirestoreModelKey, unreadNotificationItems, unsupportedFirestoreDriverFunctionError, updateNotificationBoxParamsType, updateNotificationBoxRecipientLikeParamsType, updateNotificationBoxRecipientParamsType, updateNotificationBoxRecipientTemplateConfigRecord, updateNotificationRecipient, updateNotificationSummaryParamsType, updateNotificationUserDefaultNotificationBoxRecipientConfig, updateNotificationUserDefaultNotificationBoxRecipientConfigParamsType, updateNotificationUserNotificationBoxRecipientConfigIfChanged, updateNotificationUserNotificationBoxRecipientConfigs, updateNotificationUserNotificationBoxRecipientParamsType, updateNotificationUserNotificationSendExclusions, updateNotificationUserParamsType, updateOidcClientFieldParamsType, updateOidcClientParamsType, updateStorageFileGroupEntryParamsType, updateStorageFileGroupParamsType, updateStorageFileParamsType, updateWithAccessorUpdateAndConverterFunction, uploadFileWithStream, useContextAuth, useContextAuthUid, useDocumentSnapshot, useDocumentSnapshotData, useFirebaseModelsService, userUploadsFolderSlashPathFactory, userUploadsFolderStoragePathFactory, where, whereDateIsAfter, whereDateIsAfterWithSort, whereDateIsBefore, whereDateIsBeforeWithSort, whereDateIsBetween, whereDateIsInRange, whereDateIsOnOrAfter, whereDateIsOnOrAfterWithSort, whereDateIsOnOrBefore, whereDateIsOnOrBeforeWithSort, whereDocumentId, whereStringHasRootIdentityModelKey, whereStringValueHasPrefix };
|