@dereekb/firebase 10.1.6 → 10.1.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 CHANGED
@@ -3940,6 +3940,11 @@ function firestoreUniqueStringArray(config) {
3940
3940
  }
3941
3941
  const firestoreModelKeyArrayField = firestoreUniqueStringArray({});
3942
3942
  const firestoreModelIdArrayField = firestoreModelKeyArrayField;
3943
+ function firestoreUniqueNumberArray(config) {
3944
+ return firestoreUniqueArray(Object.assign(Object.assign({}, config), {
3945
+ filterUnique: util.unique
3946
+ }));
3947
+ }
3943
3948
  /**
3944
3949
  * A Firestore array that encodes values to either string or number values using another FirestoreModelField config for encoding/decoding.
3945
3950
  *
@@ -4962,9 +4967,9 @@ function iterateFirestoreDocumentSnapshotPairBatches(config) {
4962
4967
  const loadPairForSnapshot = firestoreDocumentSnapshotPairsLoaderInstance(documentAccessor);
4963
4968
  return iterateFirestoreDocumentSnapshotBatches(Object.assign(Object.assign({}, config), {
4964
4969
  maxParallelCheckpoints: 1,
4965
- iterateSnapshotBatch: snapshots => __awaiter(this, void 0, void 0, function* () {
4970
+ iterateSnapshotBatch: (snapshots, batchIndex) => __awaiter(this, void 0, void 0, function* () {
4966
4971
  const pairs = snapshots.map(loadPairForSnapshot);
4967
- return iterateSnapshotPairsBatch(pairs);
4972
+ return iterateSnapshotPairsBatch(pairs, batchIndex);
4968
4973
  })
4969
4974
  }));
4970
4975
  });
@@ -5030,13 +5035,19 @@ function iterateFirestoreDocumentSnapshotCheckpoints(config) {
5030
5035
  dynamicConstraints: inputDynamicConstraints,
5031
5036
  queryFactory,
5032
5037
  maxParallelCheckpoints = 1,
5033
- limitPerCheckpoint,
5034
- totalSnapshotsLimit = Number.MAX_SAFE_INTEGER
5038
+ limitPerCheckpoint: inputLimitPerCheckpoint,
5039
+ totalSnapshotsLimit: inputTotalSnapshotsLimit
5035
5040
  } = config;
5036
5041
  const constraintsInputIsFactory = typeof inputConstraintsFactory === 'function';
5037
5042
  const constraintsFactory = constraintsInputIsFactory && inputDynamicConstraints !== false ? inputConstraintsFactory : util.asGetter(util.getValueFromGetter(inputConstraintsFactory));
5043
+ /**
5044
+ * Default to the input total snapshots limit if no limit is provided, otherwise there will be no limit.
5045
+ */
5046
+ const limitPerCheckpoint = inputLimitPerCheckpoint !== null && inputLimitPerCheckpoint !== void 0 ? inputLimitPerCheckpoint : inputTotalSnapshotsLimit;
5047
+ const totalSnapshotsLimit = inputTotalSnapshotsLimit !== null && inputTotalSnapshotsLimit !== void 0 ? inputTotalSnapshotsLimit : Number.MAX_SAFE_INTEGER;
5038
5048
  let currentIndex = 0;
5039
5049
  let hasReachedEnd = false;
5050
+ let totalSnapshotsLimitReached = false;
5040
5051
  let totalSnapshotsVisited = 0;
5041
5052
  let cursorDocument;
5042
5053
  const visitedCursorPaths = new Set();
@@ -5054,8 +5065,18 @@ function iterateFirestoreDocumentSnapshotCheckpoints(config) {
5054
5065
  if (startAfterFilter) {
5055
5066
  constraints.push(startAfterFilter);
5056
5067
  }
5057
- if (limitPerCheckpoint) {
5058
- constraints.push(limit(limitPerCheckpoint));
5068
+ if (limitPerCheckpoint != null) {
5069
+ const totalPossibleNumberOfItemsLeftToLoad = Math.max(0, totalSnapshotsLimit - totalSnapshotsVisited);
5070
+ const nextLimit = Math.min(limitPerCheckpoint, totalPossibleNumberOfItemsLeftToLoad);
5071
+ if (nextLimit === 0) {
5072
+ // we're at the end
5073
+ cursorDocument = null;
5074
+ hasReachedEnd = true;
5075
+ totalSnapshotsLimitReached = true; // should have already been reached, but flag again just incase
5076
+ return null; // exit immediately
5077
+ } else {
5078
+ constraints.push(limit(nextLimit));
5079
+ }
5059
5080
  }
5060
5081
  const query = queryFactory.query(constraints);
5061
5082
  const docQuerySnapshot = yield query.getDocs();
@@ -5081,6 +5102,7 @@ function iterateFirestoreDocumentSnapshotCheckpoints(config) {
5081
5102
  totalSnapshotsVisited += newSnapshotsVisited;
5082
5103
  if (!cursorDocument || totalSnapshotsVisited > totalSnapshotsLimit) {
5083
5104
  hasReachedEnd = true; // mark as having reached the end
5105
+ totalSnapshotsLimitReached = true; // mark as having reached the limit
5084
5106
  }
5085
5107
 
5086
5108
  const i = currentIndex;
@@ -5113,7 +5135,8 @@ function iterateFirestoreDocumentSnapshotCheckpoints(config) {
5113
5135
  yield performTaskFn(taskInputFactory);
5114
5136
  const result = {
5115
5137
  totalCheckpoints: currentIndex,
5116
- totalSnapshotsVisited
5138
+ totalSnapshotsVisited,
5139
+ totalSnapshotsLimitReached
5117
5140
  };
5118
5141
  return result;
5119
5142
  });
@@ -5123,6 +5146,103 @@ function allowDocumentSnapshotWithPathOnceFilter() {
5123
5146
  return util.allowValueOnceFilter(readFirestoreModelKeyFromDocumentSnapshot);
5124
5147
  }
5125
5148
 
5149
+ function loadAllFirestoreDocumentSnapshotPairs(config) {
5150
+ return __awaiter(this, void 0, void 0, function* () {
5151
+ const {
5152
+ documentAccessor,
5153
+ queryFactory,
5154
+ constraintsFactory,
5155
+ dynamicConstraints,
5156
+ totalSnapshotsLimit,
5157
+ limitPerCheckpoint,
5158
+ handleRepeatCursor,
5159
+ filterCheckpointSnapshots,
5160
+ iterateSnapshotPairsBatch: optionalIterateSnapshotPairsBatch
5161
+ } = config;
5162
+ const allDocumentGroups = [];
5163
+ const {
5164
+ totalCheckpoints,
5165
+ totalSnapshotsVisited,
5166
+ totalSnapshotsLimitReached
5167
+ } = yield iterateFirestoreDocumentSnapshotPairBatches({
5168
+ documentAccessor,
5169
+ queryFactory,
5170
+ constraintsFactory,
5171
+ dynamicConstraints,
5172
+ totalSnapshotsLimit,
5173
+ handleRepeatCursor,
5174
+ filterCheckpointSnapshots,
5175
+ limitPerCheckpoint,
5176
+ maxParallelCheckpoints: 1,
5177
+ iterateSnapshotPairsBatch: (snapshotDataPairs, batchIndex) => __awaiter(this, void 0, void 0, function* () {
5178
+ allDocumentGroups.push(snapshotDataPairs);
5179
+ if (optionalIterateSnapshotPairsBatch) {
5180
+ yield optionalIterateSnapshotPairsBatch(snapshotDataPairs, batchIndex);
5181
+ }
5182
+ })
5183
+ });
5184
+ const snapshotPairs = util.flattenArray(allDocumentGroups);
5185
+ return {
5186
+ snapshotPairs,
5187
+ totalCheckpoints,
5188
+ totalSnapshotsVisited,
5189
+ totalSnapshotsLimitReached
5190
+ };
5191
+ });
5192
+ }
5193
+ /**
5194
+ * Iterates all documents that match the configuration and puts them into an array.
5195
+ *
5196
+ * @param config
5197
+ * @returns
5198
+ */
5199
+ function loadAllFirestoreDocumentSnapshot(config) {
5200
+ return __awaiter(this, void 0, void 0, function* () {
5201
+ const {
5202
+ queryFactory,
5203
+ constraintsFactory,
5204
+ dynamicConstraints,
5205
+ totalSnapshotsLimit,
5206
+ limitPerCheckpoint,
5207
+ handleRepeatCursor,
5208
+ filterCheckpointSnapshots,
5209
+ iterateSnapshotsForCheckpoint
5210
+ } = config;
5211
+ const allDocumentGroups = [];
5212
+ const {
5213
+ totalCheckpoints,
5214
+ totalSnapshotsVisited,
5215
+ totalSnapshotsLimitReached
5216
+ } = yield iterateFirestoreDocumentSnapshotCheckpoints({
5217
+ queryFactory,
5218
+ constraintsFactory,
5219
+ dynamicConstraints,
5220
+ totalSnapshotsLimit,
5221
+ handleRepeatCursor,
5222
+ filterCheckpointSnapshots,
5223
+ limitPerCheckpoint,
5224
+ maxParallelCheckpoints: 1,
5225
+ iterateCheckpoint: (snapshots, query) => __awaiter(this, void 0, void 0, function* () {
5226
+ if (snapshots.length) {
5227
+ allDocumentGroups.push(snapshots); // add to snapshots array
5228
+ if (iterateSnapshotsForCheckpoint) {
5229
+ yield iterateSnapshotsForCheckpoint(snapshots, query);
5230
+ }
5231
+ }
5232
+ return []; // return nothing
5233
+ })
5234
+ });
5235
+
5236
+ const snapshots = util.flattenArray(allDocumentGroups);
5237
+ return {
5238
+ snapshots,
5239
+ totalCheckpoints,
5240
+ totalSnapshotsVisited,
5241
+ totalSnapshotsLimitReached
5242
+ };
5243
+ });
5244
+ }
5245
+
5126
5246
  const DEFAULT_QUERY_CHANGE_WATCHER_DELAY = 0;
5127
5247
  function iterationQueryDocChangeWatcher(config) {
5128
5248
  const {
@@ -8305,6 +8425,7 @@ exports.firestoreTimezoneString = firestoreTimezoneString;
8305
8425
  exports.firestoreUID = firestoreUID;
8306
8426
  exports.firestoreUniqueArray = firestoreUniqueArray;
8307
8427
  exports.firestoreUniqueKeyedArray = firestoreUniqueKeyedArray;
8428
+ exports.firestoreUniqueNumberArray = firestoreUniqueNumberArray;
8308
8429
  exports.firestoreUniqueStringArray = firestoreUniqueStringArray;
8309
8430
  exports.firestoreUnitedStatesAddress = firestoreUnitedStatesAddress;
8310
8431
  exports.firestoreUnitedStatesAddressAssignFn = firestoreUnitedStatesAddressAssignFn;
@@ -8358,6 +8479,8 @@ exports.lazyFirebaseFunctionsFactory = lazyFirebaseFunctionsFactory;
8358
8479
  exports.limit = limit;
8359
8480
  exports.limitToLast = limitToLast;
8360
8481
  exports.limitedFirestoreDocumentAccessorFactory = limitedFirestoreDocumentAccessorFactory;
8482
+ exports.loadAllFirestoreDocumentSnapshot = loadAllFirestoreDocumentSnapshot;
8483
+ exports.loadAllFirestoreDocumentSnapshotPairs = loadAllFirestoreDocumentSnapshotPairs;
8361
8484
  exports.loadDocumentsForDocumentReferences = loadDocumentsForDocumentReferences;
8362
8485
  exports.loadDocumentsForDocumentReferencesFromValues = loadDocumentsForDocumentReferencesFromValues;
8363
8486
  exports.loadDocumentsForIds = loadDocumentsForIds;
package/index.esm.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { increment, onSnapshot, getDoc, deleteDoc, setDoc, updateDoc, doc, collectionGroup, collection, runTransaction, writeBatch, 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, getDocs, query } from 'firebase/firestore';
2
- import { cachedGetter, mergeModifiers, asArray, filterUndefinedValues, objectHasNoKeys, filterFalsyAndEmptyValues, build, wrapUseAsyncFunction, makeWithFactory, performMakeLoop, runAsyncTasksForValues, filterMaybeValues, useAsync, toModelFieldConversions, makeModelMapFunctions, modifyModelMapFunctions, assignValuesToPOJOFunction, KeyValueTypleValueFilter, asObjectCopyFactory, passThrough, isEqualToValueDecisionFunction, transformStringFunctionConfig, transformStringFunction, isDate, transformNumberFunction, sortValuesFunctionOrMapIdentityWithSortRef, unique, isMapIdentityFunction, chainMapSameFunctions, filterUniqueFunction, filterUniqueTransform, filterFromPOJOFunction, mapObjectMapFunction, copyObject, mapObjectMap, filterEmptyValues, modelFieldMapFunctions, toModelMapFunctions, latLngStringFunction, DEFAULT_LAT_LNG_STRING_VALUE, sortAscendingIndexNumberRefFunction, bitwiseSetDencoder, filterNullAndUndefinedValues, convertToArray, pushItemOrArrayItemsIntoArray, separateValues, UTF_8_START_CHARACTER, UTF_PRIVATE_USAGE_AREA_START, mergeArraysIntoArray, lastValue, flattenArrayOrValueArray, performAsyncTasks, batch, asGetter, getValueFromGetter, mapIdentityFunction, performTasksFromFactoryInParallelFunction, allowValueOnceFilter, groupValues, forEachInIterable, arrayToObject, takeFront, isOddNumber, objectToMap, ServerErrorResponse, toReadableError, capitalizeFirstLetter, lowercaseFirstLetter, toRelativeSlashPathStartType, mappedUseFunction, iterableToArray, setContainsAllValues, usePromise, slashPathFactory, errorMessageContainsString } from '@dereekb/util';
2
+ import { cachedGetter, mergeModifiers, asArray, filterUndefinedValues, objectHasNoKeys, filterFalsyAndEmptyValues, build, wrapUseAsyncFunction, makeWithFactory, performMakeLoop, runAsyncTasksForValues, filterMaybeValues, useAsync, toModelFieldConversions, makeModelMapFunctions, modifyModelMapFunctions, assignValuesToPOJOFunction, KeyValueTypleValueFilter, asObjectCopyFactory, passThrough, isEqualToValueDecisionFunction, transformStringFunctionConfig, transformStringFunction, isDate, transformNumberFunction, sortValuesFunctionOrMapIdentityWithSortRef, unique, isMapIdentityFunction, chainMapSameFunctions, filterUniqueFunction, filterUniqueTransform, filterFromPOJOFunction, mapObjectMapFunction, copyObject, mapObjectMap, filterEmptyValues, modelFieldMapFunctions, toModelMapFunctions, latLngStringFunction, DEFAULT_LAT_LNG_STRING_VALUE, sortAscendingIndexNumberRefFunction, bitwiseSetDencoder, filterNullAndUndefinedValues, convertToArray, pushItemOrArrayItemsIntoArray, separateValues, UTF_8_START_CHARACTER, UTF_PRIVATE_USAGE_AREA_START, mergeArraysIntoArray, lastValue, flattenArrayOrValueArray, performAsyncTasks, batch, asGetter, getValueFromGetter, mapIdentityFunction, performTasksFromFactoryInParallelFunction, allowValueOnceFilter, flattenArray, groupValues, forEachInIterable, arrayToObject, takeFront, isOddNumber, objectToMap, ServerErrorResponse, toReadableError, capitalizeFirstLetter, lowercaseFirstLetter, toRelativeSlashPathStartType, mappedUseFunction, iterableToArray, setContainsAllValues, usePromise, slashPathFactory, errorMessageContainsString } from '@dereekb/util';
3
3
  import { filterMaybe, lazyFrom, itemAccumulator, ItemPageIterator, MappedPageItemIterationInstance } from '@dereekb/rxjs';
4
4
  import { from, map, combineLatest, shareReplay, of, exhaustMap, Observable, switchMap, timer, skip } from 'rxjs';
5
5
  import { UNKNOWN_WEBSITE_LINK_TYPE, decodeWebsiteLinkEncodedDataToWebsiteFileLink, encodeWebsiteFileLinkToWebsiteLinkEncodedData, AbstractModelPermissionService, grantedRoleMapReader, noAccessRoleMap, fullAccessRoleMap } from '@dereekb/model';
@@ -4159,6 +4159,11 @@ function firestoreUniqueStringArray(config) {
4159
4159
  }
4160
4160
  const firestoreModelKeyArrayField = firestoreUniqueStringArray({});
4161
4161
  const firestoreModelIdArrayField = firestoreModelKeyArrayField;
4162
+ function firestoreUniqueNumberArray(config) {
4163
+ return firestoreUniqueArray(Object.assign({}, config, {
4164
+ filterUnique: unique
4165
+ }));
4166
+ }
4162
4167
  /**
4163
4168
  * A Firestore array that encodes values to either string or number values using another FirestoreModelField config for encoding/decoding.
4164
4169
  *
@@ -5484,9 +5489,9 @@ async function iterateFirestoreDocumentSnapshotPairBatches(config) {
5484
5489
  const loadPairForSnapshot = firestoreDocumentSnapshotPairsLoaderInstance(documentAccessor);
5485
5490
  return iterateFirestoreDocumentSnapshotBatches(Object.assign({}, config, {
5486
5491
  maxParallelCheckpoints: 1,
5487
- iterateSnapshotBatch: async snapshots => {
5492
+ iterateSnapshotBatch: async (snapshots, batchIndex) => {
5488
5493
  const pairs = snapshots.map(loadPairForSnapshot);
5489
- return iterateSnapshotPairsBatch(pairs);
5494
+ return iterateSnapshotPairsBatch(pairs, batchIndex);
5490
5495
  }
5491
5496
  }));
5492
5497
  }
@@ -5567,13 +5572,20 @@ async function iterateFirestoreDocumentSnapshotCheckpoints(config) {
5567
5572
  dynamicConstraints: inputDynamicConstraints,
5568
5573
  queryFactory,
5569
5574
  maxParallelCheckpoints = 1,
5570
- limitPerCheckpoint,
5571
- totalSnapshotsLimit = Number.MAX_SAFE_INTEGER
5575
+ limitPerCheckpoint: inputLimitPerCheckpoint,
5576
+ totalSnapshotsLimit: inputTotalSnapshotsLimit
5572
5577
  } = config;
5573
5578
  const constraintsInputIsFactory = typeof inputConstraintsFactory === 'function';
5574
5579
  const constraintsFactory = constraintsInputIsFactory && inputDynamicConstraints !== false ? inputConstraintsFactory : asGetter(getValueFromGetter(inputConstraintsFactory));
5580
+
5581
+ /**
5582
+ * Default to the input total snapshots limit if no limit is provided, otherwise there will be no limit.
5583
+ */
5584
+ const limitPerCheckpoint = inputLimitPerCheckpoint != null ? inputLimitPerCheckpoint : inputTotalSnapshotsLimit;
5585
+ const totalSnapshotsLimit = inputTotalSnapshotsLimit != null ? inputTotalSnapshotsLimit : Number.MAX_SAFE_INTEGER;
5575
5586
  let currentIndex = 0;
5576
5587
  let hasReachedEnd = false;
5588
+ let totalSnapshotsLimitReached = false;
5577
5589
  let totalSnapshotsVisited = 0;
5578
5590
  let cursorDocument;
5579
5591
  const visitedCursorPaths = new Set();
@@ -5590,8 +5602,18 @@ async function iterateFirestoreDocumentSnapshotCheckpoints(config) {
5590
5602
  if (startAfterFilter) {
5591
5603
  constraints.push(startAfterFilter);
5592
5604
  }
5593
- if (limitPerCheckpoint) {
5594
- constraints.push(limit(limitPerCheckpoint));
5605
+ if (limitPerCheckpoint != null) {
5606
+ const totalPossibleNumberOfItemsLeftToLoad = Math.max(0, totalSnapshotsLimit - totalSnapshotsVisited);
5607
+ const nextLimit = Math.min(limitPerCheckpoint, totalPossibleNumberOfItemsLeftToLoad);
5608
+ if (nextLimit === 0) {
5609
+ // we're at the end
5610
+ cursorDocument = null;
5611
+ hasReachedEnd = true;
5612
+ totalSnapshotsLimitReached = true; // should have already been reached, but flag again just incase
5613
+ return null; // exit immediately
5614
+ } else {
5615
+ constraints.push(limit(nextLimit));
5616
+ }
5595
5617
  }
5596
5618
  const query = queryFactory.query(constraints);
5597
5619
  const docQuerySnapshot = await query.getDocs();
@@ -5619,6 +5641,7 @@ async function iterateFirestoreDocumentSnapshotCheckpoints(config) {
5619
5641
  totalSnapshotsVisited += newSnapshotsVisited;
5620
5642
  if (!cursorDocument || totalSnapshotsVisited > totalSnapshotsLimit) {
5621
5643
  hasReachedEnd = true; // mark as having reached the end
5644
+ totalSnapshotsLimitReached = true; // mark as having reached the limit
5622
5645
  }
5623
5646
 
5624
5647
  const i = currentIndex;
@@ -5651,7 +5674,8 @@ async function iterateFirestoreDocumentSnapshotCheckpoints(config) {
5651
5674
  await performTaskFn(taskInputFactory);
5652
5675
  const result = {
5653
5676
  totalCheckpoints: currentIndex,
5654
- totalSnapshotsVisited
5677
+ totalSnapshotsVisited,
5678
+ totalSnapshotsLimitReached
5655
5679
  };
5656
5680
  return result;
5657
5681
  }
@@ -5661,6 +5685,113 @@ function allowDocumentSnapshotWithPathOnceFilter() {
5661
5685
  return allowValueOnceFilter(readFirestoreModelKeyFromDocumentSnapshot);
5662
5686
  }
5663
5687
 
5688
+ // MARK: Iterate Document Snapshot Pairs
5689
+ /**
5690
+ * Configuration for loadAllFirestoreDocumentSnapshot()
5691
+ */
5692
+
5693
+ async function loadAllFirestoreDocumentSnapshotPairs(config) {
5694
+ const {
5695
+ documentAccessor,
5696
+ queryFactory,
5697
+ constraintsFactory,
5698
+ dynamicConstraints,
5699
+ totalSnapshotsLimit,
5700
+ limitPerCheckpoint,
5701
+ handleRepeatCursor,
5702
+ filterCheckpointSnapshots,
5703
+ iterateSnapshotPairsBatch: optionalIterateSnapshotPairsBatch
5704
+ } = config;
5705
+ const allDocumentGroups = [];
5706
+ const {
5707
+ totalCheckpoints,
5708
+ totalSnapshotsVisited,
5709
+ totalSnapshotsLimitReached
5710
+ } = await iterateFirestoreDocumentSnapshotPairBatches({
5711
+ documentAccessor,
5712
+ queryFactory,
5713
+ constraintsFactory,
5714
+ dynamicConstraints,
5715
+ totalSnapshotsLimit,
5716
+ handleRepeatCursor,
5717
+ filterCheckpointSnapshots,
5718
+ limitPerCheckpoint,
5719
+ maxParallelCheckpoints: 1,
5720
+ // run serially since we want the results in order
5721
+ iterateSnapshotPairsBatch: async (snapshotDataPairs, batchIndex) => {
5722
+ allDocumentGroups.push(snapshotDataPairs);
5723
+ if (optionalIterateSnapshotPairsBatch) {
5724
+ await optionalIterateSnapshotPairsBatch(snapshotDataPairs, batchIndex);
5725
+ }
5726
+ }
5727
+ });
5728
+ const snapshotPairs = flattenArray(allDocumentGroups);
5729
+ return {
5730
+ snapshotPairs,
5731
+ totalCheckpoints,
5732
+ totalSnapshotsVisited,
5733
+ totalSnapshotsLimitReached
5734
+ };
5735
+ }
5736
+
5737
+ // MARK: Iterate Document Snapshots
5738
+ /**
5739
+ * Configuration for loadAllFirestoreDocumentSnapshot()
5740
+ */
5741
+
5742
+ /**
5743
+ * Iterates all documents that match the configuration and puts them into an array.
5744
+ *
5745
+ * @param config
5746
+ * @returns
5747
+ */
5748
+ async function loadAllFirestoreDocumentSnapshot(config) {
5749
+ const {
5750
+ queryFactory,
5751
+ constraintsFactory,
5752
+ dynamicConstraints,
5753
+ totalSnapshotsLimit,
5754
+ limitPerCheckpoint,
5755
+ handleRepeatCursor,
5756
+ filterCheckpointSnapshots,
5757
+ iterateSnapshotsForCheckpoint
5758
+ } = config;
5759
+ const allDocumentGroups = [];
5760
+ const {
5761
+ totalCheckpoints,
5762
+ totalSnapshotsVisited,
5763
+ totalSnapshotsLimitReached
5764
+ } = await iterateFirestoreDocumentSnapshotCheckpoints({
5765
+ queryFactory,
5766
+ constraintsFactory,
5767
+ dynamicConstraints,
5768
+ totalSnapshotsLimit,
5769
+ handleRepeatCursor,
5770
+ filterCheckpointSnapshots,
5771
+ limitPerCheckpoint,
5772
+ maxParallelCheckpoints: 1,
5773
+ // run serially since we want the results in order
5774
+ iterateCheckpoint: async (snapshots, query) => {
5775
+ if (snapshots.length) {
5776
+ allDocumentGroups.push(snapshots); // add to snapshots array
5777
+
5778
+ if (iterateSnapshotsForCheckpoint) {
5779
+ await iterateSnapshotsForCheckpoint(snapshots, query);
5780
+ }
5781
+ }
5782
+ return []; // return nothing
5783
+ }
5784
+ });
5785
+
5786
+ const snapshots = flattenArray(allDocumentGroups);
5787
+ return {
5788
+ snapshots,
5789
+ totalCheckpoints,
5790
+ totalSnapshotsVisited,
5791
+ totalSnapshotsLimitReached
5792
+ };
5793
+ }
5794
+
5664
5795
  const DEFAULT_QUERY_CHANGE_WATCHER_DELAY = 0;
5665
5796
 
5666
5797
  /**
@@ -9232,4 +9363,4 @@ function systemStateFirestoreCollection(firestoreContext, converters) {
9232
9363
  });
9233
9364
  }
9234
9365
 
9235
- export { AbstractFirestoreDocument, AbstractFirestoreDocumentDataAccessorWrapper, AbstractFirestoreDocumentWithParent, BASE_MODEL_STORAGE_FILE_PATH, CALL_MODEL_APP_FUNCTION_KEY, COPY_USER_RELATED_DATA_ACCESSOR_FACTORY_FUNCTION, CREATE_MODEL_APP_FUNCTION_KEY, ContextGrantedModelRolesReaderInstance, 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_QUERY_CHANGE_WATCHER_DELAY, DEFAULT_SINGLE_ITEM_FIRESTORE_COLLECTION_DOCUMENT_IDENTIFIER, DEFAULT_WEBSITE_LINK, DELETE_MODEL_APP_FUNCTION_KEY, FIREBASE_AUTH_NETWORK_REQUEST_ERROR, FIREBASE_AUTH_NETWORK_REQUEST_FAILED, FIREBASE_AUTH_PASSWORD_MAX_LENGTH, FIREBASE_AUTH_PASSWORD_MIN_LENGTH, 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_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, FirestoreItemPageIterationInstance, InferredTargetModelIdParams, InferredTargetModelParams, IsFirestoreModelId, IsFirestoreModelKey, 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, READ_MODEL_APP_FUNCTION_KEY, RUN_DEV_FUNCTION_APP_FUNCTION_KEY, SCHEDULED_FUNCTION_DEV_FUNCTION_SPECIFIER, ScheduledFunctionDevelopmentFirebaseFunctionListEntry, ScheduledFunctionDevelopmentFirebaseFunctionParams, ScheduledFunctionDevelopmentFunctionTypeEnum, SystemStateDocument, SystemStateFirestoreCollections, TargetModelIdParams, TargetModelParams, UPDATE_MODEL_APP_FUNCTION_KEY, addConstraintToBuilder, addOrReplaceLimitInConstraints, allChildDocumentsUnderParent, allChildDocumentsUnderParentPath, allChildDocumentsUnderRelativePath, allowDocumentSnapshotWithPathOnceFilter, asTopLevelFieldPath, asTopLevelFieldPaths, assertFirestoreUpdateHasData, assertStorageUploadOptionsStringFormat, assignDateCellRangeFunction, assignDateCellScheduleFunction, assignUnitedStatesAddressFunction, assignWebsiteFileLinkFunction, assignWebsiteLinkFunction, buildFirebaseCollectionTypeModelTypeMap, callModelFirebaseFunctionMapFactory, childFirestoreModelKey, childFirestoreModelKeyPath, childFirestoreModelKeys, clientFirebaseFirestoreContextFactory, clientFirebaseStorageContextFactory, contextGrantedModelRolesReader, contextGrantedModelRolesReaderDoesNotExistErrorMessage, contextGrantedModelRolesReaderPermissionErrorMessage, convertHttpsCallableErrorToReadableError, copyDocumentIdForUserRelatedModifierFunction, copyDocumentIdToFieldModifierFunction, copyUserRelatedDataAccessorFactoryFunction, copyUserRelatedDataModifierConfig, dataFromDocumentSnapshots, dataFromSnapshotStream, developmentFirebaseFunctionMapFactory, directDataHttpsCallable, documentData, documentDataFunction, documentDataWithIdAndKey, documentReferenceFromDocument, documentReferencesFromDocuments, documentReferencesFromSnapshot, endAt, endAtValue, endBefore, extendFirestoreCollectionWithSingleDocumentAccessor, filterConstraintsOfType, filterDisallowedFirestoreItemPageIteratorInputContraints, 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, firestoreClientIncrementUpdateToUpdateData, firestoreCollectionQueryFactory, firestoreContextFactory, firestoreDate, firestoreDateCellRange, firestoreDateCellRangeArray, firestoreDateCellRangeAssignFn, firestoreDateCellSchedule, firestoreDateCellScheduleAssignFn, firestoreDencoderArray, firestoreDencoderMap, firestoreDencoderStringArray, firestoreDocumentAccessorContextExtension, firestoreDocumentAccessorFactory, firestoreDocumentLoader, firestoreDocumentSnapshotPairsLoader, firestoreDocumentSnapshotPairsLoaderInstance, firestoreDummyKey, firestoreEncodedArray, firestoreEncodedObjectMap, firestoreEnum, firestoreEnumArray, firestoreField, firestoreFieldConfigToModelMapFunctionsRef, firestoreIdBatchVerifierFactory, firestoreIdentityTypeArray, firestoreIdentityTypeArrayName, firestoreItemPageIteration, firestoreItemPageIterationFactory, firestoreLatLngString, firestoreMap, firestoreMapZoomLevel, firestoreModelId, firestoreModelIdArrayField, firestoreModelIdFromDocument, firestoreModelIdGrantedRoleArrayMap, firestoreModelIdGrantedRoleMap, firestoreModelIdString, firestoreModelIdentity, firestoreModelIdentityTypeMap, firestoreModelIdsFromDocuments, firestoreModelIdsFromKey, firestoreModelKey, firestoreModelKeyArrayField, firestoreModelKeyCollectionName, firestoreModelKeyCollectionType, firestoreModelKeyCollectionTypeArray, firestoreModelKeyCollectionTypeArrayName, firestoreModelKeyCollectionTypePair, firestoreModelKeyEncodedGrantedRoleMap, firestoreModelKeyFromDocument, firestoreModelKeyGrantedRoleArrayMap, firestoreModelKeyGrantedRoleMap, firestoreModelKeyPairObject, firestoreModelKeyParentKey, firestoreModelKeyParentKeyPartPairs, firestoreModelKeyPart, firestoreModelKeyPartPairs, firestoreModelKeyPartPairsKeyPath, firestoreModelKeyPartPairsPaths, firestoreModelKeyPath, firestoreModelKeyString, firestoreModelKeyTypePair, firestoreModelKeys, firestoreModelKeysFromDocuments, firestoreModelType, firestoreNumber, firestoreObjectArray, firestorePassThroughField, firestoreQueryConstraint, firestoreQueryConstraintFactory, firestoreQueryDocumentSnapshotPairsLoader, firestoreQueryFactory, firestoreSingleDocumentAccessor, firestoreString, firestoreSubObject, firestoreTimezoneString, firestoreUID, firestoreUniqueArray, firestoreUniqueKeyedArray, firestoreUniqueStringArray, firestoreUnitedStatesAddress, firestoreUnitedStatesAddressAssignFn, firestoreUpdateWithNoDataError, firestoreWebsiteFileLink, firestoreWebsiteFileLinkAssignFn, firestoreWebsiteFileLinkEncodedArray, firestoreWebsiteFileLinkObjectArray, firestoreWebsiteLink, firestoreWebsiteLinkArray, firestoreWebsiteLinkAssignFn, flatFirestoreModelKey, getDataFromDocumentSnapshots, getDocumentSnapshotData, getDocumentSnapshotDataPair, getDocumentSnapshotDataPairs, getDocumentSnapshotDataTuples, getDocumentSnapshotPair, getDocumentSnapshotPairs, getDocumentSnapshots, getDocumentSnapshotsData, grantFullAccessIfAdmin, grantFullAccessIfAuthUserRelated, grantModelRolesIfAdmin, grantModelRolesIfAdminFunction, grantModelRolesIfAuthUserRelatedModelFunction, grantModelRolesIfFunction, grantModelRolesIfHasAuthRolesFactory, grantModelRolesIfHasAuthRolesFunction, grantModelRolesOnlyIfFunction, inContextFirebaseModelServiceFactory, inContextFirebaseModelsServiceFactory, incrementUpdateWithAccessorFunction, inferKeyFromTwoWayFlatFirestoreModelKey, interceptAccessorFactoryFunction, isAdminInFirebaseModelContext, isFirebaseStorageObjectNotFoundError, isFirestoreModelId, isFirestoreModelKey, isOwnerOfUserRelatedModelInFirebaseModelContext, iterateFirestoreDocumentSnapshotBatches, iterateFirestoreDocumentSnapshotCheckpoints, iterateFirestoreDocumentSnapshotPairBatches, iterateFirestoreDocumentSnapshotPairs, iterateFirestoreDocumentSnapshots, iterationQueryDocChangeWatcher, iterationQueryDocChangeWatcherChangeTypeForGroup, latestDataFromDocuments, latestSnapshotsFromDocuments, lazyFirebaseFunctionsFactory, limit, limitToLast, limitedFirestoreDocumentAccessorFactory, loadDocumentsForDocumentReferences, loadDocumentsForDocumentReferencesFromValues, loadDocumentsForIds, loadDocumentsForIdsFromValues, loadDocumentsForKeys, loadDocumentsForKeysFromValues, loadDocumentsForSnapshots, loadDocumentsForValues, makeDocuments, makeFirestoreCollection, makeFirestoreCollectionGroup, makeFirestoreCollectionWithParent, makeFirestoreItemPageIteratorDelegate, makeFirestoreQueryConstraintFunctionsDriver, makeRootSingleItemFirestoreCollection, makeSingleItemFirestoreCollection, mapDataFromSnapshot, mapHttpsCallable, modelFirebaseFunctionMapFactory, modelStorageSlashPathFactory, modifyBeforeSetInterceptAccessorFactoryFunction, newDocuments, noStringFormatInStorageUploadOptionsError, offset, onCallCreateModelParams, onCallCreateModelResult, onCallCreateModelResultWithDocs, onCallDeleteModelParams, onCallDevelopmentParams, onCallReadModelParams, onCallTypedModelParams, onCallTypedModelParamsFunction, onCallUpdateModelParams, optionalFirestoreArray, optionalFirestoreBoolean, optionalFirestoreDate, optionalFirestoreEnum, optionalFirestoreField, optionalFirestoreNumber, optionalFirestoreString, optionalFirestoreUID, optionalFirestoreUnitedStatesAddress, orderBy, orderByDocumentId, readFirestoreModelKey, readFirestoreModelKeyFromDocumentSnapshot, replaceConstraints, selectFromFirebaseModelsService, separateConstraints, setIdAndKeyFromKeyIdRefOnDocumentData, setIdAndKeyFromSnapshotOnDocumentData, snapshotConverterFunctions, snapshotStreamDataForAccessor, snapshotStreamForAccessor, startAfter, startAt, startAtValue, storageListFilesResultFactory, storageListFilesResultHasNoNextError, storagePathFactory, streamFromOnSnapshot, systemStateCollectionReference, systemStateConverter, systemStateFirestoreCollection, systemStateIdentity, twoWayFlatFirestoreModelKey, unsupportedFirestoreDriverFunctionError, updateWithAccessorUpdateAndConverterFunction, useContextAuth, useContextAuthUid, useDocumentSnapshot, useDocumentSnapshotData, useFirebaseModelsService, where, whereDateIsAfter, whereDateIsAfterWithSort, whereDateIsBefore, whereDateIsBeforeWithSort, whereDateIsBetween, whereDateIsInRange, whereDateIsOnOrAfter, whereDateIsOnOrAfterWithSort, whereDateIsOnOrBefore, whereDateIsOnOrBeforeWithSort, whereDocumentId, whereStringHasRootIdentityModelKey, whereStringValueHasPrefix };
9366
+ export { AbstractFirestoreDocument, AbstractFirestoreDocumentDataAccessorWrapper, AbstractFirestoreDocumentWithParent, BASE_MODEL_STORAGE_FILE_PATH, CALL_MODEL_APP_FUNCTION_KEY, COPY_USER_RELATED_DATA_ACCESSOR_FACTORY_FUNCTION, CREATE_MODEL_APP_FUNCTION_KEY, ContextGrantedModelRolesReaderInstance, 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_QUERY_CHANGE_WATCHER_DELAY, DEFAULT_SINGLE_ITEM_FIRESTORE_COLLECTION_DOCUMENT_IDENTIFIER, DEFAULT_WEBSITE_LINK, DELETE_MODEL_APP_FUNCTION_KEY, FIREBASE_AUTH_NETWORK_REQUEST_ERROR, FIREBASE_AUTH_NETWORK_REQUEST_FAILED, FIREBASE_AUTH_PASSWORD_MAX_LENGTH, FIREBASE_AUTH_PASSWORD_MIN_LENGTH, 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_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, FirestoreItemPageIterationInstance, InferredTargetModelIdParams, InferredTargetModelParams, IsFirestoreModelId, IsFirestoreModelKey, 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, READ_MODEL_APP_FUNCTION_KEY, RUN_DEV_FUNCTION_APP_FUNCTION_KEY, SCHEDULED_FUNCTION_DEV_FUNCTION_SPECIFIER, ScheduledFunctionDevelopmentFirebaseFunctionListEntry, ScheduledFunctionDevelopmentFirebaseFunctionParams, ScheduledFunctionDevelopmentFunctionTypeEnum, SystemStateDocument, SystemStateFirestoreCollections, TargetModelIdParams, TargetModelParams, UPDATE_MODEL_APP_FUNCTION_KEY, addConstraintToBuilder, addOrReplaceLimitInConstraints, allChildDocumentsUnderParent, allChildDocumentsUnderParentPath, allChildDocumentsUnderRelativePath, allowDocumentSnapshotWithPathOnceFilter, asTopLevelFieldPath, asTopLevelFieldPaths, assertFirestoreUpdateHasData, assertStorageUploadOptionsStringFormat, assignDateCellRangeFunction, assignDateCellScheduleFunction, assignUnitedStatesAddressFunction, assignWebsiteFileLinkFunction, assignWebsiteLinkFunction, buildFirebaseCollectionTypeModelTypeMap, callModelFirebaseFunctionMapFactory, childFirestoreModelKey, childFirestoreModelKeyPath, childFirestoreModelKeys, clientFirebaseFirestoreContextFactory, clientFirebaseStorageContextFactory, contextGrantedModelRolesReader, contextGrantedModelRolesReaderDoesNotExistErrorMessage, contextGrantedModelRolesReaderPermissionErrorMessage, convertHttpsCallableErrorToReadableError, copyDocumentIdForUserRelatedModifierFunction, copyDocumentIdToFieldModifierFunction, copyUserRelatedDataAccessorFactoryFunction, copyUserRelatedDataModifierConfig, dataFromDocumentSnapshots, dataFromSnapshotStream, developmentFirebaseFunctionMapFactory, directDataHttpsCallable, documentData, documentDataFunction, documentDataWithIdAndKey, documentReferenceFromDocument, documentReferencesFromDocuments, documentReferencesFromSnapshot, endAt, endAtValue, endBefore, extendFirestoreCollectionWithSingleDocumentAccessor, filterConstraintsOfType, filterDisallowedFirestoreItemPageIteratorInputContraints, 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, firestoreClientIncrementUpdateToUpdateData, firestoreCollectionQueryFactory, firestoreContextFactory, firestoreDate, firestoreDateCellRange, firestoreDateCellRangeArray, firestoreDateCellRangeAssignFn, firestoreDateCellSchedule, firestoreDateCellScheduleAssignFn, firestoreDencoderArray, firestoreDencoderMap, firestoreDencoderStringArray, firestoreDocumentAccessorContextExtension, firestoreDocumentAccessorFactory, firestoreDocumentLoader, firestoreDocumentSnapshotPairsLoader, firestoreDocumentSnapshotPairsLoaderInstance, firestoreDummyKey, firestoreEncodedArray, firestoreEncodedObjectMap, firestoreEnum, firestoreEnumArray, firestoreField, firestoreFieldConfigToModelMapFunctionsRef, firestoreIdBatchVerifierFactory, firestoreIdentityTypeArray, firestoreIdentityTypeArrayName, firestoreItemPageIteration, firestoreItemPageIterationFactory, firestoreLatLngString, firestoreMap, firestoreMapZoomLevel, firestoreModelId, firestoreModelIdArrayField, firestoreModelIdFromDocument, firestoreModelIdGrantedRoleArrayMap, firestoreModelIdGrantedRoleMap, firestoreModelIdString, firestoreModelIdentity, firestoreModelIdentityTypeMap, firestoreModelIdsFromDocuments, firestoreModelIdsFromKey, firestoreModelKey, firestoreModelKeyArrayField, firestoreModelKeyCollectionName, firestoreModelKeyCollectionType, firestoreModelKeyCollectionTypeArray, firestoreModelKeyCollectionTypeArrayName, firestoreModelKeyCollectionTypePair, firestoreModelKeyEncodedGrantedRoleMap, firestoreModelKeyFromDocument, firestoreModelKeyGrantedRoleArrayMap, firestoreModelKeyGrantedRoleMap, firestoreModelKeyPairObject, firestoreModelKeyParentKey, firestoreModelKeyParentKeyPartPairs, firestoreModelKeyPart, firestoreModelKeyPartPairs, firestoreModelKeyPartPairsKeyPath, firestoreModelKeyPartPairsPaths, firestoreModelKeyPath, firestoreModelKeyString, firestoreModelKeyTypePair, firestoreModelKeys, firestoreModelKeysFromDocuments, firestoreModelType, firestoreNumber, firestoreObjectArray, firestorePassThroughField, firestoreQueryConstraint, firestoreQueryConstraintFactory, firestoreQueryDocumentSnapshotPairsLoader, firestoreQueryFactory, firestoreSingleDocumentAccessor, firestoreString, firestoreSubObject, firestoreTimezoneString, firestoreUID, firestoreUniqueArray, firestoreUniqueKeyedArray, firestoreUniqueNumberArray, firestoreUniqueStringArray, firestoreUnitedStatesAddress, firestoreUnitedStatesAddressAssignFn, firestoreUpdateWithNoDataError, firestoreWebsiteFileLink, firestoreWebsiteFileLinkAssignFn, firestoreWebsiteFileLinkEncodedArray, firestoreWebsiteFileLinkObjectArray, firestoreWebsiteLink, firestoreWebsiteLinkArray, firestoreWebsiteLinkAssignFn, flatFirestoreModelKey, getDataFromDocumentSnapshots, getDocumentSnapshotData, getDocumentSnapshotDataPair, getDocumentSnapshotDataPairs, getDocumentSnapshotDataTuples, getDocumentSnapshotPair, getDocumentSnapshotPairs, getDocumentSnapshots, getDocumentSnapshotsData, grantFullAccessIfAdmin, grantFullAccessIfAuthUserRelated, grantModelRolesIfAdmin, grantModelRolesIfAdminFunction, grantModelRolesIfAuthUserRelatedModelFunction, grantModelRolesIfFunction, grantModelRolesIfHasAuthRolesFactory, grantModelRolesIfHasAuthRolesFunction, grantModelRolesOnlyIfFunction, inContextFirebaseModelServiceFactory, inContextFirebaseModelsServiceFactory, incrementUpdateWithAccessorFunction, inferKeyFromTwoWayFlatFirestoreModelKey, interceptAccessorFactoryFunction, isAdminInFirebaseModelContext, isFirebaseStorageObjectNotFoundError, isFirestoreModelId, isFirestoreModelKey, isOwnerOfUserRelatedModelInFirebaseModelContext, iterateFirestoreDocumentSnapshotBatches, iterateFirestoreDocumentSnapshotCheckpoints, iterateFirestoreDocumentSnapshotPairBatches, iterateFirestoreDocumentSnapshotPairs, iterateFirestoreDocumentSnapshots, iterationQueryDocChangeWatcher, iterationQueryDocChangeWatcherChangeTypeForGroup, latestDataFromDocuments, latestSnapshotsFromDocuments, lazyFirebaseFunctionsFactory, limit, limitToLast, limitedFirestoreDocumentAccessorFactory, loadAllFirestoreDocumentSnapshot, loadAllFirestoreDocumentSnapshotPairs, loadDocumentsForDocumentReferences, loadDocumentsForDocumentReferencesFromValues, loadDocumentsForIds, loadDocumentsForIdsFromValues, loadDocumentsForKeys, loadDocumentsForKeysFromValues, loadDocumentsForSnapshots, loadDocumentsForValues, makeDocuments, makeFirestoreCollection, makeFirestoreCollectionGroup, makeFirestoreCollectionWithParent, makeFirestoreItemPageIteratorDelegate, makeFirestoreQueryConstraintFunctionsDriver, makeRootSingleItemFirestoreCollection, makeSingleItemFirestoreCollection, mapDataFromSnapshot, mapHttpsCallable, modelFirebaseFunctionMapFactory, modelStorageSlashPathFactory, modifyBeforeSetInterceptAccessorFactoryFunction, newDocuments, noStringFormatInStorageUploadOptionsError, offset, onCallCreateModelParams, onCallCreateModelResult, onCallCreateModelResultWithDocs, onCallDeleteModelParams, onCallDevelopmentParams, onCallReadModelParams, onCallTypedModelParams, onCallTypedModelParamsFunction, onCallUpdateModelParams, optionalFirestoreArray, optionalFirestoreBoolean, optionalFirestoreDate, optionalFirestoreEnum, optionalFirestoreField, optionalFirestoreNumber, optionalFirestoreString, optionalFirestoreUID, optionalFirestoreUnitedStatesAddress, orderBy, orderByDocumentId, readFirestoreModelKey, readFirestoreModelKeyFromDocumentSnapshot, replaceConstraints, selectFromFirebaseModelsService, separateConstraints, setIdAndKeyFromKeyIdRefOnDocumentData, setIdAndKeyFromSnapshotOnDocumentData, snapshotConverterFunctions, snapshotStreamDataForAccessor, snapshotStreamForAccessor, startAfter, startAt, startAtValue, storageListFilesResultFactory, storageListFilesResultHasNoNextError, storagePathFactory, streamFromOnSnapshot, systemStateCollectionReference, systemStateConverter, systemStateFirestoreCollection, systemStateIdentity, twoWayFlatFirestoreModelKey, unsupportedFirestoreDriverFunctionError, updateWithAccessorUpdateAndConverterFunction, useContextAuth, useContextAuthUid, useDocumentSnapshot, useDocumentSnapshotData, useFirebaseModelsService, where, whereDateIsAfter, whereDateIsAfterWithSort, whereDateIsBefore, whereDateIsBeforeWithSort, whereDateIsBetween, whereDateIsInRange, whereDateIsOnOrAfter, whereDateIsOnOrAfterWithSort, whereDateIsOnOrBefore, whereDateIsOnOrBeforeWithSort, whereDocumentId, whereStringHasRootIdentityModelKey, whereStringValueHasPrefix };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dereekb/firebase",
3
- "version": "10.1.6",
3
+ "version": "10.1.7",
4
4
  "exports": {
5
5
  ".": {
6
6
  "types": "./src/index.d.ts",
@@ -3,6 +3,7 @@ export * from './constraint';
3
3
  export * from './constraint.template';
4
4
  export * from './iterator';
5
5
  export * from './query';
6
+ export * from './query.iterate.array';
6
7
  export * from './query.iterate';
7
8
  export * from './query.util';
8
9
  export * from './watcher';
@@ -0,0 +1,39 @@
1
+ import { type QueryDocumentSnapshot, type QuerySnapshot } from '../types';
2
+ import { type IterateFirestoreDocumentSnapshotCheckpointsConfig, type IterateFirestoreDocumentSnapshotCheckpointsResult, type IterateFirestoreDocumentSnapshotPairBatchesConfig } from './query.iterate';
3
+ import { type FirestoreDocument } from '../accessor/document';
4
+ import { type FirestoreDocumentSnapshotDataPairWithData } from '../accessor/document.utility';
5
+ /**
6
+ * Configuration for loadAllFirestoreDocumentSnapshot()
7
+ */
8
+ export interface LoadAllFirestoreDocumentSnapshotPairsConfig<T, D extends FirestoreDocument<T> = FirestoreDocument<T>> extends Pick<IterateFirestoreDocumentSnapshotPairBatchesConfig<T, unknown, D>, 'documentAccessor' | 'queryFactory' | 'constraintsFactory' | 'dynamicConstraints' | 'totalSnapshotsLimit' | 'handleRepeatCursor' | 'filterCheckpointSnapshots' | 'limitPerCheckpoint'> {
9
+ /**
10
+ * Optional iterate function. Returns no value.
11
+ */
12
+ iterateSnapshotPairsBatch?(snapshotDataPairs: FirestoreDocumentSnapshotDataPairWithData<D>[], batchIndex: number): Promise<void>;
13
+ }
14
+ export interface LoadAllFirestoreDocumentSnapshotPairsResult<T, D extends FirestoreDocument<T> = FirestoreDocument<T>> extends Pick<IterateFirestoreDocumentSnapshotCheckpointsResult, 'totalCheckpoints' | 'totalSnapshotsVisited' | 'totalSnapshotsLimitReached'> {
15
+ readonly snapshotPairs: FirestoreDocumentSnapshotDataPairWithData<D>[];
16
+ }
17
+ export declare function loadAllFirestoreDocumentSnapshotPairs<T, D extends FirestoreDocument<T> = FirestoreDocument<T>>(config: LoadAllFirestoreDocumentSnapshotPairsConfig<T, D>): Promise<LoadAllFirestoreDocumentSnapshotPairsResult<T, D>>;
18
+ /**
19
+ * Configuration for loadAllFirestoreDocumentSnapshot()
20
+ */
21
+ export interface LoadAllFirestoreDocumentSnapshotsConfig<T> extends Pick<IterateFirestoreDocumentSnapshotCheckpointsConfig<T, unknown>, 'queryFactory' | 'constraintsFactory' | 'dynamicConstraints' | 'totalSnapshotsLimit' | 'handleRepeatCursor' | 'filterCheckpointSnapshots' | 'limitPerCheckpoint'> {
22
+ /**
23
+ * Optional iterate function. Returns no value.
24
+ *
25
+ * @param snapshots
26
+ * @param query
27
+ */
28
+ iterateSnapshotsForCheckpoint?(snapshots: QueryDocumentSnapshot<T>[], query: QuerySnapshot<T>): Promise<void>;
29
+ }
30
+ export interface LoadAllFirestoreDocumentSnapshotsResult<T> extends Pick<IterateFirestoreDocumentSnapshotCheckpointsResult, 'totalCheckpoints' | 'totalSnapshotsVisited' | 'totalSnapshotsLimitReached'> {
31
+ readonly snapshots: QueryDocumentSnapshot<T>[];
32
+ }
33
+ /**
34
+ * Iterates all documents that match the configuration and puts them into an array.
35
+ *
36
+ * @param config
37
+ * @returns
38
+ */
39
+ export declare function loadAllFirestoreDocumentSnapshot<T>(config: LoadAllFirestoreDocumentSnapshotsConfig<T>): Promise<LoadAllFirestoreDocumentSnapshotsResult<T>>;
@@ -56,7 +56,7 @@ export interface IterateFirestoreDocumentSnapshotPairBatchesConfig<T, R, D exten
56
56
  /**
57
57
  * The iterate function per each snapshot batch.
58
58
  */
59
- iterateSnapshotPairsBatch(snapshotDataPairs: FirestoreDocumentSnapshotDataPairWithData<D>[]): Promise<R>;
59
+ iterateSnapshotPairsBatch(snapshotDataPairs: FirestoreDocumentSnapshotDataPairWithData<D>[], batchIndex: number): Promise<R>;
60
60
  }
61
61
  /**
62
62
  * Iterates through the results of a Firestore query by each FirestoreDocumentSnapshotDataPair.
@@ -142,13 +142,19 @@ export interface IterateFirestoreDocumentSnapshotCheckpointsConfig<T, R> {
142
142
  */
143
143
  readonly dynamicConstraints?: boolean;
144
144
  /**
145
- * Convenience paramenter to add a limit constraint to the query.
145
+ * Convenience paramenter to add a maximum limit constraint to the query.
146
+ *
147
+ * The actual limit passed to the query will be calculated between this value, the totalSnapshotsLimit value, and the remaining number of snapshots to load.
148
+ *
149
+ * A limit of 0 is NOT considered as unlimited and will cause the function to end immediately.
146
150
  */
147
- readonly limitPerCheckpoint?: number;
151
+ readonly limitPerCheckpoint?: Maybe<number>;
148
152
  /**
149
- * The total number of snapshots allowed. Ends on the checkpoint that
153
+ * The total number of snapshots allowed.
154
+ *
155
+ * Ends on the checkpoint that reaches this limit.
150
156
  */
151
- readonly totalSnapshotsLimit?: number;
157
+ readonly totalSnapshotsLimit?: Maybe<number>;
152
158
  /**
153
159
  * The number of max parallel checkpoints to run.
154
160
  *
@@ -182,7 +188,7 @@ export interface IterateFirestoreDocumentSnapshotCheckpointsConfig<T, R> {
182
188
  /**
183
189
  * The iterate function per each snapshot.
184
190
  */
185
- iterateCheckpoint(snapshot: QueryDocumentSnapshot<T>[], query: QuerySnapshot<T>): Promise<R[]>;
191
+ iterateCheckpoint(snapshots: QueryDocumentSnapshot<T>[], query: QuerySnapshot<T>): Promise<R[]>;
186
192
  /**
187
193
  * (Optional) Called at the end of each checkpoint.
188
194
  */
@@ -221,6 +227,10 @@ export interface IterateFirestoreDocumentSnapshotCheckpointsResult {
221
227
  * The total number of snapshots that were visited.
222
228
  */
223
229
  readonly totalSnapshotsVisited: number;
230
+ /**
231
+ * Whether or not the total snapshots limit was reached.
232
+ */
233
+ readonly totalSnapshotsLimitReached: boolean;
224
234
  }
225
235
  /**
226
236
  * Iterates through the results of a Firestore query in several batches.
@@ -178,6 +178,8 @@ export type FirestoreUniqueStringArrayFieldConfig<S extends string = string> = O
178
178
  export declare function firestoreUniqueStringArray<S extends string = string>(config?: FirestoreUniqueStringArrayFieldConfig<S>): FirestoreModelFieldMapFunctionsConfig<S[], S[]>;
179
179
  export declare const firestoreModelKeyArrayField: FirestoreModelFieldMapFunctionsConfig<string[], string[]>;
180
180
  export declare const firestoreModelIdArrayField: FirestoreModelFieldMapFunctionsConfig<string[], string[]>;
181
+ export type FirestoreUniqueNumberArrayFieldConfig<S extends number = number> = Omit<FirestoreUniqueArrayFieldConfig<S>, 'filterUnique'>;
182
+ export declare function firestoreUniqueNumberArray<S extends number = number>(config?: FirestoreUniqueNumberArrayFieldConfig<S>): FirestoreModelFieldMapFunctionsConfig<S[], S[]>;
181
183
  export type FirestoreEncodedArrayFieldConfig<T, E extends string | number> = DefaultMapConfiguredFirestoreFieldConfig<T[], E[]> & Partial<SortCompareFunctionRef<T>> & {
182
184
  readonly convert: {
183
185
  fromData: MapFunction<E, T>;
package/test/CHANGELOG.md CHANGED
@@ -2,6 +2,10 @@
2
2
 
3
3
  This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver).
4
4
 
5
+ ## [10.1.7](https://github.com/dereekb/dbx-components/compare/v10.1.6-dev...v10.1.7) (2024-03-28)
6
+
7
+
8
+
5
9
  ## [10.1.6](https://github.com/dereekb/dbx-components/compare/v10.1.5-dev...v10.1.6) (2024-03-26)
6
10
 
7
11
 
package/test/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dereekb/firebase/test",
3
- "version": "10.1.6",
3
+ "version": "10.1.7",
4
4
  "type": "commonjs",
5
5
  "peerDependencies": {
6
6
  "@dereekb/util": "*",
@@ -84,6 +84,52 @@ function describeFirestoreQueryDriverTests(f) {
84
84
  allMockUserItems = results.flat();
85
85
  }));
86
86
  describe('utils', () => {
87
+ describe('iterate load firestore utilities', () => {
88
+ describe('loadAllFirestoreDocumentSnapshotPairs()', () => {
89
+ it('should iterate batches of snapshot pairs.', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
90
+ const documentAccessor = f.instance.mockItemUserCollectionGroup.documentAccessor();
91
+ const mockUserItemsVisited = new Set();
92
+ const result = yield (0, firebase_1.loadAllFirestoreDocumentSnapshotPairs)({
93
+ documentAccessor,
94
+ iterateSnapshotPairsBatch: (x) => tslib_1.__awaiter(this, void 0, void 0, function* () {
95
+ x.forEach((y) => mockUserItemsVisited.add(y.document.key));
96
+ const pair = x[0];
97
+ expect(pair.data).toBeDefined();
98
+ expect(pair.snapshot).toBeDefined();
99
+ expect(pair.document).toBeDefined();
100
+ }),
101
+ queryFactory: f.instance.mockItemUserCollectionGroup,
102
+ constraintsFactory: [] // no constraints
103
+ });
104
+ expect(result.totalSnapshotsVisited).toBe(allMockUserItems.length);
105
+ expect(mockUserItemsVisited.size).toBe(allMockUserItems.length);
106
+ expect(result.snapshotPairs.length).toBe(allMockUserItems.length);
107
+ expect(result.snapshotPairs[0].data).toBeDefined();
108
+ expect(result.snapshotPairs[0].document).toBeDefined();
109
+ expect(result.snapshotPairs[0].snapshot).toBeDefined();
110
+ }));
111
+ });
112
+ describe('loadAllFirestoreDocumentSnapshot()', () => {
113
+ it('should iterate batches of snapshot pairs.', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
114
+ const mockUserItemsVisited = new Set();
115
+ const result = yield (0, firebase_1.loadAllFirestoreDocumentSnapshot)({
116
+ iterateSnapshotsForCheckpoint: (x) => tslib_1.__awaiter(this, void 0, void 0, function* () {
117
+ x.forEach((y) => mockUserItemsVisited.add(y.ref.path));
118
+ const snapshot = x[0];
119
+ expect(snapshot.ref).toBeDefined();
120
+ expect(snapshot.data()).toBeDefined();
121
+ }),
122
+ queryFactory: f.instance.mockItemUserCollectionGroup,
123
+ constraintsFactory: [] // no constraints
124
+ });
125
+ expect(result.totalSnapshotsVisited).toBe(allMockUserItems.length);
126
+ expect(mockUserItemsVisited.size).toBe(allMockUserItems.length);
127
+ expect(result.snapshots.length).toBe(allMockUserItems.length);
128
+ expect(result.snapshots[0].ref).toBeDefined();
129
+ expect(result.snapshots[0].data()).toBeDefined();
130
+ }));
131
+ });
132
+ });
87
133
  describe('iterate firestore utilities', () => {
88
134
  describe('iterateFirestoreDocumentSnapshotPairs()', () => {
89
135
  it('should iterate across all mock users by each snapshot pair.', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
@@ -192,6 +238,25 @@ function describeFirestoreQueryDriverTests(f) {
192
238
  expect(result.totalSnapshotsVisited).toBe(allMockUserItems.length);
193
239
  expect(mockUserItemsVisited.size).toBe(allMockUserItems.length);
194
240
  }));
241
+ describe('limitPerCheckpoint', () => {
242
+ describe('limitPerCheckpoint = 0', () => {
243
+ it('should not iterate any batches', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
244
+ const result = yield (0, firebase_1.iterateFirestoreDocumentSnapshotBatches)({
245
+ limitPerCheckpoint: 0,
246
+ iterateSnapshotBatch: (x) => tslib_1.__awaiter(this, void 0, void 0, function* () {
247
+ expect(x.length).toBe(0);
248
+ }),
249
+ useCheckpointResult: (x) => tslib_1.__awaiter(this, void 0, void 0, function* () {
250
+ expect(x.docSnapshots.length).toBe(0);
251
+ }),
252
+ queryFactory: f.instance.mockItemUserCollectionGroup,
253
+ constraintsFactory: [] // no constraints
254
+ });
255
+ expect(result.totalSnapshotsVisited).toBe(0);
256
+ expect(result.totalSnapshotsLimitReached).toBe(true);
257
+ }));
258
+ });
259
+ });
195
260
  describe('maxParallelCheckpoints>1', () => {
196
261
  it('should process the checkpoints in parallel.', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
197
262
  const mockUserItemsVisited = new Set();
@@ -1 +1 @@
1
- {"version":3,"file":"test.driver.query.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/test/src/lib/common/firestore/test.driver.query.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"test.driver.query.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/test/src/lib/common/firestore/test.driver.query.ts"],"names":[],"mappings":"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"}