@azure/cosmos 4.7.0 → 4.8.0-alpha.20251121.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (814) hide show
  1. package/dist/browser/CosmosClientOptions.d.ts +1 -1
  2. package/dist/browser/CosmosClientOptions.js.map +1 -1
  3. package/dist/browser/client/ChangeFeed/ChangeFeedForEpkRange.d.ts.map +1 -1
  4. package/dist/browser/client/ChangeFeed/ChangeFeedForEpkRange.js +2 -34
  5. package/dist/browser/client/ChangeFeed/ChangeFeedForEpkRange.js.map +1 -1
  6. package/dist/browser/client/ChangeFeed/ChangeFeedForPartitionKey.d.ts.map +1 -1
  7. package/dist/browser/client/ChangeFeed/ChangeFeedForPartitionKey.js +2 -35
  8. package/dist/browser/client/ChangeFeed/ChangeFeedForPartitionKey.js.map +1 -1
  9. package/dist/browser/client/ChangeFeed/ChangeFeedIteratorOptions.d.ts +15 -0
  10. package/dist/browser/client/ChangeFeed/ChangeFeedIteratorOptions.d.ts.map +1 -1
  11. package/dist/browser/client/ChangeFeed/ChangeFeedIteratorOptions.js.map +1 -1
  12. package/dist/browser/client/ChangeFeed/InternalChangeFeedOptions.d.ts +3 -0
  13. package/dist/browser/client/ChangeFeed/InternalChangeFeedOptions.d.ts.map +1 -1
  14. package/dist/browser/client/ChangeFeed/InternalChangeFeedOptions.js.map +1 -1
  15. package/dist/browser/client/ChangeFeed/changeFeedUtils.d.ts +6 -0
  16. package/dist/browser/client/ChangeFeed/changeFeedUtils.d.ts.map +1 -1
  17. package/dist/browser/client/ChangeFeed/changeFeedUtils.js +47 -0
  18. package/dist/browser/client/ChangeFeed/changeFeedUtils.js.map +1 -1
  19. package/dist/browser/common/constants.d.ts.map +1 -1
  20. package/dist/browser/common/constants.js +16 -1
  21. package/dist/browser/common/constants.js.map +1 -1
  22. package/dist/browser/documents/ContinuationToken/CompositeQueryContinuationToken.d.ts +99 -0
  23. package/dist/browser/documents/ContinuationToken/CompositeQueryContinuationToken.d.ts.map +1 -0
  24. package/dist/browser/documents/ContinuationToken/CompositeQueryContinuationToken.js +84 -0
  25. package/dist/browser/documents/ContinuationToken/CompositeQueryContinuationToken.js.map +1 -0
  26. package/dist/browser/documents/ContinuationToken/OrderByQueryContinuationToken.d.ts +40 -0
  27. package/dist/browser/documents/ContinuationToken/OrderByQueryContinuationToken.d.ts.map +1 -0
  28. package/dist/browser/documents/ContinuationToken/OrderByQueryContinuationToken.js +39 -0
  29. package/dist/browser/documents/ContinuationToken/OrderByQueryContinuationToken.js.map +1 -0
  30. package/dist/browser/documents/ContinuationToken/PartitionRangeUpdate.d.ts +21 -0
  31. package/dist/browser/documents/ContinuationToken/PartitionRangeUpdate.d.ts.map +1 -0
  32. package/dist/browser/documents/ContinuationToken/PartitionRangeUpdate.js +4 -0
  33. package/dist/browser/documents/ContinuationToken/PartitionRangeUpdate.js.map +1 -0
  34. package/dist/browser/documents/VectorEmbeddingPolicy.d.ts +4 -0
  35. package/dist/browser/documents/VectorEmbeddingPolicy.d.ts.map +1 -1
  36. package/dist/browser/documents/VectorEmbeddingPolicy.js +4 -0
  37. package/dist/browser/documents/VectorEmbeddingPolicy.js.map +1 -1
  38. package/dist/browser/queryExecutionContext/Aggregators/MaxAggregator.d.ts.map +1 -1
  39. package/dist/browser/queryExecutionContext/Aggregators/MaxAggregator.js +4 -0
  40. package/dist/browser/queryExecutionContext/Aggregators/MaxAggregator.js.map +1 -1
  41. package/dist/browser/queryExecutionContext/Aggregators/MinAggregator.d.ts.map +1 -1
  42. package/dist/browser/queryExecutionContext/Aggregators/MinAggregator.js +4 -0
  43. package/dist/browser/queryExecutionContext/Aggregators/MinAggregator.js.map +1 -1
  44. package/dist/browser/queryExecutionContext/ContinuationTokenManager/BaseContinuationTokenManager.d.ts +2 -0
  45. package/dist/browser/queryExecutionContext/ContinuationTokenManager/BaseContinuationTokenManager.d.ts.map +1 -0
  46. package/dist/browser/queryExecutionContext/ContinuationTokenManager/BaseContinuationTokenManager.js +174 -0
  47. package/dist/browser/queryExecutionContext/ContinuationTokenManager/BaseContinuationTokenManager.js.map +1 -0
  48. package/dist/browser/queryExecutionContext/ContinuationTokenManager/ContinuationTokenManagerFactory.d.ts +2 -0
  49. package/dist/browser/queryExecutionContext/ContinuationTokenManager/ContinuationTokenManagerFactory.d.ts.map +1 -0
  50. package/dist/browser/queryExecutionContext/ContinuationTokenManager/ContinuationTokenManagerFactory.js +28 -0
  51. package/dist/browser/queryExecutionContext/ContinuationTokenManager/ContinuationTokenManagerFactory.js.map +1 -0
  52. package/dist/browser/queryExecutionContext/ContinuationTokenManager/OrderByQueryContinuationTokenManager.d.ts +2 -0
  53. package/dist/browser/queryExecutionContext/ContinuationTokenManager/OrderByQueryContinuationTokenManager.d.ts.map +1 -0
  54. package/dist/browser/queryExecutionContext/ContinuationTokenManager/OrderByQueryContinuationTokenManager.js +129 -0
  55. package/dist/browser/queryExecutionContext/ContinuationTokenManager/OrderByQueryContinuationTokenManager.js.map +1 -0
  56. package/dist/browser/queryExecutionContext/ContinuationTokenManager/ParallelQueryContinuationTokenManager.d.ts +2 -0
  57. package/dist/browser/queryExecutionContext/ContinuationTokenManager/ParallelQueryContinuationTokenManager.d.ts.map +1 -0
  58. package/dist/browser/queryExecutionContext/ContinuationTokenManager/ParallelQueryContinuationTokenManager.js +66 -0
  59. package/dist/browser/queryExecutionContext/ContinuationTokenManager/ParallelQueryContinuationTokenManager.js.map +1 -0
  60. package/dist/browser/queryExecutionContext/ContinuationTokenParser.d.ts +2 -0
  61. package/dist/browser/queryExecutionContext/ContinuationTokenParser.d.ts.map +1 -0
  62. package/dist/browser/queryExecutionContext/ContinuationTokenParser.js +23 -0
  63. package/dist/browser/queryExecutionContext/ContinuationTokenParser.js.map +1 -0
  64. package/dist/browser/queryExecutionContext/EndpointComponent/GroupByEndpointComponent.d.ts.map +1 -1
  65. package/dist/browser/queryExecutionContext/EndpointComponent/GroupByEndpointComponent.js +22 -7
  66. package/dist/browser/queryExecutionContext/EndpointComponent/GroupByEndpointComponent.js.map +1 -1
  67. package/dist/browser/queryExecutionContext/EndpointComponent/GroupByValueEndpointComponent.d.ts.map +1 -1
  68. package/dist/browser/queryExecutionContext/EndpointComponent/GroupByValueEndpointComponent.js +21 -5
  69. package/dist/browser/queryExecutionContext/EndpointComponent/GroupByValueEndpointComponent.js.map +1 -1
  70. package/dist/browser/queryExecutionContext/EndpointComponent/NonStreamingOrderByDistinctEndpointComponent.d.ts.map +1 -1
  71. package/dist/browser/queryExecutionContext/EndpointComponent/NonStreamingOrderByDistinctEndpointComponent.js +28 -6
  72. package/dist/browser/queryExecutionContext/EndpointComponent/NonStreamingOrderByDistinctEndpointComponent.js.map +1 -1
  73. package/dist/browser/queryExecutionContext/EndpointComponent/NonStreamingOrderByEndpointComponent.d.ts.map +1 -1
  74. package/dist/browser/queryExecutionContext/EndpointComponent/NonStreamingOrderByEndpointComponent.js +23 -7
  75. package/dist/browser/queryExecutionContext/EndpointComponent/NonStreamingOrderByEndpointComponent.js.map +1 -1
  76. package/dist/browser/queryExecutionContext/EndpointComponent/OffsetLimitEndpointComponent.d.ts.map +1 -1
  77. package/dist/browser/queryExecutionContext/EndpointComponent/OffsetLimitEndpointComponent.js +35 -4
  78. package/dist/browser/queryExecutionContext/EndpointComponent/OffsetLimitEndpointComponent.js.map +1 -1
  79. package/dist/browser/queryExecutionContext/EndpointComponent/OrderByEndpointComponent.d.ts +1 -0
  80. package/dist/browser/queryExecutionContext/EndpointComponent/OrderByEndpointComponent.d.ts.map +1 -1
  81. package/dist/browser/queryExecutionContext/EndpointComponent/OrderByEndpointComponent.js +22 -4
  82. package/dist/browser/queryExecutionContext/EndpointComponent/OrderByEndpointComponent.js.map +1 -1
  83. package/dist/browser/queryExecutionContext/EndpointComponent/OrderedDistinctEndpointComponent.d.ts +1 -1
  84. package/dist/browser/queryExecutionContext/EndpointComponent/OrderedDistinctEndpointComponent.d.ts.map +1 -1
  85. package/dist/browser/queryExecutionContext/EndpointComponent/OrderedDistinctEndpointComponent.js +24 -5
  86. package/dist/browser/queryExecutionContext/EndpointComponent/OrderedDistinctEndpointComponent.js.map +1 -1
  87. package/dist/browser/queryExecutionContext/EndpointComponent/UnorderedDistinctEndpointComponent.d.ts.map +1 -1
  88. package/dist/browser/queryExecutionContext/EndpointComponent/UnorderedDistinctEndpointComponent.js +18 -5
  89. package/dist/browser/queryExecutionContext/EndpointComponent/UnorderedDistinctEndpointComponent.js.map +1 -1
  90. package/dist/browser/queryExecutionContext/LegacyFetchImplementation.d.ts +14 -0
  91. package/dist/browser/queryExecutionContext/LegacyFetchImplementation.d.ts.map +1 -0
  92. package/dist/browser/queryExecutionContext/LegacyFetchImplementation.js +55 -0
  93. package/dist/browser/queryExecutionContext/LegacyFetchImplementation.js.map +1 -0
  94. package/dist/browser/queryExecutionContext/PartitionRangeManager.d.ts +73 -0
  95. package/dist/browser/queryExecutionContext/PartitionRangeManager.d.ts.map +1 -0
  96. package/dist/browser/queryExecutionContext/PartitionRangeManager.js +156 -0
  97. package/dist/browser/queryExecutionContext/PartitionRangeManager.js.map +1 -0
  98. package/dist/browser/queryExecutionContext/PartitionRangeUtils.d.ts +19 -0
  99. package/dist/browser/queryExecutionContext/PartitionRangeUtils.d.ts.map +1 -0
  100. package/dist/browser/queryExecutionContext/PartitionRangeUtils.js +105 -0
  101. package/dist/browser/queryExecutionContext/PartitionRangeUtils.js.map +1 -0
  102. package/dist/browser/queryExecutionContext/QueryControlFetchImplementation.d.ts +20 -0
  103. package/dist/browser/queryExecutionContext/QueryControlFetchImplementation.d.ts.map +1 -0
  104. package/dist/browser/queryExecutionContext/QueryControlFetchImplementation.js +93 -0
  105. package/dist/browser/queryExecutionContext/QueryControlFetchImplementation.js.map +1 -0
  106. package/dist/browser/queryExecutionContext/QueryValidationHelper.d.ts +9 -0
  107. package/dist/browser/queryExecutionContext/QueryValidationHelper.d.ts.map +1 -0
  108. package/dist/browser/queryExecutionContext/QueryValidationHelper.js +65 -0
  109. package/dist/browser/queryExecutionContext/QueryValidationHelper.js.map +1 -0
  110. package/dist/browser/queryExecutionContext/defaultQueryExecutionContext.d.ts +2 -2
  111. package/dist/browser/queryExecutionContext/defaultQueryExecutionContext.d.ts.map +1 -1
  112. package/dist/browser/queryExecutionContext/defaultQueryExecutionContext.js +2 -1
  113. package/dist/browser/queryExecutionContext/defaultQueryExecutionContext.js.map +1 -1
  114. package/dist/browser/queryExecutionContext/documentProducer.d.ts +9 -3
  115. package/dist/browser/queryExecutionContext/documentProducer.d.ts.map +1 -1
  116. package/dist/browser/queryExecutionContext/documentProducer.js +17 -4
  117. package/dist/browser/queryExecutionContext/documentProducer.js.map +1 -1
  118. package/dist/browser/queryExecutionContext/hybridQueryExecutionContext.d.ts +1 -1
  119. package/dist/browser/queryExecutionContext/hybridQueryExecutionContext.d.ts.map +1 -1
  120. package/dist/browser/queryExecutionContext/hybridQueryExecutionContext.js +18 -13
  121. package/dist/browser/queryExecutionContext/hybridQueryExecutionContext.js.map +1 -1
  122. package/dist/browser/queryExecutionContext/index.d.ts +7 -0
  123. package/dist/browser/queryExecutionContext/index.d.ts.map +1 -1
  124. package/dist/browser/queryExecutionContext/index.js +4 -0
  125. package/dist/browser/queryExecutionContext/index.js.map +1 -1
  126. package/dist/browser/queryExecutionContext/nonStreamingOrderByResult.d.ts +5 -1
  127. package/dist/browser/queryExecutionContext/nonStreamingOrderByResult.d.ts.map +1 -1
  128. package/dist/browser/queryExecutionContext/nonStreamingOrderByResult.js.map +1 -1
  129. package/dist/browser/queryExecutionContext/orderByComparator.d.ts +11 -2
  130. package/dist/browser/queryExecutionContext/orderByComparator.d.ts.map +1 -1
  131. package/dist/browser/queryExecutionContext/orderByComparator.js +20 -3
  132. package/dist/browser/queryExecutionContext/orderByComparator.js.map +1 -1
  133. package/dist/browser/queryExecutionContext/orderByDocumentProducerComparator.d.ts +4 -0
  134. package/dist/browser/queryExecutionContext/orderByDocumentProducerComparator.d.ts.map +1 -1
  135. package/dist/browser/queryExecutionContext/orderByDocumentProducerComparator.js +18 -7
  136. package/dist/browser/queryExecutionContext/orderByDocumentProducerComparator.js.map +1 -1
  137. package/dist/browser/queryExecutionContext/orderByQueryExecutionContext.d.ts +7 -10
  138. package/dist/browser/queryExecutionContext/orderByQueryExecutionContext.d.ts.map +1 -1
  139. package/dist/browser/queryExecutionContext/orderByQueryExecutionContext.js +30 -23
  140. package/dist/browser/queryExecutionContext/orderByQueryExecutionContext.js.map +1 -1
  141. package/dist/browser/queryExecutionContext/parallelQueryExecutionContext.d.ts +18 -10
  142. package/dist/browser/queryExecutionContext/parallelQueryExecutionContext.d.ts.map +1 -1
  143. package/dist/browser/queryExecutionContext/parallelQueryExecutionContext.js +47 -23
  144. package/dist/browser/queryExecutionContext/parallelQueryExecutionContext.js.map +1 -1
  145. package/dist/browser/queryExecutionContext/parallelQueryExecutionContextBase.d.ts +160 -26
  146. package/dist/browser/queryExecutionContext/parallelQueryExecutionContextBase.d.ts.map +1 -1
  147. package/dist/browser/queryExecutionContext/parallelQueryExecutionContextBase.js +453 -106
  148. package/dist/browser/queryExecutionContext/parallelQueryExecutionContextBase.js.map +1 -1
  149. package/dist/browser/queryExecutionContext/parallelQueryResult.d.ts +35 -0
  150. package/dist/browser/queryExecutionContext/parallelQueryResult.d.ts.map +1 -0
  151. package/dist/browser/queryExecutionContext/parallelQueryResult.js +23 -0
  152. package/dist/browser/queryExecutionContext/parallelQueryResult.js.map +1 -0
  153. package/dist/browser/queryExecutionContext/pipelinedQueryExecutionContext.d.ts +37 -7
  154. package/dist/browser/queryExecutionContext/pipelinedQueryExecutionContext.d.ts.map +1 -1
  155. package/dist/browser/queryExecutionContext/pipelinedQueryExecutionContext.js +173 -120
  156. package/dist/browser/queryExecutionContext/pipelinedQueryExecutionContext.js.map +1 -1
  157. package/dist/browser/queryExecutionContext/queryFilteringStrategy/FilterStrategy.d.ts +40 -0
  158. package/dist/browser/queryExecutionContext/queryFilteringStrategy/FilterStrategy.d.ts.map +1 -0
  159. package/dist/browser/queryExecutionContext/queryFilteringStrategy/FilterStrategy.js +4 -0
  160. package/dist/browser/queryExecutionContext/queryFilteringStrategy/FilterStrategy.js.map +1 -0
  161. package/dist/browser/queryExecutionContext/queryFilteringStrategy/OrderByQueryRangeStrategy.d.ts +49 -0
  162. package/dist/browser/queryExecutionContext/queryFilteringStrategy/OrderByQueryRangeStrategy.d.ts.map +1 -0
  163. package/dist/browser/queryExecutionContext/queryFilteringStrategy/OrderByQueryRangeStrategy.js +310 -0
  164. package/dist/browser/queryExecutionContext/queryFilteringStrategy/OrderByQueryRangeStrategy.js.map +1 -0
  165. package/dist/browser/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.d.ts +18 -0
  166. package/dist/browser/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.d.ts.map +1 -0
  167. package/dist/browser/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.js +102 -0
  168. package/dist/browser/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.js.map +1 -0
  169. package/dist/browser/queryExecutionContext/queryFilteringStrategy/RidSkipCountFilter.d.ts +51 -0
  170. package/dist/browser/queryExecutionContext/queryFilteringStrategy/RidSkipCountFilter.d.ts.map +1 -0
  171. package/dist/browser/queryExecutionContext/queryFilteringStrategy/RidSkipCountFilter.js +180 -0
  172. package/dist/browser/queryExecutionContext/queryFilteringStrategy/RidSkipCountFilter.js.map +1 -0
  173. package/dist/browser/queryExecutionContext/queryFilteringStrategy/TargetPartitionRangeManager.d.ts +76 -0
  174. package/dist/browser/queryExecutionContext/queryFilteringStrategy/TargetPartitionRangeManager.d.ts.map +1 -0
  175. package/dist/browser/queryExecutionContext/queryFilteringStrategy/TargetPartitionRangeManager.js +93 -0
  176. package/dist/browser/queryExecutionContext/queryFilteringStrategy/TargetPartitionRangeManager.js.map +1 -0
  177. package/dist/browser/queryExecutionContext/queryFilteringStrategy/TargetPartitionRangeStrategy.d.ts +30 -0
  178. package/dist/browser/queryExecutionContext/queryFilteringStrategy/TargetPartitionRangeStrategy.d.ts.map +1 -0
  179. package/dist/browser/queryExecutionContext/queryFilteringStrategy/TargetPartitionRangeStrategy.js +4 -0
  180. package/dist/browser/queryExecutionContext/queryFilteringStrategy/TargetPartitionRangeStrategy.js.map +1 -0
  181. package/dist/browser/queryExecutionContext/queryProcessingStrategy/OrderByQueryProcessingStrategy.d.ts +29 -0
  182. package/dist/browser/queryExecutionContext/queryProcessingStrategy/OrderByQueryProcessingStrategy.d.ts.map +1 -0
  183. package/dist/browser/queryExecutionContext/queryProcessingStrategy/OrderByQueryProcessingStrategy.js +53 -0
  184. package/dist/browser/queryExecutionContext/queryProcessingStrategy/OrderByQueryProcessingStrategy.js.map +1 -0
  185. package/dist/browser/queryExecutionContext/queryProcessingStrategy/ParallelQueryProcessingStrategy.d.ts +27 -0
  186. package/dist/browser/queryExecutionContext/queryProcessingStrategy/ParallelQueryProcessingStrategy.d.ts.map +1 -0
  187. package/dist/browser/queryExecutionContext/queryProcessingStrategy/ParallelQueryProcessingStrategy.js +34 -0
  188. package/dist/browser/queryExecutionContext/queryProcessingStrategy/ParallelQueryProcessingStrategy.js.map +1 -0
  189. package/dist/browser/queryExecutionContext/queryProcessingStrategy/QueryProcessingStrategy.d.ts +36 -0
  190. package/dist/browser/queryExecutionContext/queryProcessingStrategy/QueryProcessingStrategy.d.ts.map +1 -0
  191. package/dist/browser/queryExecutionContext/queryProcessingStrategy/QueryProcessingStrategy.js +4 -0
  192. package/dist/browser/queryExecutionContext/queryProcessingStrategy/QueryProcessingStrategy.js.map +1 -0
  193. package/dist/browser/queryExecutionContext/queryRangeMapping.d.ts +22 -0
  194. package/dist/browser/queryExecutionContext/queryRangeMapping.d.ts.map +1 -0
  195. package/dist/browser/queryExecutionContext/queryRangeMapping.js +4 -0
  196. package/dist/browser/queryExecutionContext/queryRangeMapping.js.map +1 -0
  197. package/dist/browser/queryIterator.js.map +1 -1
  198. package/dist/browser/request/RequestHandler.d.ts.map +1 -1
  199. package/dist/browser/request/RequestHandler.js +10 -4
  200. package/dist/browser/request/RequestHandler.js.map +1 -1
  201. package/dist/browser/utils/offers.d.ts.map +1 -1
  202. package/dist/browser/utils/offers.js +0 -1
  203. package/dist/browser/utils/offers.js.map +1 -1
  204. package/dist/commonjs/CosmosClientOptions.d.ts +1 -1
  205. package/dist/commonjs/CosmosClientOptions.js.map +1 -1
  206. package/dist/commonjs/client/ChangeFeed/ChangeFeedForEpkRange.d.ts.map +1 -1
  207. package/dist/commonjs/client/ChangeFeed/ChangeFeedForEpkRange.js +1 -33
  208. package/dist/commonjs/client/ChangeFeed/ChangeFeedForEpkRange.js.map +1 -1
  209. package/dist/commonjs/client/ChangeFeed/ChangeFeedForPartitionKey.d.ts.map +1 -1
  210. package/dist/commonjs/client/ChangeFeed/ChangeFeedForPartitionKey.js +1 -34
  211. package/dist/commonjs/client/ChangeFeed/ChangeFeedForPartitionKey.js.map +1 -1
  212. package/dist/commonjs/client/ChangeFeed/ChangeFeedIteratorOptions.d.ts +15 -0
  213. package/dist/commonjs/client/ChangeFeed/ChangeFeedIteratorOptions.d.ts.map +1 -1
  214. package/dist/commonjs/client/ChangeFeed/ChangeFeedIteratorOptions.js.map +1 -1
  215. package/dist/commonjs/client/ChangeFeed/InternalChangeFeedOptions.d.ts +3 -0
  216. package/dist/commonjs/client/ChangeFeed/InternalChangeFeedOptions.d.ts.map +1 -1
  217. package/dist/commonjs/client/ChangeFeed/InternalChangeFeedOptions.js.map +1 -1
  218. package/dist/commonjs/client/ChangeFeed/changeFeedUtils.d.ts +6 -0
  219. package/dist/commonjs/client/ChangeFeed/changeFeedUtils.d.ts.map +1 -1
  220. package/dist/commonjs/client/ChangeFeed/changeFeedUtils.js +48 -0
  221. package/dist/commonjs/client/ChangeFeed/changeFeedUtils.js.map +1 -1
  222. package/dist/commonjs/common/constants.d.ts.map +1 -1
  223. package/dist/commonjs/common/constants.js +13 -2
  224. package/dist/commonjs/common/constants.js.map +1 -1
  225. package/dist/commonjs/documents/ContinuationToken/CompositeQueryContinuationToken.d.ts +99 -0
  226. package/dist/commonjs/documents/ContinuationToken/CompositeQueryContinuationToken.d.ts.map +1 -0
  227. package/dist/commonjs/documents/ContinuationToken/CompositeQueryContinuationToken.js +93 -0
  228. package/dist/commonjs/documents/ContinuationToken/CompositeQueryContinuationToken.js.map +1 -0
  229. package/dist/commonjs/documents/ContinuationToken/OrderByQueryContinuationToken.d.ts +40 -0
  230. package/dist/commonjs/documents/ContinuationToken/OrderByQueryContinuationToken.d.ts.map +1 -0
  231. package/dist/commonjs/documents/ContinuationToken/OrderByQueryContinuationToken.js +44 -0
  232. package/dist/commonjs/documents/ContinuationToken/OrderByQueryContinuationToken.js.map +1 -0
  233. package/dist/commonjs/documents/ContinuationToken/PartitionRangeUpdate.d.ts +21 -0
  234. package/dist/commonjs/documents/ContinuationToken/PartitionRangeUpdate.d.ts.map +1 -0
  235. package/dist/commonjs/documents/ContinuationToken/PartitionRangeUpdate.js +5 -0
  236. package/dist/commonjs/documents/ContinuationToken/PartitionRangeUpdate.js.map +1 -0
  237. package/dist/commonjs/documents/VectorEmbeddingPolicy.d.ts +4 -0
  238. package/dist/commonjs/documents/VectorEmbeddingPolicy.d.ts.map +1 -1
  239. package/dist/commonjs/documents/VectorEmbeddingPolicy.js +4 -0
  240. package/dist/commonjs/documents/VectorEmbeddingPolicy.js.map +1 -1
  241. package/dist/commonjs/queryExecutionContext/Aggregators/MaxAggregator.d.ts.map +1 -1
  242. package/dist/commonjs/queryExecutionContext/Aggregators/MaxAggregator.js +4 -0
  243. package/dist/commonjs/queryExecutionContext/Aggregators/MaxAggregator.js.map +1 -1
  244. package/dist/commonjs/queryExecutionContext/Aggregators/MinAggregator.d.ts.map +1 -1
  245. package/dist/commonjs/queryExecutionContext/Aggregators/MinAggregator.js +4 -0
  246. package/dist/commonjs/queryExecutionContext/Aggregators/MinAggregator.js.map +1 -1
  247. package/dist/commonjs/queryExecutionContext/ContinuationTokenManager/BaseContinuationTokenManager.d.ts +2 -0
  248. package/dist/commonjs/queryExecutionContext/ContinuationTokenManager/BaseContinuationTokenManager.d.ts.map +1 -0
  249. package/dist/commonjs/queryExecutionContext/ContinuationTokenManager/BaseContinuationTokenManager.js +178 -0
  250. package/dist/commonjs/queryExecutionContext/ContinuationTokenManager/BaseContinuationTokenManager.js.map +1 -0
  251. package/dist/commonjs/queryExecutionContext/ContinuationTokenManager/ContinuationTokenManagerFactory.d.ts +2 -0
  252. package/dist/commonjs/queryExecutionContext/ContinuationTokenManager/ContinuationTokenManagerFactory.d.ts.map +1 -0
  253. package/dist/commonjs/queryExecutionContext/ContinuationTokenManager/ContinuationTokenManagerFactory.js +31 -0
  254. package/dist/commonjs/queryExecutionContext/ContinuationTokenManager/ContinuationTokenManagerFactory.js.map +1 -0
  255. package/dist/commonjs/queryExecutionContext/ContinuationTokenManager/OrderByQueryContinuationTokenManager.d.ts +2 -0
  256. package/dist/commonjs/queryExecutionContext/ContinuationTokenManager/OrderByQueryContinuationTokenManager.d.ts.map +1 -0
  257. package/dist/commonjs/queryExecutionContext/ContinuationTokenManager/OrderByQueryContinuationTokenManager.js +133 -0
  258. package/dist/commonjs/queryExecutionContext/ContinuationTokenManager/OrderByQueryContinuationTokenManager.js.map +1 -0
  259. package/dist/commonjs/queryExecutionContext/ContinuationTokenManager/ParallelQueryContinuationTokenManager.d.ts +2 -0
  260. package/dist/commonjs/queryExecutionContext/ContinuationTokenManager/ParallelQueryContinuationTokenManager.d.ts.map +1 -0
  261. package/dist/commonjs/queryExecutionContext/ContinuationTokenManager/ParallelQueryContinuationTokenManager.js +70 -0
  262. package/dist/commonjs/queryExecutionContext/ContinuationTokenManager/ParallelQueryContinuationTokenManager.js.map +1 -0
  263. package/dist/commonjs/queryExecutionContext/ContinuationTokenParser.d.ts +2 -0
  264. package/dist/commonjs/queryExecutionContext/ContinuationTokenParser.d.ts.map +1 -0
  265. package/dist/commonjs/queryExecutionContext/ContinuationTokenParser.js +26 -0
  266. package/dist/commonjs/queryExecutionContext/ContinuationTokenParser.js.map +1 -0
  267. package/dist/commonjs/queryExecutionContext/EndpointComponent/GroupByEndpointComponent.d.ts.map +1 -1
  268. package/dist/commonjs/queryExecutionContext/EndpointComponent/GroupByEndpointComponent.js +22 -7
  269. package/dist/commonjs/queryExecutionContext/EndpointComponent/GroupByEndpointComponent.js.map +1 -1
  270. package/dist/commonjs/queryExecutionContext/EndpointComponent/GroupByValueEndpointComponent.d.ts.map +1 -1
  271. package/dist/commonjs/queryExecutionContext/EndpointComponent/GroupByValueEndpointComponent.js +21 -5
  272. package/dist/commonjs/queryExecutionContext/EndpointComponent/GroupByValueEndpointComponent.js.map +1 -1
  273. package/dist/commonjs/queryExecutionContext/EndpointComponent/NonStreamingOrderByDistinctEndpointComponent.d.ts.map +1 -1
  274. package/dist/commonjs/queryExecutionContext/EndpointComponent/NonStreamingOrderByDistinctEndpointComponent.js +28 -6
  275. package/dist/commonjs/queryExecutionContext/EndpointComponent/NonStreamingOrderByDistinctEndpointComponent.js.map +1 -1
  276. package/dist/commonjs/queryExecutionContext/EndpointComponent/NonStreamingOrderByEndpointComponent.d.ts.map +1 -1
  277. package/dist/commonjs/queryExecutionContext/EndpointComponent/NonStreamingOrderByEndpointComponent.js +23 -7
  278. package/dist/commonjs/queryExecutionContext/EndpointComponent/NonStreamingOrderByEndpointComponent.js.map +1 -1
  279. package/dist/commonjs/queryExecutionContext/EndpointComponent/OffsetLimitEndpointComponent.d.ts.map +1 -1
  280. package/dist/commonjs/queryExecutionContext/EndpointComponent/OffsetLimitEndpointComponent.js +35 -4
  281. package/dist/commonjs/queryExecutionContext/EndpointComponent/OffsetLimitEndpointComponent.js.map +1 -1
  282. package/dist/commonjs/queryExecutionContext/EndpointComponent/OrderByEndpointComponent.d.ts +1 -0
  283. package/dist/commonjs/queryExecutionContext/EndpointComponent/OrderByEndpointComponent.d.ts.map +1 -1
  284. package/dist/commonjs/queryExecutionContext/EndpointComponent/OrderByEndpointComponent.js +22 -4
  285. package/dist/commonjs/queryExecutionContext/EndpointComponent/OrderByEndpointComponent.js.map +1 -1
  286. package/dist/commonjs/queryExecutionContext/EndpointComponent/OrderedDistinctEndpointComponent.d.ts +1 -1
  287. package/dist/commonjs/queryExecutionContext/EndpointComponent/OrderedDistinctEndpointComponent.d.ts.map +1 -1
  288. package/dist/commonjs/queryExecutionContext/EndpointComponent/OrderedDistinctEndpointComponent.js +24 -5
  289. package/dist/commonjs/queryExecutionContext/EndpointComponent/OrderedDistinctEndpointComponent.js.map +1 -1
  290. package/dist/commonjs/queryExecutionContext/EndpointComponent/UnorderedDistinctEndpointComponent.d.ts.map +1 -1
  291. package/dist/commonjs/queryExecutionContext/EndpointComponent/UnorderedDistinctEndpointComponent.js +18 -5
  292. package/dist/commonjs/queryExecutionContext/EndpointComponent/UnorderedDistinctEndpointComponent.js.map +1 -1
  293. package/dist/commonjs/queryExecutionContext/LegacyFetchImplementation.d.ts +14 -0
  294. package/dist/commonjs/queryExecutionContext/LegacyFetchImplementation.d.ts.map +1 -0
  295. package/dist/commonjs/queryExecutionContext/LegacyFetchImplementation.js +59 -0
  296. package/dist/commonjs/queryExecutionContext/LegacyFetchImplementation.js.map +1 -0
  297. package/dist/commonjs/queryExecutionContext/PartitionRangeManager.d.ts +73 -0
  298. package/dist/commonjs/queryExecutionContext/PartitionRangeManager.d.ts.map +1 -0
  299. package/dist/commonjs/queryExecutionContext/PartitionRangeManager.js +160 -0
  300. package/dist/commonjs/queryExecutionContext/PartitionRangeManager.js.map +1 -0
  301. package/dist/commonjs/queryExecutionContext/PartitionRangeUtils.d.ts +19 -0
  302. package/dist/commonjs/queryExecutionContext/PartitionRangeUtils.d.ts.map +1 -0
  303. package/dist/commonjs/queryExecutionContext/PartitionRangeUtils.js +109 -0
  304. package/dist/commonjs/queryExecutionContext/PartitionRangeUtils.js.map +1 -0
  305. package/dist/commonjs/queryExecutionContext/QueryControlFetchImplementation.d.ts +20 -0
  306. package/dist/commonjs/queryExecutionContext/QueryControlFetchImplementation.d.ts.map +1 -0
  307. package/dist/commonjs/queryExecutionContext/QueryControlFetchImplementation.js +97 -0
  308. package/dist/commonjs/queryExecutionContext/QueryControlFetchImplementation.js.map +1 -0
  309. package/dist/commonjs/queryExecutionContext/QueryValidationHelper.d.ts +9 -0
  310. package/dist/commonjs/queryExecutionContext/QueryValidationHelper.d.ts.map +1 -0
  311. package/dist/commonjs/queryExecutionContext/QueryValidationHelper.js +69 -0
  312. package/dist/commonjs/queryExecutionContext/QueryValidationHelper.js.map +1 -0
  313. package/dist/commonjs/queryExecutionContext/defaultQueryExecutionContext.d.ts +2 -2
  314. package/dist/commonjs/queryExecutionContext/defaultQueryExecutionContext.d.ts.map +1 -1
  315. package/dist/commonjs/queryExecutionContext/defaultQueryExecutionContext.js +2 -1
  316. package/dist/commonjs/queryExecutionContext/defaultQueryExecutionContext.js.map +1 -1
  317. package/dist/commonjs/queryExecutionContext/documentProducer.d.ts +9 -3
  318. package/dist/commonjs/queryExecutionContext/documentProducer.d.ts.map +1 -1
  319. package/dist/commonjs/queryExecutionContext/documentProducer.js +17 -4
  320. package/dist/commonjs/queryExecutionContext/documentProducer.js.map +1 -1
  321. package/dist/commonjs/queryExecutionContext/hybridQueryExecutionContext.d.ts +1 -1
  322. package/dist/commonjs/queryExecutionContext/hybridQueryExecutionContext.d.ts.map +1 -1
  323. package/dist/commonjs/queryExecutionContext/hybridQueryExecutionContext.js +18 -13
  324. package/dist/commonjs/queryExecutionContext/hybridQueryExecutionContext.js.map +1 -1
  325. package/dist/commonjs/queryExecutionContext/index.d.ts +7 -0
  326. package/dist/commonjs/queryExecutionContext/index.d.ts.map +1 -1
  327. package/dist/commonjs/queryExecutionContext/index.js +10 -0
  328. package/dist/commonjs/queryExecutionContext/index.js.map +1 -1
  329. package/dist/commonjs/queryExecutionContext/nonStreamingOrderByResult.d.ts +5 -1
  330. package/dist/commonjs/queryExecutionContext/nonStreamingOrderByResult.d.ts.map +1 -1
  331. package/dist/commonjs/queryExecutionContext/nonStreamingOrderByResult.js.map +1 -1
  332. package/dist/commonjs/queryExecutionContext/orderByComparator.d.ts +11 -2
  333. package/dist/commonjs/queryExecutionContext/orderByComparator.d.ts.map +1 -1
  334. package/dist/commonjs/queryExecutionContext/orderByComparator.js +21 -3
  335. package/dist/commonjs/queryExecutionContext/orderByComparator.js.map +1 -1
  336. package/dist/commonjs/queryExecutionContext/orderByDocumentProducerComparator.d.ts +4 -0
  337. package/dist/commonjs/queryExecutionContext/orderByDocumentProducerComparator.d.ts.map +1 -1
  338. package/dist/commonjs/queryExecutionContext/orderByDocumentProducerComparator.js +18 -7
  339. package/dist/commonjs/queryExecutionContext/orderByDocumentProducerComparator.js.map +1 -1
  340. package/dist/commonjs/queryExecutionContext/orderByQueryExecutionContext.d.ts +7 -10
  341. package/dist/commonjs/queryExecutionContext/orderByQueryExecutionContext.d.ts.map +1 -1
  342. package/dist/commonjs/queryExecutionContext/orderByQueryExecutionContext.js +30 -23
  343. package/dist/commonjs/queryExecutionContext/orderByQueryExecutionContext.js.map +1 -1
  344. package/dist/commonjs/queryExecutionContext/parallelQueryExecutionContext.d.ts +18 -10
  345. package/dist/commonjs/queryExecutionContext/parallelQueryExecutionContext.d.ts.map +1 -1
  346. package/dist/commonjs/queryExecutionContext/parallelQueryExecutionContext.js +47 -23
  347. package/dist/commonjs/queryExecutionContext/parallelQueryExecutionContext.js.map +1 -1
  348. package/dist/commonjs/queryExecutionContext/parallelQueryExecutionContextBase.d.ts +160 -26
  349. package/dist/commonjs/queryExecutionContext/parallelQueryExecutionContextBase.d.ts.map +1 -1
  350. package/dist/commonjs/queryExecutionContext/parallelQueryExecutionContextBase.js +453 -106
  351. package/dist/commonjs/queryExecutionContext/parallelQueryExecutionContextBase.js.map +1 -1
  352. package/dist/commonjs/queryExecutionContext/parallelQueryResult.d.ts +35 -0
  353. package/dist/commonjs/queryExecutionContext/parallelQueryResult.d.ts.map +1 -0
  354. package/dist/commonjs/queryExecutionContext/parallelQueryResult.js +26 -0
  355. package/dist/commonjs/queryExecutionContext/parallelQueryResult.js.map +1 -0
  356. package/dist/commonjs/queryExecutionContext/pipelinedQueryExecutionContext.d.ts +37 -7
  357. package/dist/commonjs/queryExecutionContext/pipelinedQueryExecutionContext.d.ts.map +1 -1
  358. package/dist/commonjs/queryExecutionContext/pipelinedQueryExecutionContext.js +173 -120
  359. package/dist/commonjs/queryExecutionContext/pipelinedQueryExecutionContext.js.map +1 -1
  360. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/FilterStrategy.d.ts +40 -0
  361. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/FilterStrategy.d.ts.map +1 -0
  362. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/FilterStrategy.js +5 -0
  363. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/FilterStrategy.js.map +1 -0
  364. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/OrderByQueryRangeStrategy.d.ts +49 -0
  365. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/OrderByQueryRangeStrategy.d.ts.map +1 -0
  366. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/OrderByQueryRangeStrategy.js +314 -0
  367. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/OrderByQueryRangeStrategy.js.map +1 -0
  368. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.d.ts +18 -0
  369. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.d.ts.map +1 -0
  370. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.js +106 -0
  371. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.js.map +1 -0
  372. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/RidSkipCountFilter.d.ts +51 -0
  373. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/RidSkipCountFilter.d.ts.map +1 -0
  374. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/RidSkipCountFilter.js +184 -0
  375. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/RidSkipCountFilter.js.map +1 -0
  376. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/TargetPartitionRangeManager.d.ts +76 -0
  377. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/TargetPartitionRangeManager.d.ts.map +1 -0
  378. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/TargetPartitionRangeManager.js +97 -0
  379. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/TargetPartitionRangeManager.js.map +1 -0
  380. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/TargetPartitionRangeStrategy.d.ts +30 -0
  381. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/TargetPartitionRangeStrategy.d.ts.map +1 -0
  382. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/TargetPartitionRangeStrategy.js +5 -0
  383. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/TargetPartitionRangeStrategy.js.map +1 -0
  384. package/dist/commonjs/queryExecutionContext/queryProcessingStrategy/OrderByQueryProcessingStrategy.d.ts +29 -0
  385. package/dist/commonjs/queryExecutionContext/queryProcessingStrategy/OrderByQueryProcessingStrategy.d.ts.map +1 -0
  386. package/dist/commonjs/queryExecutionContext/queryProcessingStrategy/OrderByQueryProcessingStrategy.js +57 -0
  387. package/dist/commonjs/queryExecutionContext/queryProcessingStrategy/OrderByQueryProcessingStrategy.js.map +1 -0
  388. package/dist/commonjs/queryExecutionContext/queryProcessingStrategy/ParallelQueryProcessingStrategy.d.ts +27 -0
  389. package/dist/commonjs/queryExecutionContext/queryProcessingStrategy/ParallelQueryProcessingStrategy.d.ts.map +1 -0
  390. package/dist/commonjs/queryExecutionContext/queryProcessingStrategy/ParallelQueryProcessingStrategy.js +38 -0
  391. package/dist/commonjs/queryExecutionContext/queryProcessingStrategy/ParallelQueryProcessingStrategy.js.map +1 -0
  392. package/dist/commonjs/queryExecutionContext/queryProcessingStrategy/QueryProcessingStrategy.d.ts +36 -0
  393. package/dist/commonjs/queryExecutionContext/queryProcessingStrategy/QueryProcessingStrategy.d.ts.map +1 -0
  394. package/dist/commonjs/queryExecutionContext/queryProcessingStrategy/QueryProcessingStrategy.js +5 -0
  395. package/dist/commonjs/queryExecutionContext/queryProcessingStrategy/QueryProcessingStrategy.js.map +1 -0
  396. package/dist/commonjs/queryExecutionContext/queryRangeMapping.d.ts +22 -0
  397. package/dist/commonjs/queryExecutionContext/queryRangeMapping.d.ts.map +1 -0
  398. package/dist/commonjs/queryExecutionContext/queryRangeMapping.js +5 -0
  399. package/dist/commonjs/queryExecutionContext/queryRangeMapping.js.map +1 -0
  400. package/dist/commonjs/queryIterator.js.map +1 -1
  401. package/dist/commonjs/request/RequestHandler.d.ts.map +1 -1
  402. package/dist/commonjs/request/RequestHandler.js +10 -4
  403. package/dist/commonjs/request/RequestHandler.js.map +1 -1
  404. package/dist/commonjs/tsdoc-metadata.json +1 -1
  405. package/dist/commonjs/utils/offers.d.ts.map +1 -1
  406. package/dist/commonjs/utils/offers.js +0 -1
  407. package/dist/commonjs/utils/offers.js.map +1 -1
  408. package/dist/esm/CosmosClientOptions.d.ts +1 -1
  409. package/dist/esm/CosmosClientOptions.js.map +1 -1
  410. package/dist/esm/client/ChangeFeed/ChangeFeedForEpkRange.d.ts.map +1 -1
  411. package/dist/esm/client/ChangeFeed/ChangeFeedForEpkRange.js +2 -34
  412. package/dist/esm/client/ChangeFeed/ChangeFeedForEpkRange.js.map +1 -1
  413. package/dist/esm/client/ChangeFeed/ChangeFeedForPartitionKey.d.ts.map +1 -1
  414. package/dist/esm/client/ChangeFeed/ChangeFeedForPartitionKey.js +2 -35
  415. package/dist/esm/client/ChangeFeed/ChangeFeedForPartitionKey.js.map +1 -1
  416. package/dist/esm/client/ChangeFeed/ChangeFeedIteratorOptions.d.ts +15 -0
  417. package/dist/esm/client/ChangeFeed/ChangeFeedIteratorOptions.d.ts.map +1 -1
  418. package/dist/esm/client/ChangeFeed/ChangeFeedIteratorOptions.js.map +1 -1
  419. package/dist/esm/client/ChangeFeed/InternalChangeFeedOptions.d.ts +3 -0
  420. package/dist/esm/client/ChangeFeed/InternalChangeFeedOptions.d.ts.map +1 -1
  421. package/dist/esm/client/ChangeFeed/InternalChangeFeedOptions.js.map +1 -1
  422. package/dist/esm/client/ChangeFeed/changeFeedUtils.d.ts +6 -0
  423. package/dist/esm/client/ChangeFeed/changeFeedUtils.d.ts.map +1 -1
  424. package/dist/esm/client/ChangeFeed/changeFeedUtils.js +47 -0
  425. package/dist/esm/client/ChangeFeed/changeFeedUtils.js.map +1 -1
  426. package/dist/esm/common/constants.d.ts.map +1 -1
  427. package/dist/esm/common/constants.js +16 -1
  428. package/dist/esm/common/constants.js.map +1 -1
  429. package/dist/esm/documents/ContinuationToken/CompositeQueryContinuationToken.d.ts +99 -0
  430. package/dist/esm/documents/ContinuationToken/CompositeQueryContinuationToken.d.ts.map +1 -0
  431. package/dist/esm/documents/ContinuationToken/CompositeQueryContinuationToken.js +84 -0
  432. package/dist/esm/documents/ContinuationToken/CompositeQueryContinuationToken.js.map +1 -0
  433. package/dist/esm/documents/ContinuationToken/OrderByQueryContinuationToken.d.ts +40 -0
  434. package/dist/esm/documents/ContinuationToken/OrderByQueryContinuationToken.d.ts.map +1 -0
  435. package/dist/esm/documents/ContinuationToken/OrderByQueryContinuationToken.js +39 -0
  436. package/dist/esm/documents/ContinuationToken/OrderByQueryContinuationToken.js.map +1 -0
  437. package/dist/esm/documents/ContinuationToken/PartitionRangeUpdate.d.ts +21 -0
  438. package/dist/esm/documents/ContinuationToken/PartitionRangeUpdate.d.ts.map +1 -0
  439. package/dist/esm/documents/ContinuationToken/PartitionRangeUpdate.js +4 -0
  440. package/dist/esm/documents/ContinuationToken/PartitionRangeUpdate.js.map +1 -0
  441. package/dist/esm/documents/VectorEmbeddingPolicy.d.ts +4 -0
  442. package/dist/esm/documents/VectorEmbeddingPolicy.d.ts.map +1 -1
  443. package/dist/esm/documents/VectorEmbeddingPolicy.js +4 -0
  444. package/dist/esm/documents/VectorEmbeddingPolicy.js.map +1 -1
  445. package/dist/esm/queryExecutionContext/Aggregators/MaxAggregator.d.ts.map +1 -1
  446. package/dist/esm/queryExecutionContext/Aggregators/MaxAggregator.js +4 -0
  447. package/dist/esm/queryExecutionContext/Aggregators/MaxAggregator.js.map +1 -1
  448. package/dist/esm/queryExecutionContext/Aggregators/MinAggregator.d.ts.map +1 -1
  449. package/dist/esm/queryExecutionContext/Aggregators/MinAggregator.js +4 -0
  450. package/dist/esm/queryExecutionContext/Aggregators/MinAggregator.js.map +1 -1
  451. package/dist/esm/queryExecutionContext/ContinuationTokenManager/BaseContinuationTokenManager.d.ts +2 -0
  452. package/dist/esm/queryExecutionContext/ContinuationTokenManager/BaseContinuationTokenManager.d.ts.map +1 -0
  453. package/dist/esm/queryExecutionContext/ContinuationTokenManager/BaseContinuationTokenManager.js +174 -0
  454. package/dist/esm/queryExecutionContext/ContinuationTokenManager/BaseContinuationTokenManager.js.map +1 -0
  455. package/dist/esm/queryExecutionContext/ContinuationTokenManager/ContinuationTokenManagerFactory.d.ts +2 -0
  456. package/dist/esm/queryExecutionContext/ContinuationTokenManager/ContinuationTokenManagerFactory.d.ts.map +1 -0
  457. package/dist/esm/queryExecutionContext/ContinuationTokenManager/ContinuationTokenManagerFactory.js +28 -0
  458. package/dist/esm/queryExecutionContext/ContinuationTokenManager/ContinuationTokenManagerFactory.js.map +1 -0
  459. package/dist/esm/queryExecutionContext/ContinuationTokenManager/OrderByQueryContinuationTokenManager.d.ts +2 -0
  460. package/dist/esm/queryExecutionContext/ContinuationTokenManager/OrderByQueryContinuationTokenManager.d.ts.map +1 -0
  461. package/dist/esm/queryExecutionContext/ContinuationTokenManager/OrderByQueryContinuationTokenManager.js +129 -0
  462. package/dist/esm/queryExecutionContext/ContinuationTokenManager/OrderByQueryContinuationTokenManager.js.map +1 -0
  463. package/dist/esm/queryExecutionContext/ContinuationTokenManager/ParallelQueryContinuationTokenManager.d.ts +2 -0
  464. package/dist/esm/queryExecutionContext/ContinuationTokenManager/ParallelQueryContinuationTokenManager.d.ts.map +1 -0
  465. package/dist/esm/queryExecutionContext/ContinuationTokenManager/ParallelQueryContinuationTokenManager.js +66 -0
  466. package/dist/esm/queryExecutionContext/ContinuationTokenManager/ParallelQueryContinuationTokenManager.js.map +1 -0
  467. package/dist/esm/queryExecutionContext/ContinuationTokenParser.d.ts +2 -0
  468. package/dist/esm/queryExecutionContext/ContinuationTokenParser.d.ts.map +1 -0
  469. package/dist/esm/queryExecutionContext/ContinuationTokenParser.js +23 -0
  470. package/dist/esm/queryExecutionContext/ContinuationTokenParser.js.map +1 -0
  471. package/dist/esm/queryExecutionContext/EndpointComponent/GroupByEndpointComponent.d.ts.map +1 -1
  472. package/dist/esm/queryExecutionContext/EndpointComponent/GroupByEndpointComponent.js +22 -7
  473. package/dist/esm/queryExecutionContext/EndpointComponent/GroupByEndpointComponent.js.map +1 -1
  474. package/dist/esm/queryExecutionContext/EndpointComponent/GroupByValueEndpointComponent.d.ts.map +1 -1
  475. package/dist/esm/queryExecutionContext/EndpointComponent/GroupByValueEndpointComponent.js +21 -5
  476. package/dist/esm/queryExecutionContext/EndpointComponent/GroupByValueEndpointComponent.js.map +1 -1
  477. package/dist/esm/queryExecutionContext/EndpointComponent/NonStreamingOrderByDistinctEndpointComponent.d.ts.map +1 -1
  478. package/dist/esm/queryExecutionContext/EndpointComponent/NonStreamingOrderByDistinctEndpointComponent.js +28 -6
  479. package/dist/esm/queryExecutionContext/EndpointComponent/NonStreamingOrderByDistinctEndpointComponent.js.map +1 -1
  480. package/dist/esm/queryExecutionContext/EndpointComponent/NonStreamingOrderByEndpointComponent.d.ts.map +1 -1
  481. package/dist/esm/queryExecutionContext/EndpointComponent/NonStreamingOrderByEndpointComponent.js +23 -7
  482. package/dist/esm/queryExecutionContext/EndpointComponent/NonStreamingOrderByEndpointComponent.js.map +1 -1
  483. package/dist/esm/queryExecutionContext/EndpointComponent/OffsetLimitEndpointComponent.d.ts.map +1 -1
  484. package/dist/esm/queryExecutionContext/EndpointComponent/OffsetLimitEndpointComponent.js +35 -4
  485. package/dist/esm/queryExecutionContext/EndpointComponent/OffsetLimitEndpointComponent.js.map +1 -1
  486. package/dist/esm/queryExecutionContext/EndpointComponent/OrderByEndpointComponent.d.ts +1 -0
  487. package/dist/esm/queryExecutionContext/EndpointComponent/OrderByEndpointComponent.d.ts.map +1 -1
  488. package/dist/esm/queryExecutionContext/EndpointComponent/OrderByEndpointComponent.js +22 -4
  489. package/dist/esm/queryExecutionContext/EndpointComponent/OrderByEndpointComponent.js.map +1 -1
  490. package/dist/esm/queryExecutionContext/EndpointComponent/OrderedDistinctEndpointComponent.d.ts +1 -1
  491. package/dist/esm/queryExecutionContext/EndpointComponent/OrderedDistinctEndpointComponent.d.ts.map +1 -1
  492. package/dist/esm/queryExecutionContext/EndpointComponent/OrderedDistinctEndpointComponent.js +24 -5
  493. package/dist/esm/queryExecutionContext/EndpointComponent/OrderedDistinctEndpointComponent.js.map +1 -1
  494. package/dist/esm/queryExecutionContext/EndpointComponent/UnorderedDistinctEndpointComponent.d.ts.map +1 -1
  495. package/dist/esm/queryExecutionContext/EndpointComponent/UnorderedDistinctEndpointComponent.js +18 -5
  496. package/dist/esm/queryExecutionContext/EndpointComponent/UnorderedDistinctEndpointComponent.js.map +1 -1
  497. package/dist/esm/queryExecutionContext/LegacyFetchImplementation.d.ts +14 -0
  498. package/dist/esm/queryExecutionContext/LegacyFetchImplementation.d.ts.map +1 -0
  499. package/dist/esm/queryExecutionContext/LegacyFetchImplementation.js +55 -0
  500. package/dist/esm/queryExecutionContext/LegacyFetchImplementation.js.map +1 -0
  501. package/dist/esm/queryExecutionContext/PartitionRangeManager.d.ts +73 -0
  502. package/dist/esm/queryExecutionContext/PartitionRangeManager.d.ts.map +1 -0
  503. package/dist/esm/queryExecutionContext/PartitionRangeManager.js +156 -0
  504. package/dist/esm/queryExecutionContext/PartitionRangeManager.js.map +1 -0
  505. package/dist/esm/queryExecutionContext/PartitionRangeUtils.d.ts +19 -0
  506. package/dist/esm/queryExecutionContext/PartitionRangeUtils.d.ts.map +1 -0
  507. package/dist/esm/queryExecutionContext/PartitionRangeUtils.js +105 -0
  508. package/dist/esm/queryExecutionContext/PartitionRangeUtils.js.map +1 -0
  509. package/dist/esm/queryExecutionContext/QueryControlFetchImplementation.d.ts +20 -0
  510. package/dist/esm/queryExecutionContext/QueryControlFetchImplementation.d.ts.map +1 -0
  511. package/dist/esm/queryExecutionContext/QueryControlFetchImplementation.js +93 -0
  512. package/dist/esm/queryExecutionContext/QueryControlFetchImplementation.js.map +1 -0
  513. package/dist/esm/queryExecutionContext/QueryValidationHelper.d.ts +9 -0
  514. package/dist/esm/queryExecutionContext/QueryValidationHelper.d.ts.map +1 -0
  515. package/dist/esm/queryExecutionContext/QueryValidationHelper.js +65 -0
  516. package/dist/esm/queryExecutionContext/QueryValidationHelper.js.map +1 -0
  517. package/dist/esm/queryExecutionContext/defaultQueryExecutionContext.d.ts +2 -2
  518. package/dist/esm/queryExecutionContext/defaultQueryExecutionContext.d.ts.map +1 -1
  519. package/dist/esm/queryExecutionContext/defaultQueryExecutionContext.js +2 -1
  520. package/dist/esm/queryExecutionContext/defaultQueryExecutionContext.js.map +1 -1
  521. package/dist/esm/queryExecutionContext/documentProducer.d.ts +9 -3
  522. package/dist/esm/queryExecutionContext/documentProducer.d.ts.map +1 -1
  523. package/dist/esm/queryExecutionContext/documentProducer.js +17 -4
  524. package/dist/esm/queryExecutionContext/documentProducer.js.map +1 -1
  525. package/dist/esm/queryExecutionContext/hybridQueryExecutionContext.d.ts +1 -1
  526. package/dist/esm/queryExecutionContext/hybridQueryExecutionContext.d.ts.map +1 -1
  527. package/dist/esm/queryExecutionContext/hybridQueryExecutionContext.js +18 -13
  528. package/dist/esm/queryExecutionContext/hybridQueryExecutionContext.js.map +1 -1
  529. package/dist/esm/queryExecutionContext/index.d.ts +7 -0
  530. package/dist/esm/queryExecutionContext/index.d.ts.map +1 -1
  531. package/dist/esm/queryExecutionContext/index.js +4 -0
  532. package/dist/esm/queryExecutionContext/index.js.map +1 -1
  533. package/dist/esm/queryExecutionContext/nonStreamingOrderByResult.d.ts +5 -1
  534. package/dist/esm/queryExecutionContext/nonStreamingOrderByResult.d.ts.map +1 -1
  535. package/dist/esm/queryExecutionContext/nonStreamingOrderByResult.js.map +1 -1
  536. package/dist/esm/queryExecutionContext/orderByComparator.d.ts +11 -2
  537. package/dist/esm/queryExecutionContext/orderByComparator.d.ts.map +1 -1
  538. package/dist/esm/queryExecutionContext/orderByComparator.js +20 -3
  539. package/dist/esm/queryExecutionContext/orderByComparator.js.map +1 -1
  540. package/dist/esm/queryExecutionContext/orderByDocumentProducerComparator.d.ts +4 -0
  541. package/dist/esm/queryExecutionContext/orderByDocumentProducerComparator.d.ts.map +1 -1
  542. package/dist/esm/queryExecutionContext/orderByDocumentProducerComparator.js +18 -7
  543. package/dist/esm/queryExecutionContext/orderByDocumentProducerComparator.js.map +1 -1
  544. package/dist/esm/queryExecutionContext/orderByQueryExecutionContext.d.ts +7 -10
  545. package/dist/esm/queryExecutionContext/orderByQueryExecutionContext.d.ts.map +1 -1
  546. package/dist/esm/queryExecutionContext/orderByQueryExecutionContext.js +30 -23
  547. package/dist/esm/queryExecutionContext/orderByQueryExecutionContext.js.map +1 -1
  548. package/dist/esm/queryExecutionContext/parallelQueryExecutionContext.d.ts +18 -10
  549. package/dist/esm/queryExecutionContext/parallelQueryExecutionContext.d.ts.map +1 -1
  550. package/dist/esm/queryExecutionContext/parallelQueryExecutionContext.js +47 -23
  551. package/dist/esm/queryExecutionContext/parallelQueryExecutionContext.js.map +1 -1
  552. package/dist/esm/queryExecutionContext/parallelQueryExecutionContextBase.d.ts +160 -26
  553. package/dist/esm/queryExecutionContext/parallelQueryExecutionContextBase.d.ts.map +1 -1
  554. package/dist/esm/queryExecutionContext/parallelQueryExecutionContextBase.js +453 -106
  555. package/dist/esm/queryExecutionContext/parallelQueryExecutionContextBase.js.map +1 -1
  556. package/dist/esm/queryExecutionContext/parallelQueryResult.d.ts +35 -0
  557. package/dist/esm/queryExecutionContext/parallelQueryResult.d.ts.map +1 -0
  558. package/dist/esm/queryExecutionContext/parallelQueryResult.js +23 -0
  559. package/dist/esm/queryExecutionContext/parallelQueryResult.js.map +1 -0
  560. package/dist/esm/queryExecutionContext/pipelinedQueryExecutionContext.d.ts +37 -7
  561. package/dist/esm/queryExecutionContext/pipelinedQueryExecutionContext.d.ts.map +1 -1
  562. package/dist/esm/queryExecutionContext/pipelinedQueryExecutionContext.js +173 -120
  563. package/dist/esm/queryExecutionContext/pipelinedQueryExecutionContext.js.map +1 -1
  564. package/dist/esm/queryExecutionContext/queryFilteringStrategy/FilterStrategy.d.ts +40 -0
  565. package/dist/esm/queryExecutionContext/queryFilteringStrategy/FilterStrategy.d.ts.map +1 -0
  566. package/dist/esm/queryExecutionContext/queryFilteringStrategy/FilterStrategy.js +4 -0
  567. package/dist/esm/queryExecutionContext/queryFilteringStrategy/FilterStrategy.js.map +1 -0
  568. package/dist/esm/queryExecutionContext/queryFilteringStrategy/OrderByQueryRangeStrategy.d.ts +49 -0
  569. package/dist/esm/queryExecutionContext/queryFilteringStrategy/OrderByQueryRangeStrategy.d.ts.map +1 -0
  570. package/dist/esm/queryExecutionContext/queryFilteringStrategy/OrderByQueryRangeStrategy.js +310 -0
  571. package/dist/esm/queryExecutionContext/queryFilteringStrategy/OrderByQueryRangeStrategy.js.map +1 -0
  572. package/dist/esm/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.d.ts +18 -0
  573. package/dist/esm/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.d.ts.map +1 -0
  574. package/dist/esm/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.js +102 -0
  575. package/dist/esm/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.js.map +1 -0
  576. package/dist/esm/queryExecutionContext/queryFilteringStrategy/RidSkipCountFilter.d.ts +51 -0
  577. package/dist/esm/queryExecutionContext/queryFilteringStrategy/RidSkipCountFilter.d.ts.map +1 -0
  578. package/dist/esm/queryExecutionContext/queryFilteringStrategy/RidSkipCountFilter.js +180 -0
  579. package/dist/esm/queryExecutionContext/queryFilteringStrategy/RidSkipCountFilter.js.map +1 -0
  580. package/dist/esm/queryExecutionContext/queryFilteringStrategy/TargetPartitionRangeManager.d.ts +76 -0
  581. package/dist/esm/queryExecutionContext/queryFilteringStrategy/TargetPartitionRangeManager.d.ts.map +1 -0
  582. package/dist/esm/queryExecutionContext/queryFilteringStrategy/TargetPartitionRangeManager.js +93 -0
  583. package/dist/esm/queryExecutionContext/queryFilteringStrategy/TargetPartitionRangeManager.js.map +1 -0
  584. package/dist/esm/queryExecutionContext/queryFilteringStrategy/TargetPartitionRangeStrategy.d.ts +30 -0
  585. package/dist/esm/queryExecutionContext/queryFilteringStrategy/TargetPartitionRangeStrategy.d.ts.map +1 -0
  586. package/dist/esm/queryExecutionContext/queryFilteringStrategy/TargetPartitionRangeStrategy.js +4 -0
  587. package/dist/esm/queryExecutionContext/queryFilteringStrategy/TargetPartitionRangeStrategy.js.map +1 -0
  588. package/dist/esm/queryExecutionContext/queryProcessingStrategy/OrderByQueryProcessingStrategy.d.ts +29 -0
  589. package/dist/esm/queryExecutionContext/queryProcessingStrategy/OrderByQueryProcessingStrategy.d.ts.map +1 -0
  590. package/dist/esm/queryExecutionContext/queryProcessingStrategy/OrderByQueryProcessingStrategy.js +53 -0
  591. package/dist/esm/queryExecutionContext/queryProcessingStrategy/OrderByQueryProcessingStrategy.js.map +1 -0
  592. package/dist/esm/queryExecutionContext/queryProcessingStrategy/ParallelQueryProcessingStrategy.d.ts +27 -0
  593. package/dist/esm/queryExecutionContext/queryProcessingStrategy/ParallelQueryProcessingStrategy.d.ts.map +1 -0
  594. package/dist/esm/queryExecutionContext/queryProcessingStrategy/ParallelQueryProcessingStrategy.js +34 -0
  595. package/dist/esm/queryExecutionContext/queryProcessingStrategy/ParallelQueryProcessingStrategy.js.map +1 -0
  596. package/dist/esm/queryExecutionContext/queryProcessingStrategy/QueryProcessingStrategy.d.ts +36 -0
  597. package/dist/esm/queryExecutionContext/queryProcessingStrategy/QueryProcessingStrategy.d.ts.map +1 -0
  598. package/dist/esm/queryExecutionContext/queryProcessingStrategy/QueryProcessingStrategy.js +4 -0
  599. package/dist/esm/queryExecutionContext/queryProcessingStrategy/QueryProcessingStrategy.js.map +1 -0
  600. package/dist/esm/queryExecutionContext/queryRangeMapping.d.ts +22 -0
  601. package/dist/esm/queryExecutionContext/queryRangeMapping.d.ts.map +1 -0
  602. package/dist/esm/queryExecutionContext/queryRangeMapping.js +4 -0
  603. package/dist/esm/queryExecutionContext/queryRangeMapping.js.map +1 -0
  604. package/dist/esm/queryIterator.js.map +1 -1
  605. package/dist/esm/request/RequestHandler.d.ts.map +1 -1
  606. package/dist/esm/request/RequestHandler.js +10 -4
  607. package/dist/esm/request/RequestHandler.js.map +1 -1
  608. package/dist/esm/utils/offers.d.ts.map +1 -1
  609. package/dist/esm/utils/offers.js +0 -1
  610. package/dist/esm/utils/offers.js.map +1 -1
  611. package/dist/react-native/CosmosClientOptions.d.ts +1 -1
  612. package/dist/react-native/CosmosClientOptions.js.map +1 -1
  613. package/dist/react-native/client/ChangeFeed/ChangeFeedForEpkRange.d.ts.map +1 -1
  614. package/dist/react-native/client/ChangeFeed/ChangeFeedForEpkRange.js +2 -34
  615. package/dist/react-native/client/ChangeFeed/ChangeFeedForEpkRange.js.map +1 -1
  616. package/dist/react-native/client/ChangeFeed/ChangeFeedForPartitionKey.d.ts.map +1 -1
  617. package/dist/react-native/client/ChangeFeed/ChangeFeedForPartitionKey.js +2 -35
  618. package/dist/react-native/client/ChangeFeed/ChangeFeedForPartitionKey.js.map +1 -1
  619. package/dist/react-native/client/ChangeFeed/ChangeFeedIteratorOptions.d.ts +15 -0
  620. package/dist/react-native/client/ChangeFeed/ChangeFeedIteratorOptions.d.ts.map +1 -1
  621. package/dist/react-native/client/ChangeFeed/ChangeFeedIteratorOptions.js.map +1 -1
  622. package/dist/react-native/client/ChangeFeed/InternalChangeFeedOptions.d.ts +3 -0
  623. package/dist/react-native/client/ChangeFeed/InternalChangeFeedOptions.d.ts.map +1 -1
  624. package/dist/react-native/client/ChangeFeed/InternalChangeFeedOptions.js.map +1 -1
  625. package/dist/react-native/client/ChangeFeed/changeFeedUtils.d.ts +6 -0
  626. package/dist/react-native/client/ChangeFeed/changeFeedUtils.d.ts.map +1 -1
  627. package/dist/react-native/client/ChangeFeed/changeFeedUtils.js +47 -0
  628. package/dist/react-native/client/ChangeFeed/changeFeedUtils.js.map +1 -1
  629. package/dist/react-native/common/constants.d.ts.map +1 -1
  630. package/dist/react-native/common/constants.js +16 -1
  631. package/dist/react-native/common/constants.js.map +1 -1
  632. package/dist/react-native/documents/ContinuationToken/CompositeQueryContinuationToken.d.ts +99 -0
  633. package/dist/react-native/documents/ContinuationToken/CompositeQueryContinuationToken.d.ts.map +1 -0
  634. package/dist/react-native/documents/ContinuationToken/CompositeQueryContinuationToken.js +84 -0
  635. package/dist/react-native/documents/ContinuationToken/CompositeQueryContinuationToken.js.map +1 -0
  636. package/dist/react-native/documents/ContinuationToken/OrderByQueryContinuationToken.d.ts +40 -0
  637. package/dist/react-native/documents/ContinuationToken/OrderByQueryContinuationToken.d.ts.map +1 -0
  638. package/dist/react-native/documents/ContinuationToken/OrderByQueryContinuationToken.js +39 -0
  639. package/dist/react-native/documents/ContinuationToken/OrderByQueryContinuationToken.js.map +1 -0
  640. package/dist/react-native/documents/ContinuationToken/PartitionRangeUpdate.d.ts +21 -0
  641. package/dist/react-native/documents/ContinuationToken/PartitionRangeUpdate.d.ts.map +1 -0
  642. package/dist/react-native/documents/ContinuationToken/PartitionRangeUpdate.js +4 -0
  643. package/dist/react-native/documents/ContinuationToken/PartitionRangeUpdate.js.map +1 -0
  644. package/dist/react-native/documents/VectorEmbeddingPolicy.d.ts +4 -0
  645. package/dist/react-native/documents/VectorEmbeddingPolicy.d.ts.map +1 -1
  646. package/dist/react-native/documents/VectorEmbeddingPolicy.js +4 -0
  647. package/dist/react-native/documents/VectorEmbeddingPolicy.js.map +1 -1
  648. package/dist/react-native/queryExecutionContext/Aggregators/MaxAggregator.d.ts.map +1 -1
  649. package/dist/react-native/queryExecutionContext/Aggregators/MaxAggregator.js +4 -0
  650. package/dist/react-native/queryExecutionContext/Aggregators/MaxAggregator.js.map +1 -1
  651. package/dist/react-native/queryExecutionContext/Aggregators/MinAggregator.d.ts.map +1 -1
  652. package/dist/react-native/queryExecutionContext/Aggregators/MinAggregator.js +4 -0
  653. package/dist/react-native/queryExecutionContext/Aggregators/MinAggregator.js.map +1 -1
  654. package/dist/react-native/queryExecutionContext/ContinuationTokenManager/BaseContinuationTokenManager.d.ts +2 -0
  655. package/dist/react-native/queryExecutionContext/ContinuationTokenManager/BaseContinuationTokenManager.d.ts.map +1 -0
  656. package/dist/react-native/queryExecutionContext/ContinuationTokenManager/BaseContinuationTokenManager.js +174 -0
  657. package/dist/react-native/queryExecutionContext/ContinuationTokenManager/BaseContinuationTokenManager.js.map +1 -0
  658. package/dist/react-native/queryExecutionContext/ContinuationTokenManager/ContinuationTokenManagerFactory.d.ts +2 -0
  659. package/dist/react-native/queryExecutionContext/ContinuationTokenManager/ContinuationTokenManagerFactory.d.ts.map +1 -0
  660. package/dist/react-native/queryExecutionContext/ContinuationTokenManager/ContinuationTokenManagerFactory.js +28 -0
  661. package/dist/react-native/queryExecutionContext/ContinuationTokenManager/ContinuationTokenManagerFactory.js.map +1 -0
  662. package/dist/react-native/queryExecutionContext/ContinuationTokenManager/OrderByQueryContinuationTokenManager.d.ts +2 -0
  663. package/dist/react-native/queryExecutionContext/ContinuationTokenManager/OrderByQueryContinuationTokenManager.d.ts.map +1 -0
  664. package/dist/react-native/queryExecutionContext/ContinuationTokenManager/OrderByQueryContinuationTokenManager.js +129 -0
  665. package/dist/react-native/queryExecutionContext/ContinuationTokenManager/OrderByQueryContinuationTokenManager.js.map +1 -0
  666. package/dist/react-native/queryExecutionContext/ContinuationTokenManager/ParallelQueryContinuationTokenManager.d.ts +2 -0
  667. package/dist/react-native/queryExecutionContext/ContinuationTokenManager/ParallelQueryContinuationTokenManager.d.ts.map +1 -0
  668. package/dist/react-native/queryExecutionContext/ContinuationTokenManager/ParallelQueryContinuationTokenManager.js +66 -0
  669. package/dist/react-native/queryExecutionContext/ContinuationTokenManager/ParallelQueryContinuationTokenManager.js.map +1 -0
  670. package/dist/react-native/queryExecutionContext/ContinuationTokenParser.d.ts +2 -0
  671. package/dist/react-native/queryExecutionContext/ContinuationTokenParser.d.ts.map +1 -0
  672. package/dist/react-native/queryExecutionContext/ContinuationTokenParser.js +23 -0
  673. package/dist/react-native/queryExecutionContext/ContinuationTokenParser.js.map +1 -0
  674. package/dist/react-native/queryExecutionContext/EndpointComponent/GroupByEndpointComponent.d.ts.map +1 -1
  675. package/dist/react-native/queryExecutionContext/EndpointComponent/GroupByEndpointComponent.js +22 -7
  676. package/dist/react-native/queryExecutionContext/EndpointComponent/GroupByEndpointComponent.js.map +1 -1
  677. package/dist/react-native/queryExecutionContext/EndpointComponent/GroupByValueEndpointComponent.d.ts.map +1 -1
  678. package/dist/react-native/queryExecutionContext/EndpointComponent/GroupByValueEndpointComponent.js +21 -5
  679. package/dist/react-native/queryExecutionContext/EndpointComponent/GroupByValueEndpointComponent.js.map +1 -1
  680. package/dist/react-native/queryExecutionContext/EndpointComponent/NonStreamingOrderByDistinctEndpointComponent.d.ts.map +1 -1
  681. package/dist/react-native/queryExecutionContext/EndpointComponent/NonStreamingOrderByDistinctEndpointComponent.js +28 -6
  682. package/dist/react-native/queryExecutionContext/EndpointComponent/NonStreamingOrderByDistinctEndpointComponent.js.map +1 -1
  683. package/dist/react-native/queryExecutionContext/EndpointComponent/NonStreamingOrderByEndpointComponent.d.ts.map +1 -1
  684. package/dist/react-native/queryExecutionContext/EndpointComponent/NonStreamingOrderByEndpointComponent.js +23 -7
  685. package/dist/react-native/queryExecutionContext/EndpointComponent/NonStreamingOrderByEndpointComponent.js.map +1 -1
  686. package/dist/react-native/queryExecutionContext/EndpointComponent/OffsetLimitEndpointComponent.d.ts.map +1 -1
  687. package/dist/react-native/queryExecutionContext/EndpointComponent/OffsetLimitEndpointComponent.js +35 -4
  688. package/dist/react-native/queryExecutionContext/EndpointComponent/OffsetLimitEndpointComponent.js.map +1 -1
  689. package/dist/react-native/queryExecutionContext/EndpointComponent/OrderByEndpointComponent.d.ts +1 -0
  690. package/dist/react-native/queryExecutionContext/EndpointComponent/OrderByEndpointComponent.d.ts.map +1 -1
  691. package/dist/react-native/queryExecutionContext/EndpointComponent/OrderByEndpointComponent.js +22 -4
  692. package/dist/react-native/queryExecutionContext/EndpointComponent/OrderByEndpointComponent.js.map +1 -1
  693. package/dist/react-native/queryExecutionContext/EndpointComponent/OrderedDistinctEndpointComponent.d.ts +1 -1
  694. package/dist/react-native/queryExecutionContext/EndpointComponent/OrderedDistinctEndpointComponent.d.ts.map +1 -1
  695. package/dist/react-native/queryExecutionContext/EndpointComponent/OrderedDistinctEndpointComponent.js +24 -5
  696. package/dist/react-native/queryExecutionContext/EndpointComponent/OrderedDistinctEndpointComponent.js.map +1 -1
  697. package/dist/react-native/queryExecutionContext/EndpointComponent/UnorderedDistinctEndpointComponent.d.ts.map +1 -1
  698. package/dist/react-native/queryExecutionContext/EndpointComponent/UnorderedDistinctEndpointComponent.js +18 -5
  699. package/dist/react-native/queryExecutionContext/EndpointComponent/UnorderedDistinctEndpointComponent.js.map +1 -1
  700. package/dist/react-native/queryExecutionContext/LegacyFetchImplementation.d.ts +14 -0
  701. package/dist/react-native/queryExecutionContext/LegacyFetchImplementation.d.ts.map +1 -0
  702. package/dist/react-native/queryExecutionContext/LegacyFetchImplementation.js +55 -0
  703. package/dist/react-native/queryExecutionContext/LegacyFetchImplementation.js.map +1 -0
  704. package/dist/react-native/queryExecutionContext/PartitionRangeManager.d.ts +73 -0
  705. package/dist/react-native/queryExecutionContext/PartitionRangeManager.d.ts.map +1 -0
  706. package/dist/react-native/queryExecutionContext/PartitionRangeManager.js +156 -0
  707. package/dist/react-native/queryExecutionContext/PartitionRangeManager.js.map +1 -0
  708. package/dist/react-native/queryExecutionContext/PartitionRangeUtils.d.ts +19 -0
  709. package/dist/react-native/queryExecutionContext/PartitionRangeUtils.d.ts.map +1 -0
  710. package/dist/react-native/queryExecutionContext/PartitionRangeUtils.js +105 -0
  711. package/dist/react-native/queryExecutionContext/PartitionRangeUtils.js.map +1 -0
  712. package/dist/react-native/queryExecutionContext/QueryControlFetchImplementation.d.ts +20 -0
  713. package/dist/react-native/queryExecutionContext/QueryControlFetchImplementation.d.ts.map +1 -0
  714. package/dist/react-native/queryExecutionContext/QueryControlFetchImplementation.js +93 -0
  715. package/dist/react-native/queryExecutionContext/QueryControlFetchImplementation.js.map +1 -0
  716. package/dist/react-native/queryExecutionContext/QueryValidationHelper.d.ts +9 -0
  717. package/dist/react-native/queryExecutionContext/QueryValidationHelper.d.ts.map +1 -0
  718. package/dist/react-native/queryExecutionContext/QueryValidationHelper.js +65 -0
  719. package/dist/react-native/queryExecutionContext/QueryValidationHelper.js.map +1 -0
  720. package/dist/react-native/queryExecutionContext/defaultQueryExecutionContext.d.ts +2 -2
  721. package/dist/react-native/queryExecutionContext/defaultQueryExecutionContext.d.ts.map +1 -1
  722. package/dist/react-native/queryExecutionContext/defaultQueryExecutionContext.js +2 -1
  723. package/dist/react-native/queryExecutionContext/defaultQueryExecutionContext.js.map +1 -1
  724. package/dist/react-native/queryExecutionContext/documentProducer.d.ts +9 -3
  725. package/dist/react-native/queryExecutionContext/documentProducer.d.ts.map +1 -1
  726. package/dist/react-native/queryExecutionContext/documentProducer.js +17 -4
  727. package/dist/react-native/queryExecutionContext/documentProducer.js.map +1 -1
  728. package/dist/react-native/queryExecutionContext/hybridQueryExecutionContext.d.ts +1 -1
  729. package/dist/react-native/queryExecutionContext/hybridQueryExecutionContext.d.ts.map +1 -1
  730. package/dist/react-native/queryExecutionContext/hybridQueryExecutionContext.js +18 -13
  731. package/dist/react-native/queryExecutionContext/hybridQueryExecutionContext.js.map +1 -1
  732. package/dist/react-native/queryExecutionContext/index.d.ts +7 -0
  733. package/dist/react-native/queryExecutionContext/index.d.ts.map +1 -1
  734. package/dist/react-native/queryExecutionContext/index.js +4 -0
  735. package/dist/react-native/queryExecutionContext/index.js.map +1 -1
  736. package/dist/react-native/queryExecutionContext/nonStreamingOrderByResult.d.ts +5 -1
  737. package/dist/react-native/queryExecutionContext/nonStreamingOrderByResult.d.ts.map +1 -1
  738. package/dist/react-native/queryExecutionContext/nonStreamingOrderByResult.js.map +1 -1
  739. package/dist/react-native/queryExecutionContext/orderByComparator.d.ts +11 -2
  740. package/dist/react-native/queryExecutionContext/orderByComparator.d.ts.map +1 -1
  741. package/dist/react-native/queryExecutionContext/orderByComparator.js +20 -3
  742. package/dist/react-native/queryExecutionContext/orderByComparator.js.map +1 -1
  743. package/dist/react-native/queryExecutionContext/orderByDocumentProducerComparator.d.ts +4 -0
  744. package/dist/react-native/queryExecutionContext/orderByDocumentProducerComparator.d.ts.map +1 -1
  745. package/dist/react-native/queryExecutionContext/orderByDocumentProducerComparator.js +18 -7
  746. package/dist/react-native/queryExecutionContext/orderByDocumentProducerComparator.js.map +1 -1
  747. package/dist/react-native/queryExecutionContext/orderByQueryExecutionContext.d.ts +7 -10
  748. package/dist/react-native/queryExecutionContext/orderByQueryExecutionContext.d.ts.map +1 -1
  749. package/dist/react-native/queryExecutionContext/orderByQueryExecutionContext.js +30 -23
  750. package/dist/react-native/queryExecutionContext/orderByQueryExecutionContext.js.map +1 -1
  751. package/dist/react-native/queryExecutionContext/parallelQueryExecutionContext.d.ts +18 -10
  752. package/dist/react-native/queryExecutionContext/parallelQueryExecutionContext.d.ts.map +1 -1
  753. package/dist/react-native/queryExecutionContext/parallelQueryExecutionContext.js +47 -23
  754. package/dist/react-native/queryExecutionContext/parallelQueryExecutionContext.js.map +1 -1
  755. package/dist/react-native/queryExecutionContext/parallelQueryExecutionContextBase.d.ts +160 -26
  756. package/dist/react-native/queryExecutionContext/parallelQueryExecutionContextBase.d.ts.map +1 -1
  757. package/dist/react-native/queryExecutionContext/parallelQueryExecutionContextBase.js +453 -106
  758. package/dist/react-native/queryExecutionContext/parallelQueryExecutionContextBase.js.map +1 -1
  759. package/dist/react-native/queryExecutionContext/parallelQueryResult.d.ts +35 -0
  760. package/dist/react-native/queryExecutionContext/parallelQueryResult.d.ts.map +1 -0
  761. package/dist/react-native/queryExecutionContext/parallelQueryResult.js +23 -0
  762. package/dist/react-native/queryExecutionContext/parallelQueryResult.js.map +1 -0
  763. package/dist/react-native/queryExecutionContext/pipelinedQueryExecutionContext.d.ts +37 -7
  764. package/dist/react-native/queryExecutionContext/pipelinedQueryExecutionContext.d.ts.map +1 -1
  765. package/dist/react-native/queryExecutionContext/pipelinedQueryExecutionContext.js +173 -120
  766. package/dist/react-native/queryExecutionContext/pipelinedQueryExecutionContext.js.map +1 -1
  767. package/dist/react-native/queryExecutionContext/queryFilteringStrategy/FilterStrategy.d.ts +40 -0
  768. package/dist/react-native/queryExecutionContext/queryFilteringStrategy/FilterStrategy.d.ts.map +1 -0
  769. package/dist/react-native/queryExecutionContext/queryFilteringStrategy/FilterStrategy.js +4 -0
  770. package/dist/react-native/queryExecutionContext/queryFilteringStrategy/FilterStrategy.js.map +1 -0
  771. package/dist/react-native/queryExecutionContext/queryFilteringStrategy/OrderByQueryRangeStrategy.d.ts +49 -0
  772. package/dist/react-native/queryExecutionContext/queryFilteringStrategy/OrderByQueryRangeStrategy.d.ts.map +1 -0
  773. package/dist/react-native/queryExecutionContext/queryFilteringStrategy/OrderByQueryRangeStrategy.js +310 -0
  774. package/dist/react-native/queryExecutionContext/queryFilteringStrategy/OrderByQueryRangeStrategy.js.map +1 -0
  775. package/dist/react-native/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.d.ts +18 -0
  776. package/dist/react-native/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.d.ts.map +1 -0
  777. package/dist/react-native/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.js +102 -0
  778. package/dist/react-native/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.js.map +1 -0
  779. package/dist/react-native/queryExecutionContext/queryFilteringStrategy/RidSkipCountFilter.d.ts +51 -0
  780. package/dist/react-native/queryExecutionContext/queryFilteringStrategy/RidSkipCountFilter.d.ts.map +1 -0
  781. package/dist/react-native/queryExecutionContext/queryFilteringStrategy/RidSkipCountFilter.js +180 -0
  782. package/dist/react-native/queryExecutionContext/queryFilteringStrategy/RidSkipCountFilter.js.map +1 -0
  783. package/dist/react-native/queryExecutionContext/queryFilteringStrategy/TargetPartitionRangeManager.d.ts +76 -0
  784. package/dist/react-native/queryExecutionContext/queryFilteringStrategy/TargetPartitionRangeManager.d.ts.map +1 -0
  785. package/dist/react-native/queryExecutionContext/queryFilteringStrategy/TargetPartitionRangeManager.js +93 -0
  786. package/dist/react-native/queryExecutionContext/queryFilteringStrategy/TargetPartitionRangeManager.js.map +1 -0
  787. package/dist/react-native/queryExecutionContext/queryFilteringStrategy/TargetPartitionRangeStrategy.d.ts +30 -0
  788. package/dist/react-native/queryExecutionContext/queryFilteringStrategy/TargetPartitionRangeStrategy.d.ts.map +1 -0
  789. package/dist/react-native/queryExecutionContext/queryFilteringStrategy/TargetPartitionRangeStrategy.js +4 -0
  790. package/dist/react-native/queryExecutionContext/queryFilteringStrategy/TargetPartitionRangeStrategy.js.map +1 -0
  791. package/dist/react-native/queryExecutionContext/queryProcessingStrategy/OrderByQueryProcessingStrategy.d.ts +29 -0
  792. package/dist/react-native/queryExecutionContext/queryProcessingStrategy/OrderByQueryProcessingStrategy.d.ts.map +1 -0
  793. package/dist/react-native/queryExecutionContext/queryProcessingStrategy/OrderByQueryProcessingStrategy.js +53 -0
  794. package/dist/react-native/queryExecutionContext/queryProcessingStrategy/OrderByQueryProcessingStrategy.js.map +1 -0
  795. package/dist/react-native/queryExecutionContext/queryProcessingStrategy/ParallelQueryProcessingStrategy.d.ts +27 -0
  796. package/dist/react-native/queryExecutionContext/queryProcessingStrategy/ParallelQueryProcessingStrategy.d.ts.map +1 -0
  797. package/dist/react-native/queryExecutionContext/queryProcessingStrategy/ParallelQueryProcessingStrategy.js +34 -0
  798. package/dist/react-native/queryExecutionContext/queryProcessingStrategy/ParallelQueryProcessingStrategy.js.map +1 -0
  799. package/dist/react-native/queryExecutionContext/queryProcessingStrategy/QueryProcessingStrategy.d.ts +36 -0
  800. package/dist/react-native/queryExecutionContext/queryProcessingStrategy/QueryProcessingStrategy.d.ts.map +1 -0
  801. package/dist/react-native/queryExecutionContext/queryProcessingStrategy/QueryProcessingStrategy.js +4 -0
  802. package/dist/react-native/queryExecutionContext/queryProcessingStrategy/QueryProcessingStrategy.js.map +1 -0
  803. package/dist/react-native/queryExecutionContext/queryRangeMapping.d.ts +22 -0
  804. package/dist/react-native/queryExecutionContext/queryRangeMapping.d.ts.map +1 -0
  805. package/dist/react-native/queryExecutionContext/queryRangeMapping.js +4 -0
  806. package/dist/react-native/queryExecutionContext/queryRangeMapping.js.map +1 -0
  807. package/dist/react-native/queryIterator.js.map +1 -1
  808. package/dist/react-native/request/RequestHandler.d.ts.map +1 -1
  809. package/dist/react-native/request/RequestHandler.js +10 -4
  810. package/dist/react-native/request/RequestHandler.js.map +1 -1
  811. package/dist/react-native/utils/offers.d.ts.map +1 -1
  812. package/dist/react-native/utils/offers.js +0 -1
  813. package/dist/react-native/utils/offers.js.map +1 -1
  814. package/package.json +23 -22
@@ -0,0 +1,178 @@
1
+ "use strict";
2
+ // Copyright (c) Microsoft Corporation.
3
+ // Licensed under the MIT License.
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.BaseContinuationTokenManager = void 0;
6
+ const CompositeQueryContinuationToken_js_1 = require("../../documents/ContinuationToken/CompositeQueryContinuationToken.js");
7
+ const PartitionRangeManager_js_1 = require("../PartitionRangeManager.js");
8
+ /**
9
+ * Base abstract class for continuation token management.
10
+ * Provides common functionality shared between parallel and ORDER BY query token managers.
11
+ * @internal
12
+ */
13
+ class BaseContinuationTokenManager {
14
+ ranges = [];
15
+ partitionRangeManager = new PartitionRangeManager_js_1.PartitionRangeManager();
16
+ constructor(initialContinuationToken) {
17
+ if (initialContinuationToken) {
18
+ const token = (0, CompositeQueryContinuationToken_js_1.parseBaseContinuationToken)(initialContinuationToken);
19
+ if (token?.rangeMappings) {
20
+ this.ranges = token.rangeMappings;
21
+ }
22
+ }
23
+ }
24
+ /**
25
+ * Provides controlled access to partition range manager for subclasses.
26
+ * This is the only protected access point needed.
27
+ */
28
+ get partitionManager() {
29
+ return this.partitionRangeManager;
30
+ }
31
+ /**
32
+ * Provides controlled access to ranges for subclasses.
33
+ * Made protected to allow subclass range management.
34
+ */
35
+ get rangeList() {
36
+ return this.ranges;
37
+ }
38
+ /**
39
+ * Processes query results and generates continuation tokens for pagination.
40
+ * Handles response data processing, range management, and token generation.
41
+ *
42
+ * @param pageSize - Maximum number of items to return in this page
43
+ * @param isResponseEmpty - Whether the current response contains no data
44
+ * @param responseResult - Optional response data containing partition mappings and query-specific data
45
+ * @returns Object containing the end index for slicing results and optional continuation token for next page
46
+ */
47
+ paginateResults(pageSize, isResponseEmpty, responseResult) {
48
+ // Process response data
49
+ if (responseResult) {
50
+ this.processResponseResult(responseResult);
51
+ }
52
+ this.removeExhaustedRangesFromRanges();
53
+ const result = this.processRangesForPagination(pageSize, isResponseEmpty);
54
+ const tokenString = this.generateContinuationTokenString();
55
+ // Clean up processed ranges
56
+ this.trimProcessedData(result.processedRanges, result.endIndex);
57
+ return {
58
+ endIndex: result.endIndex,
59
+ continuationToken: tokenString,
60
+ };
61
+ }
62
+ /**
63
+ * Generates continuation token string using the appropriate serialization function.
64
+ * This provides a common implementation that delegates to query-specific logic.
65
+ */
66
+ generateContinuationTokenString() {
67
+ const token = this.getCurrentContinuationToken();
68
+ if (!token) {
69
+ return undefined;
70
+ }
71
+ const serializeFunction = this.getSerializationFunction();
72
+ return serializeFunction(token);
73
+ }
74
+ /**
75
+ * Cleans up processed data after a page has been returned.
76
+ * Handles both common and query-specific cleanup.
77
+ */
78
+ trimProcessedData(processedRanges, endIndex) {
79
+ processedRanges.forEach((rangeId) => {
80
+ this.partitionRangeManager.removePartitionRangeMapping(rangeId);
81
+ });
82
+ // Delegate query-specific cleanup to subclass
83
+ this.performQuerySpecificDataTrim(processedRanges, endIndex);
84
+ }
85
+ addPartitionKeyRangeMap(partitionKeyRangeMap) {
86
+ this.partitionRangeManager.addPartitionKeyRangeMap(partitionKeyRangeMap);
87
+ }
88
+ /**
89
+ * Processes the entire response result and updates the continuation token manager state.
90
+ * This encapsulates all response handling logic in one place.
91
+ */
92
+ processResponseResult(responseResult) {
93
+ // Handle partition key range map
94
+ if (responseResult.partitionKeyRangeMap) {
95
+ this.addPartitionKeyRangeMap(responseResult.partitionKeyRangeMap);
96
+ }
97
+ // Handle partition range updates
98
+ if (responseResult.updatedContinuationRanges) {
99
+ this.handlePartitionRangeChanges(responseResult.updatedContinuationRanges);
100
+ }
101
+ this.processQuerySpecificResponse(responseResult);
102
+ }
103
+ isPartitionExhausted(continuationToken) {
104
+ return (!continuationToken ||
105
+ continuationToken === "" ||
106
+ continuationToken === "null" ||
107
+ continuationToken.toLowerCase() === "null");
108
+ }
109
+ removeExhaustedRangesFromRanges() {
110
+ if (!this.ranges || !Array.isArray(this.ranges)) {
111
+ return;
112
+ }
113
+ this.ranges = this.ranges.filter((mapping) => {
114
+ if (!mapping) {
115
+ return false;
116
+ }
117
+ const isExhausted = this.isPartitionExhausted(mapping.continuationToken);
118
+ return !isExhausted;
119
+ });
120
+ }
121
+ handlePartitionRangeChanges(updatedContinuationRanges) {
122
+ if (updatedContinuationRanges && Object.keys(updatedContinuationRanges).length === 0) {
123
+ return;
124
+ }
125
+ Object.entries(updatedContinuationRanges).forEach(([rangeKey, rangeChange]) => {
126
+ this.processRangeChange(rangeKey, rangeChange);
127
+ });
128
+ }
129
+ processRangeChange(_rangeKey, rangeChange) {
130
+ const { oldRange, newRanges, continuationToken } = rangeChange;
131
+ if (newRanges.length === 1) {
132
+ this.handleRangeMerge(oldRange, newRanges[0], continuationToken);
133
+ }
134
+ else {
135
+ this.handleRangeSplit(oldRange, newRanges, continuationToken);
136
+ }
137
+ }
138
+ handleRangeMerge(oldRange, newRange, continuationToken) {
139
+ // Find existing range mapping to update in the common ranges array
140
+ const existingMappingIndex = this.ranges.findIndex((mapping) => mapping.queryRange.min === oldRange.min && mapping.queryRange.max === oldRange.max);
141
+ if (existingMappingIndex < 0) {
142
+ return;
143
+ }
144
+ // Update existing mapping with new range properties
145
+ const existingMapping = this.ranges[existingMappingIndex];
146
+ // Create new simplified QueryRange with updated boundaries
147
+ const updatedQueryRange = {
148
+ min: newRange.min,
149
+ max: newRange.max,
150
+ };
151
+ // Update the mapping
152
+ existingMapping.queryRange = updatedQueryRange;
153
+ existingMapping.continuationToken = continuationToken;
154
+ }
155
+ handleRangeSplit(oldRange, newRanges, continuationToken) {
156
+ // Remove the old range mapping from the common ranges array
157
+ this.ranges = this.ranges.filter((mapping) => !(mapping.queryRange.min === oldRange.min && mapping.queryRange.max === oldRange.max));
158
+ // Add new range mappings for each split range
159
+ newRanges.forEach((newRange) => {
160
+ this.createNewRangeMapping(newRange, continuationToken);
161
+ });
162
+ }
163
+ createNewRangeMapping(partitionKeyRange, continuationToken) {
164
+ // Create new simplified QueryRange
165
+ const queryRange = {
166
+ min: partitionKeyRange.min,
167
+ max: partitionKeyRange.max,
168
+ };
169
+ // Create new QueryRangeWithContinuationToken
170
+ const newRangeWithToken = {
171
+ queryRange: queryRange,
172
+ continuationToken: continuationToken,
173
+ };
174
+ this.ranges.push(newRangeWithToken);
175
+ }
176
+ }
177
+ exports.BaseContinuationTokenManager = BaseContinuationTokenManager;
178
+ //# sourceMappingURL=BaseContinuationTokenManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BaseContinuationTokenManager.js","sourceRoot":"","sources":["../../../../src/queryExecutionContext/ContinuationTokenManager/BaseContinuationTokenManager.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { QueryRangeMapping } from \"../queryRangeMapping.js\";\nimport {\n parseBaseContinuationToken,\n type QueryRangeWithContinuationToken,\n type RangeBoundary,\n} from \"../../documents/ContinuationToken/CompositeQueryContinuationToken.js\";\nimport type {\n PartitionRangeUpdate,\n PartitionRangeUpdates,\n} from \"../../documents/ContinuationToken/PartitionRangeUpdate.js\";\nimport { PartitionRangeManager } from \"../PartitionRangeManager.js\";\nimport type { ParallelQueryResult } from \"../parallelQueryResult.js\";\n\n/**\n * Base abstract class for continuation token management.\n * Provides common functionality shared between parallel and ORDER BY query token managers.\n * @internal\n */\nexport abstract class BaseContinuationTokenManager {\n private ranges: QueryRangeWithContinuationToken[] = [];\n private readonly partitionRangeManager: PartitionRangeManager = new PartitionRangeManager();\n\n constructor(initialContinuationToken?: string) {\n if (initialContinuationToken) {\n const token = parseBaseContinuationToken(initialContinuationToken);\n if (token?.rangeMappings) {\n this.ranges = token.rangeMappings;\n }\n }\n }\n\n /**\n * Provides controlled access to partition range manager for subclasses.\n * This is the only protected access point needed.\n */\n protected get partitionManager(): PartitionRangeManager {\n return this.partitionRangeManager;\n }\n\n /**\n * Provides controlled access to ranges for subclasses.\n * Made protected to allow subclass range management.\n */\n protected get rangeList(): QueryRangeWithContinuationToken[] {\n return this.ranges;\n }\n\n /**\n * Gets the current continuation token for serialization.\n * Returns undefined if no token exists or query is exhausted.\n */\n protected abstract getCurrentContinuationToken(): any;\n\n /**\n * Processes query results and generates continuation tokens for pagination.\n * Handles response data processing, range management, and token generation.\n *\n * @param pageSize - Maximum number of items to return in this page\n * @param isResponseEmpty - Whether the current response contains no data\n * @param responseResult - Optional response data containing partition mappings and query-specific data\n * @returns Object containing the end index for slicing results and optional continuation token for next page\n */\n public paginateResults(\n pageSize: number,\n isResponseEmpty: boolean,\n responseResult?: ParallelQueryResult,\n ): {\n endIndex: number;\n continuationToken?: string;\n } {\n // Process response data\n if (responseResult) {\n this.processResponseResult(responseResult);\n }\n\n this.removeExhaustedRangesFromRanges();\n const result = this.processRangesForPagination(pageSize, isResponseEmpty);\n const tokenString = this.generateContinuationTokenString();\n\n // Clean up processed ranges\n this.trimProcessedData(result.processedRanges, result.endIndex);\n\n return {\n endIndex: result.endIndex,\n continuationToken: tokenString,\n };\n }\n\n protected abstract processRangesForPagination(\n pageSize: number,\n isResponseEmpty: boolean,\n ): {\n endIndex: number;\n processedRanges: string[];\n };\n\n protected abstract processQuerySpecificResponse(responseResult: ParallelQueryResult): void;\n protected abstract performQuerySpecificDataTrim(\n processedRanges: string[],\n endIndex: number,\n ): void;\n\n /**\n * Gets the serialization function for the specific continuation token type.\n */\n protected abstract getSerializationFunction(): (token: any) => string;\n\n /**\n * Generates continuation token string using the appropriate serialization function.\n * This provides a common implementation that delegates to query-specific logic.\n */\n private generateContinuationTokenString(): string | undefined {\n const token = this.getCurrentContinuationToken();\n if (!token) {\n return undefined;\n }\n\n const serializeFunction = this.getSerializationFunction();\n return serializeFunction(token);\n }\n\n /**\n * Cleans up processed data after a page has been returned.\n * Handles both common and query-specific cleanup.\n */\n private trimProcessedData(processedRanges: string[], endIndex: number): void {\n processedRanges.forEach((rangeId) => {\n this.partitionRangeManager.removePartitionRangeMapping(rangeId);\n });\n\n // Delegate query-specific cleanup to subclass\n this.performQuerySpecificDataTrim(processedRanges, endIndex);\n }\n\n private addPartitionKeyRangeMap(partitionKeyRangeMap: Map<string, QueryRangeMapping>): void {\n this.partitionRangeManager.addPartitionKeyRangeMap(partitionKeyRangeMap);\n }\n\n /**\n * Processes the entire response result and updates the continuation token manager state.\n * This encapsulates all response handling logic in one place.\n */\n private processResponseResult(responseResult: ParallelQueryResult): void {\n // Handle partition key range map\n if (responseResult.partitionKeyRangeMap) {\n this.addPartitionKeyRangeMap(responseResult.partitionKeyRangeMap);\n }\n\n // Handle partition range updates\n if (responseResult.updatedContinuationRanges) {\n this.handlePartitionRangeChanges(responseResult.updatedContinuationRanges);\n }\n\n this.processQuerySpecificResponse(responseResult);\n }\n\n private isPartitionExhausted(continuationToken: string | undefined): boolean {\n return (\n !continuationToken ||\n continuationToken === \"\" ||\n continuationToken === \"null\" ||\n continuationToken.toLowerCase() === \"null\"\n );\n }\n\n private removeExhaustedRangesFromRanges(): void {\n if (!this.ranges || !Array.isArray(this.ranges)) {\n return;\n }\n this.ranges = this.ranges.filter((mapping) => {\n if (!mapping) {\n return false;\n }\n const isExhausted = this.isPartitionExhausted(mapping.continuationToken);\n return !isExhausted;\n });\n }\n\n private handlePartitionRangeChanges(updatedContinuationRanges: PartitionRangeUpdates): void {\n if (updatedContinuationRanges && Object.keys(updatedContinuationRanges).length === 0) {\n return;\n }\n Object.entries(updatedContinuationRanges).forEach(([rangeKey, rangeChange]) => {\n this.processRangeChange(rangeKey, rangeChange);\n });\n }\n\n private processRangeChange(_rangeKey: string, rangeChange: PartitionRangeUpdate): void {\n const { oldRange, newRanges, continuationToken } = rangeChange;\n if (newRanges.length === 1) {\n this.handleRangeMerge(oldRange, newRanges[0], continuationToken);\n } else {\n this.handleRangeSplit(oldRange, newRanges, continuationToken);\n }\n }\n\n private handleRangeMerge(oldRange: any, newRange: any, continuationToken: string): void {\n // Find existing range mapping to update in the common ranges array\n const existingMappingIndex = this.ranges.findIndex(\n (mapping) =>\n mapping.queryRange.min === oldRange.min && mapping.queryRange.max === oldRange.max,\n );\n\n if (existingMappingIndex < 0) {\n return;\n }\n\n // Update existing mapping with new range properties\n const existingMapping = this.ranges[existingMappingIndex];\n\n // Create new simplified QueryRange with updated boundaries\n const updatedQueryRange: RangeBoundary = {\n min: newRange.min,\n max: newRange.max,\n };\n\n // Update the mapping\n existingMapping.queryRange = updatedQueryRange;\n existingMapping.continuationToken = continuationToken;\n }\n\n private handleRangeSplit(oldRange: any, newRanges: any[], continuationToken: string): void {\n // Remove the old range mapping from the common ranges array\n this.ranges = this.ranges.filter(\n (mapping) =>\n !(mapping.queryRange.min === oldRange.min && mapping.queryRange.max === oldRange.max),\n );\n\n // Add new range mappings for each split range\n newRanges.forEach((newRange) => {\n this.createNewRangeMapping(newRange, continuationToken);\n });\n }\n\n private createNewRangeMapping(partitionKeyRange: any, continuationToken: string): void {\n // Create new simplified QueryRange\n const queryRange: RangeBoundary = {\n min: partitionKeyRange.min,\n max: partitionKeyRange.max,\n };\n\n // Create new QueryRangeWithContinuationToken\n const newRangeWithToken: QueryRangeWithContinuationToken = {\n queryRange: queryRange,\n continuationToken: continuationToken,\n };\n\n this.ranges.push(newRangeWithToken);\n }\n}\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=ContinuationTokenManagerFactory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContinuationTokenManagerFactory.d.ts","sourceRoot":"","sources":["../../../../src/queryExecutionContext/ContinuationTokenManager/ContinuationTokenManagerFactory.ts"],"names":[],"mappings":""}
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ // Copyright (c) Microsoft Corporation.
3
+ // Licensed under the MIT License.
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.ContinuationTokenManagerFactory = void 0;
6
+ const ParallelQueryContinuationTokenManager_js_1 = require("./ParallelQueryContinuationTokenManager.js");
7
+ const OrderByQueryContinuationTokenManager_js_1 = require("./OrderByQueryContinuationTokenManager.js");
8
+ /**
9
+ * Factory for creating appropriate continuation token managers based on query type.
10
+ * @internal
11
+ */
12
+ exports.ContinuationTokenManagerFactory = {
13
+ /**
14
+ * Creates the appropriate continuation token manager based on query type.
15
+ * Only call this for queries that support continuation tokens.
16
+ * @param collectionLink - Collection link/RID
17
+ * @param initialContinuationToken - Optional initial continuation token
18
+ * @param isOrderByQuery - Whether this is an ORDER BY query
19
+ * @returns Appropriate continuation token manager instance
20
+ * @internal
21
+ */
22
+ create(collectionLink, initialContinuationToken, isOrderByQuery = false) {
23
+ if (isOrderByQuery) {
24
+ return new OrderByQueryContinuationTokenManager_js_1.OrderByQueryContinuationTokenManager(collectionLink, initialContinuationToken);
25
+ }
26
+ else {
27
+ return new ParallelQueryContinuationTokenManager_js_1.ParallelQueryContinuationTokenManager(collectionLink, initialContinuationToken);
28
+ }
29
+ },
30
+ };
31
+ //# sourceMappingURL=ContinuationTokenManagerFactory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContinuationTokenManagerFactory.js","sourceRoot":"","sources":["../../../../src/queryExecutionContext/ContinuationTokenManager/ContinuationTokenManagerFactory.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAGlC,yGAAmG;AACnG,uGAAiG;AAEjG;;;GAGG;AACU,QAAA,+BAA+B,GAAG;IAC7C;;;;;;;;OAQG;IACH,MAAM,CACJ,cAAsB,EACtB,wBAAiC,EACjC,iBAA0B,KAAK;QAE/B,IAAI,cAAc,EAAE,CAAC;YACnB,OAAO,IAAI,8EAAoC,CAAC,cAAc,EAAE,wBAAwB,CAAC,CAAC;QAC5F,CAAC;aAAM,CAAC;YACN,OAAO,IAAI,gFAAqC,CAAC,cAAc,EAAE,wBAAwB,CAAC,CAAC;QAC7F,CAAC;IACH,CAAC;CACF,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { BaseContinuationTokenManager } from \"./BaseContinuationTokenManager.js\";\nimport { ParallelQueryContinuationTokenManager } from \"./ParallelQueryContinuationTokenManager.js\";\nimport { OrderByQueryContinuationTokenManager } from \"./OrderByQueryContinuationTokenManager.js\";\n\n/**\n * Factory for creating appropriate continuation token managers based on query type.\n * @internal\n */\nexport const ContinuationTokenManagerFactory = {\n /**\n * Creates the appropriate continuation token manager based on query type.\n * Only call this for queries that support continuation tokens.\n * @param collectionLink - Collection link/RID\n * @param initialContinuationToken - Optional initial continuation token\n * @param isOrderByQuery - Whether this is an ORDER BY query\n * @returns Appropriate continuation token manager instance\n * @internal\n */\n create(\n collectionLink: string,\n initialContinuationToken?: string,\n isOrderByQuery: boolean = false,\n ): BaseContinuationTokenManager {\n if (isOrderByQuery) {\n return new OrderByQueryContinuationTokenManager(collectionLink, initialContinuationToken);\n } else {\n return new ParallelQueryContinuationTokenManager(collectionLink, initialContinuationToken);\n }\n },\n};\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=OrderByQueryContinuationTokenManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OrderByQueryContinuationTokenManager.d.ts","sourceRoot":"","sources":["../../../../src/queryExecutionContext/ContinuationTokenManager/OrderByQueryContinuationTokenManager.ts"],"names":[],"mappings":""}
@@ -0,0 +1,133 @@
1
+ "use strict";
2
+ // Copyright (c) Microsoft Corporation.
3
+ // Licensed under the MIT License.
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.OrderByQueryContinuationTokenManager = void 0;
6
+ const BaseContinuationTokenManager_js_1 = require("./BaseContinuationTokenManager.js");
7
+ const OrderByQueryContinuationToken_js_1 = require("../../documents/ContinuationToken/OrderByQueryContinuationToken.js");
8
+ const CompositeQueryContinuationToken_js_1 = require("../../documents/ContinuationToken/CompositeQueryContinuationToken.js");
9
+ /**
10
+ * Manages continuation tokens for ORDER BY queries using single-range sequential processing.
11
+ * Uses OrderByQueryContinuationToken for tracking ORDER BY items and skip counts.
12
+ * @internal
13
+ */
14
+ class OrderByQueryContinuationTokenManager extends BaseContinuationTokenManager_js_1.BaseContinuationTokenManager {
15
+ continuationToken;
16
+ orderByItemsArray;
17
+ collectionLink;
18
+ constructor(collectionLink, initialContinuationToken) {
19
+ super(initialContinuationToken);
20
+ this.collectionLink = collectionLink;
21
+ this.orderByItemsArray = [];
22
+ if (initialContinuationToken) {
23
+ this.continuationToken = (0, OrderByQueryContinuationToken_js_1.parseOrderByQueryContinuationToken)(initialContinuationToken);
24
+ }
25
+ }
26
+ processQuerySpecificResponse(responseResult) {
27
+ // Clear existing items and add new ones without reassigning the array reference
28
+ this.orderByItemsArray.length = 0;
29
+ if (responseResult.orderByItems) {
30
+ this.orderByItemsArray.push(...responseResult.orderByItems);
31
+ }
32
+ }
33
+ performQuerySpecificDataTrim(_processedRanges, endIndex) {
34
+ this.sliceOrderByItemsArray(endIndex);
35
+ }
36
+ sliceOrderByItemsArray(endIndex) {
37
+ if (endIndex === 0 || endIndex >= this.orderByItemsArray.length) {
38
+ // Clear the array without reassigning
39
+ this.orderByItemsArray.length = 0;
40
+ }
41
+ else {
42
+ // Remove items from 0 to endIndex-1, keeping items from endIndex onwards
43
+ this.orderByItemsArray.splice(0, endIndex);
44
+ }
45
+ }
46
+ processRangesForPagination(pageSize, isResponseEmpty = false) {
47
+ // Handle empty response case - update the previous valid continuation token
48
+ if (isResponseEmpty && this.continuationToken) {
49
+ let rangeProcessingResult;
50
+ if (this.rangeList.length === 0) {
51
+ rangeProcessingResult = this.partitionManager.processOrderByRanges(pageSize);
52
+ }
53
+ else {
54
+ rangeProcessingResult = this.partitionManager.processEmptyOrderByRanges(this.rangeList);
55
+ }
56
+ const { lastRangeBeforePageLimit } = rangeProcessingResult;
57
+ if (lastRangeBeforePageLimit) {
58
+ // Use the range matching the continuation token for empty response
59
+ this.continuationToken.rangeMappings = [
60
+ (0, CompositeQueryContinuationToken_js_1.convertRangeMappingToQueryRange)(lastRangeBeforePageLimit),
61
+ ];
62
+ }
63
+ else {
64
+ // Range is exhausted - clear the continuation token
65
+ this.continuationToken = undefined;
66
+ }
67
+ return {
68
+ endIndex: rangeProcessingResult.endIndex,
69
+ processedRanges: rangeProcessingResult.processedRanges,
70
+ };
71
+ }
72
+ // Normal processing path - handle non-empty responses
73
+ const rangeProcessingResult = this.partitionManager.processOrderByRanges(pageSize);
74
+ const { lastRangeBeforePageLimit } = rangeProcessingResult;
75
+ // Check if we have a valid range to continue with
76
+ if (!lastRangeBeforePageLimit) {
77
+ this.continuationToken = undefined;
78
+ return {
79
+ endIndex: rangeProcessingResult.endIndex,
80
+ processedRanges: rangeProcessingResult.processedRanges,
81
+ };
82
+ }
83
+ const queryRange = (0, CompositeQueryContinuationToken_js_1.convertRangeMappingToQueryRange)(lastRangeBeforePageLimit);
84
+ // Extract ORDER BY items from the last item on the page
85
+ let lastOrderByItems;
86
+ let documentRid;
87
+ let skipCount = 0;
88
+ if (rangeProcessingResult.endIndex > 0 && this.orderByItemsArray.length > 0) {
89
+ const lastItemIndexOnPage = rangeProcessingResult.endIndex - 1;
90
+ if (lastItemIndexOnPage < this.orderByItemsArray.length) {
91
+ lastOrderByItems = this.orderByItemsArray[lastItemIndexOnPage].orderByItems;
92
+ documentRid = this.orderByItemsArray[lastItemIndexOnPage]._rid;
93
+ // Calculate skip count: count how many documents in the page have the same RID
94
+ // This handles JOIN queries where multiple documents can have the same RID
95
+ skipCount = 0;
96
+ for (let i = 0; i <= lastItemIndexOnPage; i++) {
97
+ if (this.orderByItemsArray[i]._rid === documentRid) {
98
+ skipCount++;
99
+ }
100
+ }
101
+ }
102
+ }
103
+ // If we don't have valid ORDER BY items, we cannot create a proper continuation token
104
+ // This can happen when the response doesn't contain ORDER BY metadata or when there are no results
105
+ if (!lastOrderByItems || lastOrderByItems.length === 0) {
106
+ this.continuationToken = undefined;
107
+ return {
108
+ endIndex: rangeProcessingResult.endIndex,
109
+ processedRanges: rangeProcessingResult.processedRanges,
110
+ };
111
+ }
112
+ const rangeMappings = [queryRange];
113
+ // Create new ORDER BY continuation token
114
+ this.continuationToken = (0, OrderByQueryContinuationToken_js_1.createOrderByQueryContinuationToken)(rangeMappings, lastOrderByItems, this.collectionLink, // Container RID/link
115
+ skipCount, // Number of documents with the same RID already processed
116
+ documentRid, // Document RID from the last item in the page
117
+ lastRangeBeforePageLimit.offset, // Current offset for OFFSET/LIMIT queries
118
+ lastRangeBeforePageLimit.limit, // Current limit for OFFSET/LIMIT queries
119
+ lastRangeBeforePageLimit.hashedLastResult);
120
+ return {
121
+ endIndex: rangeProcessingResult.endIndex,
122
+ processedRanges: rangeProcessingResult.processedRanges,
123
+ };
124
+ }
125
+ getCurrentContinuationToken() {
126
+ return this.continuationToken;
127
+ }
128
+ getSerializationFunction() {
129
+ return OrderByQueryContinuationToken_js_1.serializeOrderByQueryContinuationToken;
130
+ }
131
+ }
132
+ exports.OrderByQueryContinuationTokenManager = OrderByQueryContinuationTokenManager;
133
+ //# sourceMappingURL=OrderByQueryContinuationTokenManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OrderByQueryContinuationTokenManager.js","sourceRoot":"","sources":["../../../../src/queryExecutionContext/ContinuationTokenManager/OrderByQueryContinuationTokenManager.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { BaseContinuationTokenManager } from \"./BaseContinuationTokenManager.js\";\nimport type { ParallelQueryResult, OrderByItemWithRid } from \"../parallelQueryResult.js\";\nimport type { OrderByQueryContinuationToken } from \"../../documents/ContinuationToken/OrderByQueryContinuationToken.js\";\nimport {\n createOrderByQueryContinuationToken,\n parseOrderByQueryContinuationToken,\n serializeOrderByQueryContinuationToken,\n} from \"../../documents/ContinuationToken/OrderByQueryContinuationToken.js\";\nimport { convertRangeMappingToQueryRange } from \"../../documents/ContinuationToken/CompositeQueryContinuationToken.js\";\n\n/**\n * Manages continuation tokens for ORDER BY queries using single-range sequential processing.\n * Uses OrderByQueryContinuationToken for tracking ORDER BY items and skip counts.\n * @internal\n */\nexport class OrderByQueryContinuationTokenManager extends BaseContinuationTokenManager {\n private continuationToken: OrderByQueryContinuationToken | undefined;\n private readonly orderByItemsArray: OrderByItemWithRid[];\n private readonly collectionLink: string;\n\n constructor(collectionLink: string, initialContinuationToken?: string) {\n super(initialContinuationToken);\n this.collectionLink = collectionLink;\n this.orderByItemsArray = [];\n if (initialContinuationToken) {\n this.continuationToken = parseOrderByQueryContinuationToken(initialContinuationToken);\n }\n }\n\n protected processQuerySpecificResponse(responseResult: ParallelQueryResult): void {\n // Clear existing items and add new ones without reassigning the array reference\n this.orderByItemsArray.length = 0;\n if (responseResult.orderByItems) {\n this.orderByItemsArray.push(...responseResult.orderByItems);\n }\n }\n\n protected performQuerySpecificDataTrim(_processedRanges: string[], endIndex: number): void {\n this.sliceOrderByItemsArray(endIndex);\n }\n\n private sliceOrderByItemsArray(endIndex: number): void {\n if (endIndex === 0 || endIndex >= this.orderByItemsArray.length) {\n // Clear the array without reassigning\n this.orderByItemsArray.length = 0;\n } else {\n // Remove items from 0 to endIndex-1, keeping items from endIndex onwards\n this.orderByItemsArray.splice(0, endIndex);\n }\n }\n\n protected processRangesForPagination(\n pageSize: number,\n isResponseEmpty: boolean = false,\n ): { endIndex: number; processedRanges: string[] } {\n // Handle empty response case - update the previous valid continuation token\n if (isResponseEmpty && this.continuationToken) {\n let rangeProcessingResult;\n\n if (this.rangeList.length === 0) {\n rangeProcessingResult = this.partitionManager.processOrderByRanges(pageSize);\n } else {\n rangeProcessingResult = this.partitionManager.processEmptyOrderByRanges(this.rangeList);\n }\n\n const { lastRangeBeforePageLimit } = rangeProcessingResult;\n if (lastRangeBeforePageLimit) {\n // Use the range matching the continuation token for empty response\n this.continuationToken.rangeMappings = [\n convertRangeMappingToQueryRange(lastRangeBeforePageLimit),\n ];\n } else {\n // Range is exhausted - clear the continuation token\n this.continuationToken = undefined;\n }\n return {\n endIndex: rangeProcessingResult.endIndex,\n processedRanges: rangeProcessingResult.processedRanges,\n };\n }\n\n // Normal processing path - handle non-empty responses\n const rangeProcessingResult = this.partitionManager.processOrderByRanges(pageSize);\n const { lastRangeBeforePageLimit } = rangeProcessingResult;\n\n // Check if we have a valid range to continue with\n if (!lastRangeBeforePageLimit) {\n this.continuationToken = undefined;\n return {\n endIndex: rangeProcessingResult.endIndex,\n processedRanges: rangeProcessingResult.processedRanges,\n };\n }\n\n const queryRange = convertRangeMappingToQueryRange(lastRangeBeforePageLimit);\n\n // Extract ORDER BY items from the last item on the page\n let lastOrderByItems: any[] | undefined;\n let documentRid: string;\n let skipCount: number = 0;\n if (rangeProcessingResult.endIndex > 0 && this.orderByItemsArray.length > 0) {\n const lastItemIndexOnPage = rangeProcessingResult.endIndex - 1;\n\n if (lastItemIndexOnPage < this.orderByItemsArray.length) {\n lastOrderByItems = this.orderByItemsArray[lastItemIndexOnPage].orderByItems;\n documentRid = this.orderByItemsArray[lastItemIndexOnPage]._rid;\n // Calculate skip count: count how many documents in the page have the same RID\n // This handles JOIN queries where multiple documents can have the same RID\n skipCount = 0;\n for (let i = 0; i <= lastItemIndexOnPage; i++) {\n if (this.orderByItemsArray[i]._rid === documentRid) {\n skipCount++;\n }\n }\n }\n }\n\n // If we don't have valid ORDER BY items, we cannot create a proper continuation token\n // This can happen when the response doesn't contain ORDER BY metadata or when there are no results\n if (!lastOrderByItems || lastOrderByItems.length === 0) {\n this.continuationToken = undefined;\n return {\n endIndex: rangeProcessingResult.endIndex,\n processedRanges: rangeProcessingResult.processedRanges,\n };\n }\n\n const rangeMappings = [queryRange];\n\n // Create new ORDER BY continuation token\n this.continuationToken = createOrderByQueryContinuationToken(\n rangeMappings,\n lastOrderByItems,\n this.collectionLink, // Container RID/link\n skipCount, // Number of documents with the same RID already processed\n documentRid, // Document RID from the last item in the page\n lastRangeBeforePageLimit.offset, // Current offset for OFFSET/LIMIT queries\n lastRangeBeforePageLimit.limit, // Current limit for OFFSET/LIMIT queries\n lastRangeBeforePageLimit.hashedLastResult, // Hash for distinct queries\n );\n\n return {\n endIndex: rangeProcessingResult.endIndex,\n processedRanges: rangeProcessingResult.processedRanges,\n };\n }\n\n protected getCurrentContinuationToken(): OrderByQueryContinuationToken | undefined {\n return this.continuationToken;\n }\n\n protected getSerializationFunction(): (token: OrderByQueryContinuationToken) => string {\n return serializeOrderByQueryContinuationToken;\n }\n}\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=ParallelQueryContinuationTokenManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ParallelQueryContinuationTokenManager.d.ts","sourceRoot":"","sources":["../../../../src/queryExecutionContext/ContinuationTokenManager/ParallelQueryContinuationTokenManager.ts"],"names":[],"mappings":""}
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+ // Copyright (c) Microsoft Corporation.
3
+ // Licensed under the MIT License.
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.ParallelQueryContinuationTokenManager = void 0;
6
+ const BaseContinuationTokenManager_js_1 = require("./BaseContinuationTokenManager.js");
7
+ const CompositeQueryContinuationToken_js_1 = require("../../documents/ContinuationToken/CompositeQueryContinuationToken.js");
8
+ /**
9
+ * Manages continuation tokens for parallel queries using multi-range aggregation.
10
+ * Uses CompositeQueryContinuationToken for range tracking across multiple partitions.
11
+ * @internal
12
+ */
13
+ class ParallelQueryContinuationTokenManager extends BaseContinuationTokenManager_js_1.BaseContinuationTokenManager {
14
+ continuationToken;
15
+ collectionLink;
16
+ constructor(collectionLink, initialContinuationToken) {
17
+ super(initialContinuationToken);
18
+ this.collectionLink = collectionLink;
19
+ if (initialContinuationToken) {
20
+ this.continuationToken = (0, CompositeQueryContinuationToken_js_1.parseCompositeQueryContinuationToken)(initialContinuationToken);
21
+ }
22
+ }
23
+ processRangesForPagination(pageSize, _isResponseEmpty) {
24
+ const result = this.partitionManager.processParallelRanges(pageSize);
25
+ if (!result || !result.processedRangeMappings || result.processedRangeMappings.length === 0) {
26
+ return { endIndex: 0, processedRanges: [] };
27
+ }
28
+ const rangeMappings = result.processedRangeMappings.map((mapping) => (0, CompositeQueryContinuationToken_js_1.convertRangeMappingToQueryRange)(mapping));
29
+ if (!this.continuationToken) {
30
+ this.continuationToken = (0, CompositeQueryContinuationToken_js_1.createCompositeQueryContinuationToken)(this.collectionLink, rangeMappings);
31
+ }
32
+ else {
33
+ this.updateExistingCompositeContinuationToken(rangeMappings);
34
+ }
35
+ if (result.lastPartitionBeforeCutoff && result.lastPartitionBeforeCutoff.mapping) {
36
+ this.continuationToken.offset = result.lastPartitionBeforeCutoff.mapping.offset;
37
+ this.continuationToken.limit = result.lastPartitionBeforeCutoff.mapping.limit;
38
+ }
39
+ return { endIndex: result.endIndex, processedRanges: result.processedRanges };
40
+ }
41
+ getCurrentContinuationToken() {
42
+ return this.continuationToken;
43
+ }
44
+ getSerializationFunction() {
45
+ return CompositeQueryContinuationToken_js_1.serializeCompositeToken;
46
+ }
47
+ processQuerySpecificResponse(_responseResult) {
48
+ // Parallel queries don't need additional response processing
49
+ }
50
+ performQuerySpecificDataTrim(_processedRanges, _endIndex) {
51
+ // Parallel queries don't need additional cleanup
52
+ }
53
+ updateExistingCompositeContinuationToken(rangeMappings) {
54
+ for (const newRange of rangeMappings) {
55
+ // Check if this range already exists in the token
56
+ const existingRangeIndex = this.continuationToken.rangeMappings.findIndex((existingRange) => existingRange.queryRange.min === newRange.queryRange.min &&
57
+ existingRange.queryRange.max === newRange.queryRange.max);
58
+ if (existingRangeIndex >= 0) {
59
+ // Range exists - update the continuation token
60
+ this.continuationToken.rangeMappings[existingRangeIndex] = newRange;
61
+ }
62
+ else {
63
+ // New range - add to the rangeMappings array
64
+ this.continuationToken.rangeMappings.push(newRange);
65
+ }
66
+ }
67
+ }
68
+ }
69
+ exports.ParallelQueryContinuationTokenManager = ParallelQueryContinuationTokenManager;
70
+ //# sourceMappingURL=ParallelQueryContinuationTokenManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ParallelQueryContinuationTokenManager.js","sourceRoot":"","sources":["../../../../src/queryExecutionContext/ContinuationTokenManager/ParallelQueryContinuationTokenManager.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { BaseContinuationTokenManager } from \"./BaseContinuationTokenManager.js\";\nimport type { ParallelQueryResult } from \"../parallelQueryResult.js\";\nimport type {\n CompositeQueryContinuationToken,\n QueryRangeWithContinuationToken,\n} from \"../../documents/ContinuationToken/CompositeQueryContinuationToken.js\";\nimport {\n createCompositeQueryContinuationToken,\n serializeCompositeToken,\n parseCompositeQueryContinuationToken,\n convertRangeMappingToQueryRange,\n} from \"../../documents/ContinuationToken/CompositeQueryContinuationToken.js\";\nimport type { QueryRangeMapping } from \"../queryRangeMapping.js\";\n\n/**\n * Manages continuation tokens for parallel queries using multi-range aggregation.\n * Uses CompositeQueryContinuationToken for range tracking across multiple partitions.\n * @internal\n */\nexport class ParallelQueryContinuationTokenManager extends BaseContinuationTokenManager {\n private continuationToken: CompositeQueryContinuationToken | undefined;\n private readonly collectionLink: string;\n\n constructor(collectionLink: string, initialContinuationToken?: string) {\n super(initialContinuationToken);\n this.collectionLink = collectionLink;\n if (initialContinuationToken) {\n this.continuationToken = parseCompositeQueryContinuationToken(initialContinuationToken);\n }\n }\n\n protected processRangesForPagination(\n pageSize: number,\n _isResponseEmpty: boolean,\n ): { endIndex: number; processedRanges: string[] } {\n const result = this.partitionManager.processParallelRanges(pageSize);\n if (!result || !result.processedRangeMappings || result.processedRangeMappings.length === 0) {\n return { endIndex: 0, processedRanges: [] };\n }\n\n const rangeMappings: QueryRangeWithContinuationToken[] = result.processedRangeMappings.map(\n (mapping: QueryRangeMapping) => convertRangeMappingToQueryRange(mapping),\n );\n\n if (!this.continuationToken) {\n this.continuationToken = createCompositeQueryContinuationToken(\n this.collectionLink,\n rangeMappings,\n );\n } else {\n this.updateExistingCompositeContinuationToken(rangeMappings);\n }\n\n if (result.lastPartitionBeforeCutoff && result.lastPartitionBeforeCutoff.mapping) {\n this.continuationToken!.offset = result.lastPartitionBeforeCutoff.mapping.offset;\n this.continuationToken!.limit = result.lastPartitionBeforeCutoff.mapping.limit;\n }\n return { endIndex: result.endIndex, processedRanges: result.processedRanges };\n }\n\n protected getCurrentContinuationToken(): CompositeQueryContinuationToken | undefined {\n return this.continuationToken;\n }\n\n protected getSerializationFunction(): (token: CompositeQueryContinuationToken) => string {\n return serializeCompositeToken;\n }\n\n protected processQuerySpecificResponse(_responseResult: ParallelQueryResult): void {\n // Parallel queries don't need additional response processing\n }\n\n protected performQuerySpecificDataTrim(_processedRanges: string[], _endIndex: number): void {\n // Parallel queries don't need additional cleanup\n }\n\n private updateExistingCompositeContinuationToken(\n rangeMappings: QueryRangeWithContinuationToken[],\n ): void {\n for (const newRange of rangeMappings) {\n // Check if this range already exists in the token\n const existingRangeIndex = this.continuationToken!.rangeMappings.findIndex(\n (existingRange) =>\n existingRange.queryRange.min === newRange.queryRange.min &&\n existingRange.queryRange.max === newRange.queryRange.max,\n );\n\n if (existingRangeIndex >= 0) {\n // Range exists - update the continuation token\n this.continuationToken!.rangeMappings[existingRangeIndex] = newRange;\n } else {\n // New range - add to the rangeMappings array\n this.continuationToken!.rangeMappings.push(newRange);\n }\n }\n }\n}\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=ContinuationTokenParser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContinuationTokenParser.d.ts","sourceRoot":"","sources":["../../../src/queryExecutionContext/ContinuationTokenParser.ts"],"names":[],"mappings":""}
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ // Copyright (c) Microsoft Corporation.
3
+ // Licensed under the MIT License.
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.parseContinuationTokenFields = parseContinuationTokenFields;
6
+ /**
7
+ * Parses a continuation token string to extract specific fields without full deserialization
8
+ * Supports both CompositeQueryContinuationToken and OrderByQueryContinuationToken formats
9
+ * @param continuationToken - The continuation token string to parse
10
+ * @returns Object containing offset, limit, and hashedLastResult if present
11
+ * @internal
12
+ */
13
+ function parseContinuationTokenFields(continuationToken) {
14
+ try {
15
+ const parsed = JSON.parse(continuationToken);
16
+ return {
17
+ offset: parsed.offset,
18
+ limit: parsed.limit,
19
+ hashedLastResult: parsed.hashedLastResult,
20
+ };
21
+ }
22
+ catch (error) {
23
+ throw new Error(`Failed to parse continuation token: ${error instanceof Error ? error.message : String(error)}`);
24
+ }
25
+ }
26
+ //# sourceMappingURL=ContinuationTokenParser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContinuationTokenParser.js","sourceRoot":"","sources":["../../../src/queryExecutionContext/ContinuationTokenParser.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;AAmBlC,oEAcC;AArBD;;;;;;GAMG;AACH,SAAgB,4BAA4B,CAAC,iBAAyB;IACpE,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;QAE7C,OAAO;YACL,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;SAC1C,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CACb,uCAAuC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAChG,CAAC;IACJ,CAAC;AACH,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n/**\n * Lightweight interface for continuation token fields needed by pipeline\n * @internal\n */\nexport interface ContinuationTokenFields {\n offset?: number;\n limit?: number;\n hashedLastResult?: string;\n}\n\n/**\n * Parses a continuation token string to extract specific fields without full deserialization\n * Supports both CompositeQueryContinuationToken and OrderByQueryContinuationToken formats\n * @param continuationToken - The continuation token string to parse\n * @returns Object containing offset, limit, and hashedLastResult if present\n * @internal\n */\nexport function parseContinuationTokenFields(continuationToken: string): ContinuationTokenFields {\n try {\n const parsed = JSON.parse(continuationToken);\n\n return {\n offset: parsed.offset,\n limit: parsed.limit,\n hashedLastResult: parsed.hashedLastResult,\n };\n } catch (error) {\n throw new Error(\n `Failed to parse continuation token: ${error instanceof Error ? error.message : String(error)}`,\n );\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"GroupByEndpointComponent.d.ts","sourceRoot":"","sources":["../../../../src/queryExecutionContext/EndpointComponent/GroupByEndpointComponent.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAMhE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AAO1F,cAAc;AACd,qBAAa,wBAAyB,YAAW,gBAAgB;IAE7D,OAAO,CAAC,gBAAgB;IACxB,OAAO,CAAC,SAAS;gBADT,gBAAgB,EAAE,gBAAgB,EAClC,SAAS,EAAE,SAAS;IAG9B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAmD;IAC7E,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAa;IAClD,OAAO,CAAC,SAAS,CAAkB;IAE5B,cAAc,IAAI,OAAO;IAInB,SAAS,CAAC,cAAc,EAAE,sBAAsB,GAAG,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IAkEtF,OAAO,CAAC,uBAAuB;CAWhC"}
1
+ {"version":3,"file":"GroupByEndpointComponent.d.ts","sourceRoot":"","sources":["../../../../src/queryExecutionContext/EndpointComponent/GroupByEndpointComponent.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAMhE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AAS1F,cAAc;AACd,qBAAa,wBAAyB,YAAW,gBAAgB;IAE7D,OAAO,CAAC,gBAAgB;IACxB,OAAO,CAAC,SAAS;gBADT,gBAAgB,EAAE,gBAAgB,EAClC,SAAS,EAAE,SAAS;IAG9B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAmD;IAC7E,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAa;IAClD,OAAO,CAAC,SAAS,CAAkB;IAE5B,cAAc,IAAI,OAAO;IAInB,SAAS,CAAC,cAAc,EAAE,sBAAsB,GAAG,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IAsFtF,OAAO,CAAC,uBAAuB;CAehC"}
@@ -5,6 +5,7 @@ const hashObject_js_1 = require("../../utils/hashObject.js");
5
5
  const index_js_1 = require("../Aggregators/index.js");
6
6
  const headerUtils_js_1 = require("../headerUtils.js");
7
7
  const emptyGroup_js_1 = require("./emptyGroup.js");
8
+ const parallelQueryResult_js_1 = require("../parallelQueryResult.js");
8
9
  /** @hidden */
9
10
  class GroupByEndpointComponent {
10
11
  executionContext;
@@ -28,15 +29,27 @@ class GroupByEndpointComponent {
28
29
  }
29
30
  const aggregateHeaders = (0, headerUtils_js_1.getInitialHeader)();
30
31
  const response = await this.executionContext.fetchMore(diagnosticNode);
32
+ if (!response) {
33
+ // If there are any groupings, consolidate and return them
34
+ if (this.groupings.size > 0) {
35
+ return this.consolidateGroupResults(aggregateHeaders);
36
+ }
37
+ return { result: undefined, headers: aggregateHeaders };
38
+ }
31
39
  (0, headerUtils_js_1.mergeHeaders)(aggregateHeaders, response.headers);
32
- if (response === undefined || response.result === undefined) {
40
+ if (response.result === undefined ||
41
+ !Array.isArray(response.result.buffer) ||
42
+ response.result.buffer.length === 0) {
33
43
  // If there are any groupings, consolidate and return them
34
44
  if (this.groupings.size > 0) {
35
45
  return this.consolidateGroupResults(aggregateHeaders);
36
46
  }
37
47
  return { result: undefined, headers: aggregateHeaders };
38
48
  }
39
- for (const item of response.result) {
49
+ const parallelResult = response.result;
50
+ const dataToProcess = parallelResult.buffer;
51
+ // Process GROUP BY aggregation logic
52
+ for (const item of dataToProcess) {
40
53
  // If it exists, process it via aggregators
41
54
  if (item) {
42
55
  const group = item.groupByItems ? await (0, hashObject_js_1.hashObject)(item.groupByItems) : emptyGroup_js_1.emptyGroup;
@@ -75,10 +88,10 @@ class GroupByEndpointComponent {
75
88
  }
76
89
  }
77
90
  if (this.executionContext.hasMoreResults()) {
78
- return {
79
- result: [],
80
- headers: aggregateHeaders,
81
- };
91
+ // Return empty buffer but preserve the structure and pass-through fields
92
+ const result = (0, parallelQueryResult_js_1.createParallelQueryResult)([], // empty buffer
93
+ new Map());
94
+ return { result, headers: aggregateHeaders };
82
95
  }
83
96
  else {
84
97
  return this.consolidateGroupResults(aggregateHeaders);
@@ -93,7 +106,9 @@ class GroupByEndpointComponent {
93
106
  this.aggregateResultArray.push(groupResult);
94
107
  }
95
108
  this.completed = true;
96
- return { result: this.aggregateResultArray, headers: aggregateHeaders };
109
+ // Return in the new structure format using the utility function
110
+ const result = (0, parallelQueryResult_js_1.createParallelQueryResult)(this.aggregateResultArray, new Map());
111
+ return { result, headers: aggregateHeaders };
97
112
  }
98
113
  }
99
114
  exports.GroupByEndpointComponent = GroupByEndpointComponent;