@azure/cosmos 4.9.1 → 4.9.3

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 (1296) hide show
  1. package/dist/browser/PartitionKeyRangeFailoverInfo.d.ts +1 -1
  2. package/dist/browser/PartitionKeyRangeFailoverInfo.d.ts.map +1 -1
  3. package/dist/browser/PartitionKeyRangeFailoverInfo.js +0 -2
  4. package/dist/browser/PartitionKeyRangeFailoverInfo.js.map +1 -1
  5. package/dist/browser/bulk/index.d.ts +1 -1
  6. package/dist/browser/bulk/index.d.ts.map +1 -1
  7. package/dist/browser/bulk/index.js.map +1 -1
  8. package/dist/browser/client/ChangeFeed/ChangeFeedForPartitionKey.d.ts +2 -2
  9. package/dist/browser/client/ChangeFeed/ChangeFeedForPartitionKey.d.ts.map +1 -1
  10. package/dist/browser/client/ChangeFeed/ChangeFeedForPartitionKey.js.map +1 -1
  11. package/dist/browser/client/ChangeFeed/buildChangeFeedIterator.js.map +1 -1
  12. package/dist/browser/client/ChangeFeed/changeFeedUtils.d.ts +4 -4
  13. package/dist/browser/client/ChangeFeed/changeFeedUtils.d.ts.map +1 -1
  14. package/dist/browser/client/ChangeFeed/changeFeedUtils.js.map +1 -1
  15. package/dist/browser/client/ChangeFeed/index.d.ts +2 -2
  16. package/dist/browser/client/ChangeFeed/index.d.ts.map +1 -1
  17. package/dist/browser/client/ChangeFeed/index.js.map +1 -1
  18. package/dist/browser/client/ClientUtils.d.ts +1 -1
  19. package/dist/browser/client/ClientUtils.d.ts.map +1 -1
  20. package/dist/browser/client/ClientUtils.js.map +1 -1
  21. package/dist/browser/client/Conflict/index.d.ts +2 -2
  22. package/dist/browser/client/Conflict/index.d.ts.map +1 -1
  23. package/dist/browser/client/Conflict/index.js.map +1 -1
  24. package/dist/browser/client/Container/ContainerDefinition.d.ts +1 -1
  25. package/dist/browser/client/Container/ContainerDefinition.d.ts.map +1 -1
  26. package/dist/browser/client/Container/ContainerDefinition.js.map +1 -1
  27. package/dist/browser/client/Container/index.d.ts +4 -4
  28. package/dist/browser/client/Container/index.d.ts.map +1 -1
  29. package/dist/browser/client/Container/index.js.map +1 -1
  30. package/dist/browser/client/Database/index.d.ts +2 -2
  31. package/dist/browser/client/Database/index.d.ts.map +1 -1
  32. package/dist/browser/client/Database/index.js.map +1 -1
  33. package/dist/browser/client/Item/Items.d.ts.map +1 -1
  34. package/dist/browser/client/Item/Items.js.map +1 -1
  35. package/dist/browser/client/Item/index.d.ts +1 -1
  36. package/dist/browser/client/Item/index.d.ts.map +1 -1
  37. package/dist/browser/client/Item/index.js.map +1 -1
  38. package/dist/browser/client/Offer/index.d.ts +1 -1
  39. package/dist/browser/client/Offer/index.d.ts.map +1 -1
  40. package/dist/browser/client/Offer/index.js.map +1 -1
  41. package/dist/browser/client/Permission/index.d.ts +2 -2
  42. package/dist/browser/client/Permission/index.d.ts.map +1 -1
  43. package/dist/browser/client/Permission/index.js.map +1 -1
  44. package/dist/browser/client/StoredProcedure/index.d.ts +1 -1
  45. package/dist/browser/client/StoredProcedure/index.d.ts.map +1 -1
  46. package/dist/browser/client/StoredProcedure/index.js.map +1 -1
  47. package/dist/browser/client/Trigger/index.d.ts +1 -1
  48. package/dist/browser/client/Trigger/index.d.ts.map +1 -1
  49. package/dist/browser/client/Trigger/index.js.map +1 -1
  50. package/dist/browser/client/User/index.d.ts +1 -1
  51. package/dist/browser/client/User/index.d.ts.map +1 -1
  52. package/dist/browser/client/User/index.js.map +1 -1
  53. package/dist/browser/client/UserDefinedFunction/index.d.ts +1 -1
  54. package/dist/browser/client/UserDefinedFunction/index.d.ts.map +1 -1
  55. package/dist/browser/client/UserDefinedFunction/index.js.map +1 -1
  56. package/dist/browser/client/index.d.ts +1 -1
  57. package/dist/browser/client/index.d.ts.map +1 -1
  58. package/dist/browser/client/index.js +0 -1
  59. package/dist/browser/client/index.js.map +1 -1
  60. package/dist/browser/common/constants.js +1 -1
  61. package/dist/browser/common/constants.js.map +1 -1
  62. package/dist/browser/common/helper.d.ts +4 -4
  63. package/dist/browser/common/helper.d.ts.map +1 -1
  64. package/dist/browser/common/helper.js.map +1 -1
  65. package/dist/browser/common/platform.d.ts +1 -1
  66. package/dist/browser/common/platform.d.ts.map +1 -1
  67. package/dist/browser/common/platform.js.map +1 -1
  68. package/dist/browser/diagnostics/DiagnosticNodeInternal.d.ts +1 -1
  69. package/dist/browser/diagnostics/DiagnosticNodeInternal.d.ts.map +1 -1
  70. package/dist/browser/diagnostics/DiagnosticNodeInternal.js.map +1 -1
  71. package/dist/browser/documents/index.d.ts +4 -4
  72. package/dist/browser/documents/index.d.ts.map +1 -1
  73. package/dist/browser/documents/index.js +0 -4
  74. package/dist/browser/documents/index.js.map +1 -1
  75. package/dist/browser/encryption/AeadAes256CbcHmacSha256Algorithm/AeadAes256CbcHmacSha256Algorithm.d.ts +6 -2
  76. package/dist/browser/encryption/AeadAes256CbcHmacSha256Algorithm/AeadAes256CbcHmacSha256Algorithm.d.ts.map +1 -0
  77. package/dist/browser/encryption/AeadAes256CbcHmacSha256Algorithm/AeadAes256CbcHmacSha256Algorithm.js +8 -3
  78. package/dist/browser/encryption/AeadAes256CbcHmacSha256Algorithm/AeadAes256CbcHmacSha256Algorithm.js.map +1 -0
  79. package/dist/browser/encryption/Cache/ProtectedDataEncryptionKeyCache.d.ts +5 -1
  80. package/dist/browser/encryption/Cache/ProtectedDataEncryptionKeyCache.d.ts.map +1 -0
  81. package/dist/browser/encryption/Cache/ProtectedDataEncryptionKeyCache.js +5 -2
  82. package/dist/browser/encryption/Cache/ProtectedDataEncryptionKeyCache.js.map +1 -0
  83. package/dist/browser/encryption/ClientEncryptionIncludedPath.d.ts +1 -1
  84. package/dist/browser/encryption/ClientEncryptionIncludedPath.d.ts.map +1 -1
  85. package/dist/browser/encryption/ClientEncryptionIncludedPath.js.map +1 -1
  86. package/dist/browser/encryption/ClientEncryptionKey/ClientEncryptionKeyResponse.d.ts +4 -4
  87. package/dist/browser/encryption/ClientEncryptionKey/ClientEncryptionKeyResponse.d.ts.map +1 -1
  88. package/dist/browser/encryption/ClientEncryptionKey/ClientEncryptionKeyResponse.js.map +1 -1
  89. package/dist/browser/encryption/ClientEncryptionKey/index.d.ts +2 -2
  90. package/dist/browser/encryption/ClientEncryptionKey/index.d.ts.map +1 -1
  91. package/dist/browser/encryption/ClientEncryptionKey/index.js.map +1 -1
  92. package/dist/browser/encryption/EncryptionKey/DataEncryptionKey.d.ts +6 -1
  93. package/dist/browser/encryption/EncryptionKey/DataEncryptionKey.d.ts.map +1 -0
  94. package/dist/browser/encryption/EncryptionKey/DataEncryptionKey.js +8 -2
  95. package/dist/browser/encryption/EncryptionKey/DataEncryptionKey.js.map +1 -0
  96. package/dist/browser/encryption/EncryptionKeyResolver/index.d.ts +1 -1
  97. package/dist/browser/encryption/EncryptionKeyResolver/index.d.ts.map +1 -1
  98. package/dist/browser/encryption/EncryptionKeyResolver/index.js.map +1 -1
  99. package/dist/browser/encryption/EncryptionQueryBuilder.d.ts +2 -2
  100. package/dist/browser/encryption/EncryptionQueryBuilder.d.ts.map +1 -1
  101. package/dist/browser/encryption/EncryptionQueryBuilder.js.map +1 -1
  102. package/dist/browser/encryption/Serializers/BooleanSerializer.d.ts +1 -1
  103. package/dist/browser/encryption/Serializers/BooleanSerializer.d.ts.map +1 -1
  104. package/dist/browser/encryption/Serializers/BooleanSerializer.js.map +1 -1
  105. package/dist/browser/encryption/Serializers/FloatSerializer.d.ts +1 -1
  106. package/dist/browser/encryption/Serializers/FloatSerializer.d.ts.map +1 -1
  107. package/dist/browser/encryption/Serializers/FloatSerializer.js.map +1 -1
  108. package/dist/browser/encryption/Serializers/StringSerializer.d.ts +1 -1
  109. package/dist/browser/encryption/Serializers/StringSerializer.d.ts.map +1 -1
  110. package/dist/browser/encryption/Serializers/StringSerializer.js.map +1 -1
  111. package/dist/browser/encryption/Serializers/index.d.ts +1 -1
  112. package/dist/browser/encryption/Serializers/index.d.ts.map +1 -1
  113. package/dist/browser/encryption/Serializers/index.js.map +1 -1
  114. package/dist/browser/encryption/index.d.ts +5 -5
  115. package/dist/browser/encryption/index.d.ts.map +1 -1
  116. package/dist/browser/encryption/index.js.map +1 -1
  117. package/dist/browser/globalPartitionEndpointManager.d.ts +2 -1
  118. package/dist/browser/globalPartitionEndpointManager.d.ts.map +1 -1
  119. package/dist/browser/globalPartitionEndpointManager.js.map +1 -1
  120. package/dist/browser/index.d.ts +16 -16
  121. package/dist/browser/index.d.ts.map +1 -1
  122. package/dist/browser/index.js +1 -1
  123. package/dist/browser/index.js.map +1 -1
  124. package/dist/browser/queryExecutionContext/Aggregators/index.d.ts +1 -1
  125. package/dist/browser/queryExecutionContext/Aggregators/index.d.ts.map +1 -1
  126. package/dist/browser/queryExecutionContext/Aggregators/index.js.map +1 -1
  127. package/dist/browser/queryExecutionContext/ContinuationTokenManager/BaseContinuationTokenManager.js +26 -18
  128. package/dist/browser/queryExecutionContext/ContinuationTokenManager/BaseContinuationTokenManager.js.map +1 -1
  129. package/dist/browser/queryExecutionContext/ContinuationTokenManager/OrderByQueryContinuationTokenManager.js +48 -25
  130. package/dist/browser/queryExecutionContext/ContinuationTokenManager/OrderByQueryContinuationTokenManager.js.map +1 -1
  131. package/dist/browser/queryExecutionContext/ContinuationTokenManager/ParallelQueryContinuationTokenManager.js +17 -26
  132. package/dist/browser/queryExecutionContext/ContinuationTokenManager/ParallelQueryContinuationTokenManager.js.map +1 -1
  133. package/dist/browser/queryExecutionContext/PartitionRangeManager.d.ts +8 -7
  134. package/dist/browser/queryExecutionContext/PartitionRangeManager.d.ts.map +1 -1
  135. package/dist/browser/queryExecutionContext/PartitionRangeManager.js +13 -12
  136. package/dist/browser/queryExecutionContext/PartitionRangeManager.js.map +1 -1
  137. package/dist/browser/queryExecutionContext/index.d.ts +2 -2
  138. package/dist/browser/queryExecutionContext/index.d.ts.map +1 -1
  139. package/dist/browser/queryExecutionContext/index.js +0 -2
  140. package/dist/browser/queryExecutionContext/index.js.map +1 -1
  141. package/dist/browser/queryExecutionContext/parallelQueryExecutionContextBase.d.ts +1 -1
  142. package/dist/browser/queryExecutionContext/parallelQueryExecutionContextBase.d.ts.map +1 -1
  143. package/dist/browser/queryExecutionContext/parallelQueryExecutionContextBase.js.map +1 -1
  144. package/dist/browser/queryExecutionContext/queryFilteringStrategy/OrderByQueryRangeStrategy.d.ts +2 -1
  145. package/dist/browser/queryExecutionContext/queryFilteringStrategy/OrderByQueryRangeStrategy.d.ts.map +1 -1
  146. package/dist/browser/queryExecutionContext/queryFilteringStrategy/OrderByQueryRangeStrategy.js +6 -5
  147. package/dist/browser/queryExecutionContext/queryFilteringStrategy/OrderByQueryRangeStrategy.js.map +1 -1
  148. package/dist/browser/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.d.ts +0 -4
  149. package/dist/browser/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.d.ts.map +1 -1
  150. package/dist/browser/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.js +2 -10
  151. package/dist/browser/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.js.map +1 -1
  152. package/dist/browser/request/defaultAgent.d.ts +1 -1
  153. package/dist/browser/request/defaultAgent.d.ts.map +1 -0
  154. package/dist/browser/request/defaultAgent.js +1 -1
  155. package/dist/browser/request/defaultAgent.js.map +1 -0
  156. package/dist/browser/request/hybridSearchQueryResult.d.ts +1 -1
  157. package/dist/browser/request/hybridSearchQueryResult.d.ts.map +1 -1
  158. package/dist/browser/request/hybridSearchQueryResult.js.map +1 -1
  159. package/dist/browser/request/index.d.ts +8 -8
  160. package/dist/browser/request/index.d.ts.map +1 -1
  161. package/dist/browser/request/index.js +0 -1
  162. package/dist/browser/request/index.js.map +1 -1
  163. package/dist/browser/retry/endpointDiscoveryRetryPolicy.d.ts +1 -1
  164. package/dist/browser/retry/endpointDiscoveryRetryPolicy.d.ts.map +1 -1
  165. package/dist/browser/retry/endpointDiscoveryRetryPolicy.js.map +1 -1
  166. package/dist/browser/retry/index.d.ts +1 -1
  167. package/dist/browser/retry/index.d.ts.map +1 -1
  168. package/dist/browser/retry/index.js +0 -3
  169. package/dist/browser/retry/index.js.map +1 -1
  170. package/dist/browser/retry/timeoutFailoverRetryPolicy.d.ts +1 -1
  171. package/dist/browser/retry/timeoutFailoverRetryPolicy.d.ts.map +1 -1
  172. package/dist/browser/retry/timeoutFailoverRetryPolicy.js.map +1 -1
  173. package/dist/browser/utils/atob.d.ts +1 -1
  174. package/dist/browser/utils/atob.d.ts.map +1 -0
  175. package/dist/browser/utils/atob.js +1 -1
  176. package/dist/browser/utils/atob.js.map +1 -0
  177. package/dist/browser/utils/digest.d.ts +1 -1
  178. package/dist/browser/utils/digest.d.ts.map +1 -0
  179. package/dist/browser/utils/digest.js +1 -1
  180. package/dist/browser/utils/digest.js.map +1 -0
  181. package/dist/browser/utils/envUtils.d.ts +1 -1
  182. package/dist/browser/utils/envUtils.d.ts.map +1 -0
  183. package/dist/browser/utils/envUtils.js +1 -1
  184. package/dist/browser/utils/envUtils.js.map +1 -0
  185. package/dist/browser/utils/hashing/hash.d.ts +1 -1
  186. package/dist/browser/utils/hashing/hash.d.ts.map +1 -1
  187. package/dist/browser/utils/hashing/hash.js.map +1 -1
  188. package/dist/browser/utils/hmac.d.ts +1 -1
  189. package/dist/browser/utils/hmac.d.ts.map +1 -0
  190. package/dist/browser/utils/hmac.js +1 -1
  191. package/dist/browser/utils/hmac.js.map +1 -0
  192. package/dist/commonjs/ChangeFeedIterator.js +131 -110
  193. package/dist/commonjs/ChangeFeedIterator.js.map +7 -1
  194. package/dist/commonjs/ChangeFeedOptions.js +16 -3
  195. package/dist/commonjs/ChangeFeedOptions.js.map +7 -1
  196. package/dist/commonjs/ChangeFeedResponse.js +85 -78
  197. package/dist/commonjs/ChangeFeedResponse.js.map +7 -1
  198. package/dist/commonjs/ClientContext.js +873 -761
  199. package/dist/commonjs/ClientContext.js.map +7 -1
  200. package/dist/commonjs/CosmosClient.js +294 -286
  201. package/dist/commonjs/CosmosClient.js.map +7 -1
  202. package/dist/commonjs/CosmosClientOptions.js +16 -3
  203. package/dist/commonjs/CosmosClientOptions.js.map +7 -1
  204. package/dist/commonjs/CosmosDiagnostics.js +52 -55
  205. package/dist/commonjs/CosmosDiagnostics.js.map +7 -1
  206. package/dist/commonjs/GlobalEndpointManagerOptions.js +16 -3
  207. package/dist/commonjs/GlobalEndpointManagerOptions.js.map +7 -1
  208. package/dist/commonjs/PartitionKeyRangeFailoverInfo.d.ts +1 -1
  209. package/dist/commonjs/PartitionKeyRangeFailoverInfo.d.ts.map +1 -1
  210. package/dist/commonjs/PartitionKeyRangeFailoverInfo.js +149 -134
  211. package/dist/commonjs/PartitionKeyRangeFailoverInfo.js.map +7 -1
  212. package/dist/commonjs/auth.js +92 -84
  213. package/dist/commonjs/auth.js.map +7 -1
  214. package/dist/commonjs/bulk/Batcher.js +178 -149
  215. package/dist/commonjs/bulk/Batcher.js.map +7 -1
  216. package/dist/commonjs/bulk/BulkHelper.js +321 -289
  217. package/dist/commonjs/bulk/BulkHelper.js.map +7 -1
  218. package/dist/commonjs/bulk/BulkResponse.js +141 -118
  219. package/dist/commonjs/bulk/BulkResponse.js.map +7 -1
  220. package/dist/commonjs/bulk/CongestionAlgorithm.js +72 -66
  221. package/dist/commonjs/bulk/CongestionAlgorithm.js.map +7 -1
  222. package/dist/commonjs/bulk/HelperPerPartition.js +168 -130
  223. package/dist/commonjs/bulk/HelperPerPartition.js.map +7 -1
  224. package/dist/commonjs/bulk/ItemOperation.js +16 -5
  225. package/dist/commonjs/bulk/ItemOperation.js.map +7 -1
  226. package/dist/commonjs/bulk/ItemOperationContext.js +54 -38
  227. package/dist/commonjs/bulk/ItemOperationContext.js.map +7 -1
  228. package/dist/commonjs/bulk/Limiter.js +199 -212
  229. package/dist/commonjs/bulk/Limiter.js.map +7 -1
  230. package/dist/commonjs/bulk/PartitionMetric.js +59 -35
  231. package/dist/commonjs/bulk/PartitionMetric.js.map +7 -1
  232. package/dist/commonjs/bulk/index.d.ts +1 -1
  233. package/dist/commonjs/bulk/index.d.ts.map +1 -1
  234. package/dist/commonjs/bulk/index.js +31 -10
  235. package/dist/commonjs/bulk/index.js.map +7 -1
  236. package/dist/commonjs/client/ChangeFeed/ChangeFeedEnums.js +32 -14
  237. package/dist/commonjs/client/ChangeFeed/ChangeFeedEnums.js.map +7 -1
  238. package/dist/commonjs/client/ChangeFeed/ChangeFeedForEpkRange.js +383 -327
  239. package/dist/commonjs/client/ChangeFeed/ChangeFeedForEpkRange.js.map +7 -1
  240. package/dist/commonjs/client/ChangeFeed/ChangeFeedForPartitionKey.d.ts +2 -2
  241. package/dist/commonjs/client/ChangeFeed/ChangeFeedForPartitionKey.d.ts.map +1 -1
  242. package/dist/commonjs/client/ChangeFeed/ChangeFeedForPartitionKey.js +187 -146
  243. package/dist/commonjs/client/ChangeFeed/ChangeFeedForPartitionKey.js.map +7 -1
  244. package/dist/commonjs/client/ChangeFeed/ChangeFeedIteratorBuilder.js +83 -63
  245. package/dist/commonjs/client/ChangeFeed/ChangeFeedIteratorBuilder.js.map +7 -1
  246. package/dist/commonjs/client/ChangeFeed/ChangeFeedIteratorOptions.js +16 -5
  247. package/dist/commonjs/client/ChangeFeed/ChangeFeedIteratorOptions.js.map +7 -1
  248. package/dist/commonjs/client/ChangeFeed/ChangeFeedIteratorResponse.js +73 -78
  249. package/dist/commonjs/client/ChangeFeed/ChangeFeedIteratorResponse.js.map +7 -1
  250. package/dist/commonjs/client/ChangeFeed/ChangeFeedMode.js +32 -11
  251. package/dist/commonjs/client/ChangeFeed/ChangeFeedMode.js.map +7 -1
  252. package/dist/commonjs/client/ChangeFeed/ChangeFeedPolicy.js +31 -12
  253. package/dist/commonjs/client/ChangeFeed/ChangeFeedPolicy.js.map +7 -1
  254. package/dist/commonjs/client/ChangeFeed/ChangeFeedPullModelIterator.js +16 -3
  255. package/dist/commonjs/client/ChangeFeed/ChangeFeedPullModelIterator.js.map +7 -1
  256. package/dist/commonjs/client/ChangeFeed/ChangeFeedRange.js +54 -38
  257. package/dist/commonjs/client/ChangeFeed/ChangeFeedRange.js.map +7 -1
  258. package/dist/commonjs/client/ChangeFeed/ChangeFeedRetentionTimeSpan.js +53 -36
  259. package/dist/commonjs/client/ChangeFeed/ChangeFeedRetentionTimeSpan.js.map +7 -1
  260. package/dist/commonjs/client/ChangeFeed/ChangeFeedStartFrom.js +71 -54
  261. package/dist/commonjs/client/ChangeFeed/ChangeFeedStartFrom.js.map +7 -1
  262. package/dist/commonjs/client/ChangeFeed/ChangeFeedStartFromBeginning.js +34 -16
  263. package/dist/commonjs/client/ChangeFeed/ChangeFeedStartFromBeginning.js.map +7 -1
  264. package/dist/commonjs/client/ChangeFeed/ChangeFeedStartFromContinuation.js +48 -38
  265. package/dist/commonjs/client/ChangeFeed/ChangeFeedStartFromContinuation.js.map +7 -1
  266. package/dist/commonjs/client/ChangeFeed/ChangeFeedStartFromNow.js +34 -18
  267. package/dist/commonjs/client/ChangeFeed/ChangeFeedStartFromNow.js.map +7 -1
  268. package/dist/commonjs/client/ChangeFeed/ChangeFeedStartFromTime.js +39 -21
  269. package/dist/commonjs/client/ChangeFeed/ChangeFeedStartFromTime.js.map +7 -1
  270. package/dist/commonjs/client/ChangeFeed/CompositeContinuationToken.js +39 -21
  271. package/dist/commonjs/client/ChangeFeed/CompositeContinuationToken.js.map +7 -1
  272. package/dist/commonjs/client/ChangeFeed/ContinuationTokenForPartitionKey.js +44 -26
  273. package/dist/commonjs/client/ChangeFeed/ContinuationTokenForPartitionKey.js.map +7 -1
  274. package/dist/commonjs/client/ChangeFeed/FeedRange.js +51 -38
  275. package/dist/commonjs/client/ChangeFeed/FeedRange.js.map +7 -1
  276. package/dist/commonjs/client/ChangeFeed/FeedRangeQueue.js +69 -49
  277. package/dist/commonjs/client/ChangeFeed/FeedRangeQueue.js.map +7 -1
  278. package/dist/commonjs/client/ChangeFeed/InternalChangeFeedOptions.js +16 -5
  279. package/dist/commonjs/client/ChangeFeed/InternalChangeFeedOptions.js.map +7 -1
  280. package/dist/commonjs/client/ChangeFeed/buildChangeFeedIterator.js +144 -71
  281. package/dist/commonjs/client/ChangeFeed/buildChangeFeedIterator.js.map +7 -1
  282. package/dist/commonjs/client/ChangeFeed/changeFeedUtils.d.ts +4 -4
  283. package/dist/commonjs/client/ChangeFeed/changeFeedUtils.d.ts.map +1 -1
  284. package/dist/commonjs/client/ChangeFeed/changeFeedUtils.js +161 -188
  285. package/dist/commonjs/client/ChangeFeed/changeFeedUtils.js.map +7 -1
  286. package/dist/commonjs/client/ChangeFeed/index.d.ts +2 -2
  287. package/dist/commonjs/client/ChangeFeed/index.d.ts.map +1 -1
  288. package/dist/commonjs/client/ChangeFeed/index.js +60 -29
  289. package/dist/commonjs/client/ChangeFeed/index.js.map +7 -1
  290. package/dist/commonjs/client/ClientUtils.d.ts +1 -1
  291. package/dist/commonjs/client/ClientUtils.d.ts.map +1 -1
  292. package/dist/commonjs/client/ClientUtils.js +43 -16
  293. package/dist/commonjs/client/ClientUtils.js.map +7 -1
  294. package/dist/commonjs/client/Conflict/Conflict.js +132 -100
  295. package/dist/commonjs/client/Conflict/Conflict.js.map +7 -1
  296. package/dist/commonjs/client/Conflict/ConflictDefinition.js +16 -3
  297. package/dist/commonjs/client/Conflict/ConflictDefinition.js.map +7 -1
  298. package/dist/commonjs/client/Conflict/ConflictResolutionMode.js +32 -11
  299. package/dist/commonjs/client/Conflict/ConflictResolutionMode.js.map +7 -1
  300. package/dist/commonjs/client/Conflict/ConflictResolutionPolicy.js +16 -3
  301. package/dist/commonjs/client/Conflict/ConflictResolutionPolicy.js.map +7 -1
  302. package/dist/commonjs/client/Conflict/ConflictResponse.js +35 -13
  303. package/dist/commonjs/client/Conflict/ConflictResponse.js.map +7 -1
  304. package/dist/commonjs/client/Conflict/Conflicts.js +73 -51
  305. package/dist/commonjs/client/Conflict/Conflicts.js.map +7 -1
  306. package/dist/commonjs/client/Conflict/index.d.ts +2 -2
  307. package/dist/commonjs/client/Conflict/index.d.ts.map +1 -1
  308. package/dist/commonjs/client/Conflict/index.js +37 -14
  309. package/dist/commonjs/client/Conflict/index.js.map +7 -1
  310. package/dist/commonjs/client/Container/Container.js +669 -599
  311. package/dist/commonjs/client/Container/Container.js.map +7 -1
  312. package/dist/commonjs/client/Container/ContainerDefinition.d.ts +1 -1
  313. package/dist/commonjs/client/Container/ContainerDefinition.d.ts.map +1 -1
  314. package/dist/commonjs/client/Container/ContainerDefinition.js +16 -3
  315. package/dist/commonjs/client/Container/ContainerDefinition.js.map +7 -1
  316. package/dist/commonjs/client/Container/ContainerRequest.js +16 -3
  317. package/dist/commonjs/client/Container/ContainerRequest.js.map +7 -1
  318. package/dist/commonjs/client/Container/ContainerResponse.js +35 -14
  319. package/dist/commonjs/client/Container/ContainerResponse.js.map +7 -1
  320. package/dist/commonjs/client/Container/Containers.js +236 -218
  321. package/dist/commonjs/client/Container/Containers.js.map +7 -1
  322. package/dist/commonjs/client/Container/PartitionKeyRange.js +16 -3
  323. package/dist/commonjs/client/Container/PartitionKeyRange.js.map +7 -1
  324. package/dist/commonjs/client/Container/UniqueKeyPolicy.js +16 -3
  325. package/dist/commonjs/client/Container/UniqueKeyPolicy.js.map +7 -1
  326. package/dist/commonjs/client/Container/index.d.ts +4 -4
  327. package/dist/commonjs/client/Container/index.d.ts.map +1 -1
  328. package/dist/commonjs/client/Container/index.js +34 -12
  329. package/dist/commonjs/client/Container/index.js.map +7 -1
  330. package/dist/commonjs/client/Database/Database.js +533 -448
  331. package/dist/commonjs/client/Database/Database.js.map +7 -1
  332. package/dist/commonjs/client/Database/DatabaseDefinition.js +16 -3
  333. package/dist/commonjs/client/Database/DatabaseDefinition.js.map +7 -1
  334. package/dist/commonjs/client/Database/DatabaseRequest.js +16 -3
  335. package/dist/commonjs/client/Database/DatabaseRequest.js.map +7 -1
  336. package/dist/commonjs/client/Database/DatabaseResponse.js +35 -14
  337. package/dist/commonjs/client/Database/DatabaseResponse.js.map +7 -1
  338. package/dist/commonjs/client/Database/Databases.js +201 -188
  339. package/dist/commonjs/client/Database/Databases.js.map +7 -1
  340. package/dist/commonjs/client/Database/index.d.ts +2 -2
  341. package/dist/commonjs/client/Database/index.d.ts.map +1 -1
  342. package/dist/commonjs/client/Database/index.js +34 -12
  343. package/dist/commonjs/client/Database/index.js.map +7 -1
  344. package/dist/commonjs/client/Item/Item.js +510 -383
  345. package/dist/commonjs/client/Item/Item.js.map +7 -1
  346. package/dist/commonjs/client/Item/ItemDefinition.js +16 -5
  347. package/dist/commonjs/client/Item/ItemDefinition.js.map +7 -1
  348. package/dist/commonjs/client/Item/ItemResponse.js +35 -13
  349. package/dist/commonjs/client/Item/ItemResponse.js.map +7 -1
  350. package/dist/commonjs/client/Item/Items.d.ts.map +1 -1
  351. package/dist/commonjs/client/Item/Items.js +891 -717
  352. package/dist/commonjs/client/Item/Items.js.map +7 -1
  353. package/dist/commonjs/client/Item/index.d.ts +1 -1
  354. package/dist/commonjs/client/Item/index.d.ts.map +1 -1
  355. package/dist/commonjs/client/Item/index.js +34 -12
  356. package/dist/commonjs/client/Item/index.js.map +7 -1
  357. package/dist/commonjs/client/Offer/Offer.js +119 -90
  358. package/dist/commonjs/client/Offer/Offer.js.map +7 -1
  359. package/dist/commonjs/client/Offer/OfferDefinition.js +16 -3
  360. package/dist/commonjs/client/Offer/OfferDefinition.js.map +7 -1
  361. package/dist/commonjs/client/Offer/OfferResponse.js +35 -13
  362. package/dist/commonjs/client/Offer/OfferResponse.js.map +7 -1
  363. package/dist/commonjs/client/Offer/Offers.js +68 -51
  364. package/dist/commonjs/client/Offer/Offers.js.map +7 -1
  365. package/dist/commonjs/client/Offer/index.d.ts +1 -1
  366. package/dist/commonjs/client/Offer/index.d.ts.map +1 -1
  367. package/dist/commonjs/client/Offer/index.js +34 -12
  368. package/dist/commonjs/client/Offer/index.js.map +7 -1
  369. package/dist/commonjs/client/Permission/Permission.js +162 -127
  370. package/dist/commonjs/client/Permission/Permission.js.map +7 -1
  371. package/dist/commonjs/client/Permission/PermissionBody.js +16 -3
  372. package/dist/commonjs/client/Permission/PermissionBody.js.map +7 -1
  373. package/dist/commonjs/client/Permission/PermissionDefinition.js +16 -3
  374. package/dist/commonjs/client/Permission/PermissionDefinition.js.map +7 -1
  375. package/dist/commonjs/client/Permission/PermissionResponse.js +35 -13
  376. package/dist/commonjs/client/Permission/PermissionResponse.js.map +7 -1
  377. package/dist/commonjs/client/Permission/Permissions.js +173 -144
  378. package/dist/commonjs/client/Permission/Permissions.js.map +7 -1
  379. package/dist/commonjs/client/Permission/index.d.ts +2 -2
  380. package/dist/commonjs/client/Permission/index.d.ts.map +1 -1
  381. package/dist/commonjs/client/Permission/index.js +34 -12
  382. package/dist/commonjs/client/Permission/index.js.map +7 -1
  383. package/dist/commonjs/client/Resource.js +16 -3
  384. package/dist/commonjs/client/Resource.js.map +7 -1
  385. package/dist/commonjs/client/SasToken/PermissionScopeValues.js +92 -80
  386. package/dist/commonjs/client/SasToken/PermissionScopeValues.js.map +7 -1
  387. package/dist/commonjs/client/SasToken/SasTokenProperties.js +44 -24
  388. package/dist/commonjs/client/SasToken/SasTokenProperties.js.map +7 -1
  389. package/dist/commonjs/client/Script/Scripts.js +100 -80
  390. package/dist/commonjs/client/Script/Scripts.js.map +7 -1
  391. package/dist/commonjs/client/StoredProcedure/StoredProcedure.js +228 -185
  392. package/dist/commonjs/client/StoredProcedure/StoredProcedure.js.map +7 -1
  393. package/dist/commonjs/client/StoredProcedure/StoredProcedureDefinition.js +16 -3
  394. package/dist/commonjs/client/StoredProcedure/StoredProcedureDefinition.js.map +7 -1
  395. package/dist/commonjs/client/StoredProcedure/StoredProcedureResponse.js +45 -23
  396. package/dist/commonjs/client/StoredProcedure/StoredProcedureResponse.js.map +7 -1
  397. package/dist/commonjs/client/StoredProcedure/StoredProcedures.js +134 -111
  398. package/dist/commonjs/client/StoredProcedure/StoredProcedures.js.map +7 -1
  399. package/dist/commonjs/client/StoredProcedure/index.d.ts +1 -1
  400. package/dist/commonjs/client/StoredProcedure/index.d.ts.map +1 -1
  401. package/dist/commonjs/client/StoredProcedure/index.js +34 -12
  402. package/dist/commonjs/client/StoredProcedure/index.js.map +7 -1
  403. package/dist/commonjs/client/Trigger/Trigger.js +173 -138
  404. package/dist/commonjs/client/Trigger/Trigger.js.map +7 -1
  405. package/dist/commonjs/client/Trigger/TriggerDefinition.js +16 -3
  406. package/dist/commonjs/client/Trigger/TriggerDefinition.js.map +7 -1
  407. package/dist/commonjs/client/Trigger/TriggerResponse.js +35 -13
  408. package/dist/commonjs/client/Trigger/TriggerResponse.js.map +7 -1
  409. package/dist/commonjs/client/Trigger/Triggers.js +133 -110
  410. package/dist/commonjs/client/Trigger/Triggers.js.map +7 -1
  411. package/dist/commonjs/client/Trigger/index.d.ts +1 -1
  412. package/dist/commonjs/client/Trigger/index.d.ts.map +1 -1
  413. package/dist/commonjs/client/Trigger/index.js +34 -12
  414. package/dist/commonjs/client/Trigger/index.js.map +7 -1
  415. package/dist/commonjs/client/User/User.js +174 -141
  416. package/dist/commonjs/client/User/User.js.map +7 -1
  417. package/dist/commonjs/client/User/UserDefinition.js +16 -3
  418. package/dist/commonjs/client/User/UserDefinition.js.map +7 -1
  419. package/dist/commonjs/client/User/UserResponse.js +35 -13
  420. package/dist/commonjs/client/User/UserResponse.js.map +7 -1
  421. package/dist/commonjs/client/User/Users.js +157 -128
  422. package/dist/commonjs/client/User/Users.js.map +7 -1
  423. package/dist/commonjs/client/User/index.d.ts +1 -1
  424. package/dist/commonjs/client/User/index.d.ts.map +1 -1
  425. package/dist/commonjs/client/User/index.js +34 -12
  426. package/dist/commonjs/client/User/index.js.map +7 -1
  427. package/dist/commonjs/client/UserDefinedFunction/UserDefinedFunction.js +172 -137
  428. package/dist/commonjs/client/UserDefinedFunction/UserDefinedFunction.js.map +7 -1
  429. package/dist/commonjs/client/UserDefinedFunction/UserDefinedFunctionDefinition.js +16 -3
  430. package/dist/commonjs/client/UserDefinedFunction/UserDefinedFunctionDefinition.js.map +7 -1
  431. package/dist/commonjs/client/UserDefinedFunction/UserDefinedFunctionResponse.js +43 -21
  432. package/dist/commonjs/client/UserDefinedFunction/UserDefinedFunctionResponse.js.map +7 -1
  433. package/dist/commonjs/client/UserDefinedFunction/UserDefinedFunctions.js +130 -107
  434. package/dist/commonjs/client/UserDefinedFunction/UserDefinedFunctions.js.map +7 -1
  435. package/dist/commonjs/client/UserDefinedFunction/index.d.ts +1 -1
  436. package/dist/commonjs/client/UserDefinedFunction/index.d.ts.map +1 -1
  437. package/dist/commonjs/client/UserDefinedFunction/index.js +34 -12
  438. package/dist/commonjs/client/UserDefinedFunction/index.js.map +7 -1
  439. package/dist/commonjs/client/index.d.ts +1 -1
  440. package/dist/commonjs/client/index.d.ts.map +1 -1
  441. package/dist/commonjs/client/index.js +42 -18
  442. package/dist/commonjs/client/index.js.map +7 -1
  443. package/dist/commonjs/common/constants.js +515 -500
  444. package/dist/commonjs/common/constants.js.map +7 -1
  445. package/dist/commonjs/common/helper.d.ts +4 -4
  446. package/dist/commonjs/common/helper.d.ts.map +1 -1
  447. package/dist/commonjs/common/helper.js +350 -412
  448. package/dist/commonjs/common/helper.js.map +7 -1
  449. package/dist/commonjs/common/index.js +28 -10
  450. package/dist/commonjs/common/index.js.map +7 -1
  451. package/dist/commonjs/common/logger.js +29 -9
  452. package/dist/commonjs/common/logger.js.map +7 -1
  453. package/dist/commonjs/common/partitionKeys.js +28 -7
  454. package/dist/commonjs/common/partitionKeys.js.map +7 -1
  455. package/dist/commonjs/common/platform.d.ts +1 -1
  456. package/dist/commonjs/common/platform.d.ts.map +1 -1
  457. package/dist/commonjs/common/platform.js +55 -42
  458. package/dist/commonjs/common/platform.js.map +7 -1
  459. package/dist/commonjs/common/statusCodes.js +77 -60
  460. package/dist/commonjs/common/statusCodes.js.map +7 -1
  461. package/dist/commonjs/common/uriFactory.js +80 -195
  462. package/dist/commonjs/common/uriFactory.js.map +7 -1
  463. package/dist/commonjs/diagnostics/CosmosDbDiagnosticLevel.js +33 -15
  464. package/dist/commonjs/diagnostics/CosmosDbDiagnosticLevel.js.map +7 -1
  465. package/dist/commonjs/diagnostics/CosmosDiagnosticsContext.js +146 -126
  466. package/dist/commonjs/diagnostics/CosmosDiagnosticsContext.js.map +7 -1
  467. package/dist/commonjs/diagnostics/DiagnosticFormatter.js +30 -10
  468. package/dist/commonjs/diagnostics/DiagnosticFormatter.js.map +7 -1
  469. package/dist/commonjs/diagnostics/DiagnosticNodeInternal.d.ts +1 -1
  470. package/dist/commonjs/diagnostics/DiagnosticNodeInternal.d.ts.map +1 -1
  471. package/dist/commonjs/diagnostics/DiagnosticNodeInternal.js +317 -305
  472. package/dist/commonjs/diagnostics/DiagnosticNodeInternal.js.map +7 -1
  473. package/dist/commonjs/diagnostics/DiagnosticWriter.js +36 -25
  474. package/dist/commonjs/diagnostics/DiagnosticWriter.js.map +7 -1
  475. package/dist/commonjs/diagnostics/diagnosticLevelComparator.js +40 -24
  476. package/dist/commonjs/diagnostics/diagnosticLevelComparator.js.map +7 -1
  477. package/dist/commonjs/diagnostics/index.js +68 -34
  478. package/dist/commonjs/diagnostics/index.js.map +7 -1
  479. package/dist/commonjs/documents/ComputedProperty.js +16 -3
  480. package/dist/commonjs/documents/ComputedProperty.js.map +7 -1
  481. package/dist/commonjs/documents/ConnectionMode.js +31 -12
  482. package/dist/commonjs/documents/ConnectionMode.js.map +7 -1
  483. package/dist/commonjs/documents/ConnectionPolicy.js +44 -26
  484. package/dist/commonjs/documents/ConnectionPolicy.js.map +7 -1
  485. package/dist/commonjs/documents/ConsistencyLevel.js +35 -43
  486. package/dist/commonjs/documents/ConsistencyLevel.js.map +7 -1
  487. package/dist/commonjs/documents/ContinuationToken/CompositeQueryContinuationToken.js +77 -79
  488. package/dist/commonjs/documents/ContinuationToken/CompositeQueryContinuationToken.js.map +7 -1
  489. package/dist/commonjs/documents/ContinuationToken/OrderByQueryContinuationToken.js +49 -38
  490. package/dist/commonjs/documents/ContinuationToken/OrderByQueryContinuationToken.js.map +7 -1
  491. package/dist/commonjs/documents/ContinuationToken/PartitionRangeUpdate.js +16 -5
  492. package/dist/commonjs/documents/ContinuationToken/PartitionRangeUpdate.js.map +7 -1
  493. package/dist/commonjs/documents/DataType.js +36 -22
  494. package/dist/commonjs/documents/DataType.js.map +7 -1
  495. package/dist/commonjs/documents/DatabaseAccount.js +110 -100
  496. package/dist/commonjs/documents/DatabaseAccount.js.map +7 -1
  497. package/dist/commonjs/documents/Document.js +16 -3
  498. package/dist/commonjs/documents/Document.js.map +7 -1
  499. package/dist/commonjs/documents/FullTextPolicy.js +16 -5
  500. package/dist/commonjs/documents/FullTextPolicy.js.map +7 -1
  501. package/dist/commonjs/documents/GeospatialType.js +32 -13
  502. package/dist/commonjs/documents/GeospatialType.js.map +7 -1
  503. package/dist/commonjs/documents/IndexKind.js +32 -20
  504. package/dist/commonjs/documents/IndexKind.js.map +7 -1
  505. package/dist/commonjs/documents/IndexingMode.js +33 -27
  506. package/dist/commonjs/documents/IndexingMode.js.map +7 -1
  507. package/dist/commonjs/documents/IndexingPolicy.js +42 -30
  508. package/dist/commonjs/documents/IndexingPolicy.js.map +7 -1
  509. package/dist/commonjs/documents/PartitionKey.js +44 -27
  510. package/dist/commonjs/documents/PartitionKey.js.map +7 -1
  511. package/dist/commonjs/documents/PartitionKeyDefinition.js +16 -3
  512. package/dist/commonjs/documents/PartitionKeyDefinition.js.map +7 -1
  513. package/dist/commonjs/documents/PartitionKeyDefinitionVersion.js +32 -14
  514. package/dist/commonjs/documents/PartitionKeyDefinitionVersion.js.map +7 -1
  515. package/dist/commonjs/documents/PartitionKeyInternal.js +36 -28
  516. package/dist/commonjs/documents/PartitionKeyInternal.js.map +7 -1
  517. package/dist/commonjs/documents/PartitionKeyKind.js +32 -14
  518. package/dist/commonjs/documents/PartitionKeyKind.js.map +7 -1
  519. package/dist/commonjs/documents/PermissionMode.js +33 -18
  520. package/dist/commonjs/documents/PermissionMode.js.map +7 -1
  521. package/dist/commonjs/documents/PriorityLevel.js +32 -25
  522. package/dist/commonjs/documents/PriorityLevel.js.map +7 -1
  523. package/dist/commonjs/documents/TriggerOperation.js +35 -23
  524. package/dist/commonjs/documents/TriggerOperation.js.map +7 -1
  525. package/dist/commonjs/documents/TriggerType.js +32 -17
  526. package/dist/commonjs/documents/TriggerType.js.map +7 -1
  527. package/dist/commonjs/documents/UserDefinedFunctionType.js +31 -15
  528. package/dist/commonjs/documents/UserDefinedFunctionType.js.map +7 -1
  529. package/dist/commonjs/documents/VectorEmbeddingPolicy.js +42 -44
  530. package/dist/commonjs/documents/VectorEmbeddingPolicy.js.map +7 -1
  531. package/dist/commonjs/documents/index.d.ts +4 -4
  532. package/dist/commonjs/documents/index.d.ts.map +1 -1
  533. package/dist/commonjs/documents/index.js +58 -29
  534. package/dist/commonjs/documents/index.js.map +7 -1
  535. package/dist/commonjs/encryption/AeadAes256CbcHmacSha256Algorithm/AeadAes256CbcHmacSha256Algorithm.d.ts +1 -1
  536. package/dist/commonjs/encryption/AeadAes256CbcHmacSha256Algorithm/AeadAes256CbcHmacSha256Algorithm.d.ts.map +1 -1
  537. package/dist/commonjs/encryption/AeadAes256CbcHmacSha256Algorithm/AeadAes256CbcHmacSha256Algorithm.js +98 -71
  538. package/dist/commonjs/encryption/AeadAes256CbcHmacSha256Algorithm/AeadAes256CbcHmacSha256Algorithm.js.map +7 -1
  539. package/dist/commonjs/encryption/AeadAes256CbcHmacSha256Algorithm/index.js +28 -8
  540. package/dist/commonjs/encryption/AeadAes256CbcHmacSha256Algorithm/index.js.map +7 -1
  541. package/dist/commonjs/encryption/Cache/ClientEncryptionKeyPropertiesCache.js +38 -23
  542. package/dist/commonjs/encryption/Cache/ClientEncryptionKeyPropertiesCache.js.map +7 -1
  543. package/dist/commonjs/encryption/Cache/EncryptionSettingsCache.js +53 -36
  544. package/dist/commonjs/encryption/Cache/EncryptionSettingsCache.js.map +7 -1
  545. package/dist/commonjs/encryption/Cache/KeyEncryptionKeyCache.js +47 -32
  546. package/dist/commonjs/encryption/Cache/KeyEncryptionKeyCache.js.map +7 -1
  547. package/dist/commonjs/encryption/Cache/ProtectedDataEncryptionKeyCache.js +100 -86
  548. package/dist/commonjs/encryption/Cache/ProtectedDataEncryptionKeyCache.js.map +7 -1
  549. package/dist/commonjs/encryption/ClientEncryptionIncludedPath.d.ts +1 -1
  550. package/dist/commonjs/encryption/ClientEncryptionIncludedPath.d.ts.map +1 -1
  551. package/dist/commonjs/encryption/ClientEncryptionIncludedPath.js +16 -5
  552. package/dist/commonjs/encryption/ClientEncryptionIncludedPath.js.map +7 -1
  553. package/dist/commonjs/encryption/ClientEncryptionKey/ClientEncryptionKeyProperties.js +16 -5
  554. package/dist/commonjs/encryption/ClientEncryptionKey/ClientEncryptionKeyProperties.js.map +7 -1
  555. package/dist/commonjs/encryption/ClientEncryptionKey/ClientEncryptionKeyRequest.js +16 -5
  556. package/dist/commonjs/encryption/ClientEncryptionKey/ClientEncryptionKeyRequest.js.map +7 -1
  557. package/dist/commonjs/encryption/ClientEncryptionKey/ClientEncryptionKeyResponse.d.ts +4 -4
  558. package/dist/commonjs/encryption/ClientEncryptionKey/ClientEncryptionKeyResponse.d.ts.map +1 -1
  559. package/dist/commonjs/encryption/ClientEncryptionKey/ClientEncryptionKeyResponse.js +35 -16
  560. package/dist/commonjs/encryption/ClientEncryptionKey/ClientEncryptionKeyResponse.js.map +7 -1
  561. package/dist/commonjs/encryption/ClientEncryptionKey/index.d.ts +2 -2
  562. package/dist/commonjs/encryption/ClientEncryptionKey/index.d.ts.map +1 -1
  563. package/dist/commonjs/encryption/ClientEncryptionKey/index.js +28 -8
  564. package/dist/commonjs/encryption/ClientEncryptionKey/index.js.map +7 -1
  565. package/dist/commonjs/encryption/ClientEncryptionOptions.js +16 -5
  566. package/dist/commonjs/encryption/ClientEncryptionOptions.js.map +7 -1
  567. package/dist/commonjs/encryption/ClientEncryptionPolicy.js +16 -5
  568. package/dist/commonjs/encryption/ClientEncryptionPolicy.js.map +7 -1
  569. package/dist/commonjs/encryption/CosmosEncryptedNumber.js +32 -20
  570. package/dist/commonjs/encryption/CosmosEncryptedNumber.js.map +7 -1
  571. package/dist/commonjs/encryption/EncryptionItemQueryIterator.js +130 -106
  572. package/dist/commonjs/encryption/EncryptionItemQueryIterator.js.map +7 -1
  573. package/dist/commonjs/encryption/EncryptionKey/DataEncryptionKey.js +52 -32
  574. package/dist/commonjs/encryption/EncryptionKey/DataEncryptionKey.js.map +7 -1
  575. package/dist/commonjs/encryption/EncryptionKey/ProtectedDataEncryptionKey.js +37 -23
  576. package/dist/commonjs/encryption/EncryptionKey/ProtectedDataEncryptionKey.js.map +7 -1
  577. package/dist/commonjs/encryption/EncryptionKey/index.js +31 -10
  578. package/dist/commonjs/encryption/EncryptionKey/index.js.map +7 -1
  579. package/dist/commonjs/encryption/EncryptionKeyResolver/AzureKeyVaultEncryptionKeyResolver.js +113 -94
  580. package/dist/commonjs/encryption/EncryptionKeyResolver/AzureKeyVaultEncryptionKeyResolver.js.map +7 -1
  581. package/dist/commonjs/encryption/EncryptionKeyResolver/EncryptionKeyResolver.js +16 -5
  582. package/dist/commonjs/encryption/EncryptionKeyResolver/EncryptionKeyResolver.js.map +7 -1
  583. package/dist/commonjs/encryption/EncryptionKeyResolver/index.d.ts +1 -1
  584. package/dist/commonjs/encryption/EncryptionKeyResolver/index.d.ts.map +1 -1
  585. package/dist/commonjs/encryption/EncryptionKeyResolver/index.js +28 -8
  586. package/dist/commonjs/encryption/EncryptionKeyResolver/index.js.map +7 -1
  587. package/dist/commonjs/encryption/EncryptionKeyStoreProvider.js +83 -55
  588. package/dist/commonjs/encryption/EncryptionKeyStoreProvider.js.map +7 -1
  589. package/dist/commonjs/encryption/EncryptionKeyWrapMetadata.js +16 -5
  590. package/dist/commonjs/encryption/EncryptionKeyWrapMetadata.js.map +7 -1
  591. package/dist/commonjs/encryption/EncryptionManager.js +58 -42
  592. package/dist/commonjs/encryption/EncryptionManager.js.map +7 -1
  593. package/dist/commonjs/encryption/EncryptionProcessor.js +346 -284
  594. package/dist/commonjs/encryption/EncryptionProcessor.js.map +7 -1
  595. package/dist/commonjs/encryption/EncryptionQueryBuilder.d.ts +2 -2
  596. package/dist/commonjs/encryption/EncryptionQueryBuilder.d.ts.map +1 -1
  597. package/dist/commonjs/encryption/EncryptionQueryBuilder.js +110 -99
  598. package/dist/commonjs/encryption/EncryptionQueryBuilder.js.map +7 -1
  599. package/dist/commonjs/encryption/EncryptionSettingForProperty.js +65 -33
  600. package/dist/commonjs/encryption/EncryptionSettingForProperty.js.map +7 -1
  601. package/dist/commonjs/encryption/EncryptionSettings.js +46 -30
  602. package/dist/commonjs/encryption/EncryptionSettings.js.map +7 -1
  603. package/dist/commonjs/encryption/KeyEncryptionKey.js +52 -28
  604. package/dist/commonjs/encryption/KeyEncryptionKey.js.map +7 -1
  605. package/dist/commonjs/encryption/Serializers/BooleanSerializer.d.ts +1 -1
  606. package/dist/commonjs/encryption/Serializers/BooleanSerializer.d.ts.map +1 -1
  607. package/dist/commonjs/encryption/Serializers/BooleanSerializer.js +38 -18
  608. package/dist/commonjs/encryption/Serializers/BooleanSerializer.js.map +7 -1
  609. package/dist/commonjs/encryption/Serializers/FloatSerializer.d.ts +1 -1
  610. package/dist/commonjs/encryption/Serializers/FloatSerializer.d.ts.map +1 -1
  611. package/dist/commonjs/encryption/Serializers/FloatSerializer.js +40 -20
  612. package/dist/commonjs/encryption/Serializers/FloatSerializer.js.map +7 -1
  613. package/dist/commonjs/encryption/Serializers/NumberSerializer.js +39 -19
  614. package/dist/commonjs/encryption/Serializers/NumberSerializer.js.map +7 -1
  615. package/dist/commonjs/encryption/Serializers/Serializer.js +16 -5
  616. package/dist/commonjs/encryption/Serializers/Serializer.js.map +7 -1
  617. package/dist/commonjs/encryption/Serializers/StringSerializer.d.ts +1 -1
  618. package/dist/commonjs/encryption/Serializers/StringSerializer.d.ts.map +1 -1
  619. package/dist/commonjs/encryption/Serializers/StringSerializer.js +34 -14
  620. package/dist/commonjs/encryption/Serializers/StringSerializer.js.map +7 -1
  621. package/dist/commonjs/encryption/Serializers/index.d.ts +1 -1
  622. package/dist/commonjs/encryption/Serializers/index.d.ts.map +1 -1
  623. package/dist/commonjs/encryption/Serializers/index.js +37 -14
  624. package/dist/commonjs/encryption/Serializers/index.js.map +7 -1
  625. package/dist/commonjs/encryption/enums/EncryptionAlgorithm.js +31 -13
  626. package/dist/commonjs/encryption/enums/EncryptionAlgorithm.js.map +7 -1
  627. package/dist/commonjs/encryption/enums/EncryptionKeyResolverName.js +31 -12
  628. package/dist/commonjs/encryption/enums/EncryptionKeyResolverName.js.map +7 -1
  629. package/dist/commonjs/encryption/enums/EncryptionType.js +32 -16
  630. package/dist/commonjs/encryption/enums/EncryptionType.js.map +7 -1
  631. package/dist/commonjs/encryption/enums/KeyEncryptionAlgorithm.js +31 -12
  632. package/dist/commonjs/encryption/enums/KeyEncryptionAlgorithm.js.map +7 -1
  633. package/dist/commonjs/encryption/enums/TypeMarker.js +35 -14
  634. package/dist/commonjs/encryption/enums/TypeMarker.js.map +7 -1
  635. package/dist/commonjs/encryption/enums/index.js +37 -14
  636. package/dist/commonjs/encryption/enums/index.js.map +7 -1
  637. package/dist/commonjs/encryption/index.d.ts +5 -5
  638. package/dist/commonjs/encryption/index.d.ts.map +1 -1
  639. package/dist/commonjs/encryption/index.js +56 -26
  640. package/dist/commonjs/encryption/index.js.map +7 -1
  641. package/dist/commonjs/extractPartitionKey.js +93 -91
  642. package/dist/commonjs/extractPartitionKey.js.map +7 -1
  643. package/dist/commonjs/globalEndpointManager.js +366 -357
  644. package/dist/commonjs/globalEndpointManager.js.map +7 -1
  645. package/dist/commonjs/globalPartitionEndpointManager.d.ts +2 -1
  646. package/dist/commonjs/globalPartitionEndpointManager.d.ts.map +1 -1
  647. package/dist/commonjs/globalPartitionEndpointManager.js +324 -297
  648. package/dist/commonjs/globalPartitionEndpointManager.js.map +7 -1
  649. package/dist/commonjs/index.d.ts +16 -16
  650. package/dist/commonjs/index.d.ts.map +1 -1
  651. package/dist/commonjs/index.js +178 -96
  652. package/dist/commonjs/index.js.map +7 -1
  653. package/dist/commonjs/plugins/Plugin.js +51 -44
  654. package/dist/commonjs/plugins/Plugin.js.map +7 -1
  655. package/dist/commonjs/queryExecutionContext/Aggregators/Aggregator.js +16 -3
  656. package/dist/commonjs/queryExecutionContext/Aggregators/Aggregator.js.map +7 -1
  657. package/dist/commonjs/queryExecutionContext/Aggregators/AverageAggregator.js +50 -29
  658. package/dist/commonjs/queryExecutionContext/Aggregators/AverageAggregator.js.map +7 -1
  659. package/dist/commonjs/queryExecutionContext/Aggregators/CountAggregator.js +47 -26
  660. package/dist/commonjs/queryExecutionContext/Aggregators/CountAggregator.js.map +7 -1
  661. package/dist/commonjs/queryExecutionContext/Aggregators/GlobalStatisticsAggregator.js +65 -54
  662. package/dist/commonjs/queryExecutionContext/Aggregators/GlobalStatisticsAggregator.js.map +7 -1
  663. package/dist/commonjs/queryExecutionContext/Aggregators/MakeListAggregator.js +39 -18
  664. package/dist/commonjs/queryExecutionContext/Aggregators/MakeListAggregator.js.map +7 -1
  665. package/dist/commonjs/queryExecutionContext/Aggregators/MakeSetAggregator.js +47 -29
  666. package/dist/commonjs/queryExecutionContext/Aggregators/MakeSetAggregator.js.map +7 -1
  667. package/dist/commonjs/queryExecutionContext/Aggregators/MaxAggregator.js +55 -38
  668. package/dist/commonjs/queryExecutionContext/Aggregators/MaxAggregator.js.map +7 -1
  669. package/dist/commonjs/queryExecutionContext/Aggregators/MinAggregator.js +59 -43
  670. package/dist/commonjs/queryExecutionContext/Aggregators/MinAggregator.js.map +7 -1
  671. package/dist/commonjs/queryExecutionContext/Aggregators/StaticValueAggregator.js +35 -14
  672. package/dist/commonjs/queryExecutionContext/Aggregators/StaticValueAggregator.js.map +7 -1
  673. package/dist/commonjs/queryExecutionContext/Aggregators/SumAggregator.js +45 -25
  674. package/dist/commonjs/queryExecutionContext/Aggregators/SumAggregator.js.map +7 -1
  675. package/dist/commonjs/queryExecutionContext/Aggregators/index.d.ts +1 -1
  676. package/dist/commonjs/queryExecutionContext/Aggregators/index.d.ts.map +1 -1
  677. package/dist/commonjs/queryExecutionContext/Aggregators/index.js +64 -39
  678. package/dist/commonjs/queryExecutionContext/Aggregators/index.js.map +7 -1
  679. package/dist/commonjs/queryExecutionContext/ContinuationTokenManager/BaseContinuationTokenManager.js +182 -166
  680. package/dist/commonjs/queryExecutionContext/ContinuationTokenManager/BaseContinuationTokenManager.js.map +7 -1
  681. package/dist/commonjs/queryExecutionContext/ContinuationTokenManager/ContinuationTokenManagerFactory.js +46 -30
  682. package/dist/commonjs/queryExecutionContext/ContinuationTokenManager/ContinuationTokenManagerFactory.js.map +7 -1
  683. package/dist/commonjs/queryExecutionContext/ContinuationTokenManager/OrderByQueryContinuationTokenManager.js +147 -124
  684. package/dist/commonjs/queryExecutionContext/ContinuationTokenManager/OrderByQueryContinuationTokenManager.js.map +7 -1
  685. package/dist/commonjs/queryExecutionContext/ContinuationTokenManager/ParallelQueryContinuationTokenManager.js +71 -65
  686. package/dist/commonjs/queryExecutionContext/ContinuationTokenManager/ParallelQueryContinuationTokenManager.js.map +7 -1
  687. package/dist/commonjs/queryExecutionContext/ContinuationTokenParser.js +39 -24
  688. package/dist/commonjs/queryExecutionContext/ContinuationTokenParser.js.map +7 -1
  689. package/dist/commonjs/queryExecutionContext/CosmosHeaders.js +16 -3
  690. package/dist/commonjs/queryExecutionContext/CosmosHeaders.js.map +7 -1
  691. package/dist/commonjs/queryExecutionContext/EndpointComponent/GroupByEndpointComponent.js +113 -107
  692. package/dist/commonjs/queryExecutionContext/EndpointComponent/GroupByEndpointComponent.js.map +7 -1
  693. package/dist/commonjs/queryExecutionContext/EndpointComponent/GroupByValueEndpointComponent.js +118 -107
  694. package/dist/commonjs/queryExecutionContext/EndpointComponent/GroupByValueEndpointComponent.js.map +7 -1
  695. package/dist/commonjs/queryExecutionContext/EndpointComponent/NonStreamingOrderByDistinctEndpointComponent.js +169 -155
  696. package/dist/commonjs/queryExecutionContext/EndpointComponent/NonStreamingOrderByDistinctEndpointComponent.js.map +7 -1
  697. package/dist/commonjs/queryExecutionContext/EndpointComponent/NonStreamingOrderByEndpointComponent.js +158 -143
  698. package/dist/commonjs/queryExecutionContext/EndpointComponent/NonStreamingOrderByEndpointComponent.js.map +7 -1
  699. package/dist/commonjs/queryExecutionContext/EndpointComponent/OffsetLimitEndpointComponent.js +85 -64
  700. package/dist/commonjs/queryExecutionContext/EndpointComponent/OffsetLimitEndpointComponent.js.map +7 -1
  701. package/dist/commonjs/queryExecutionContext/EndpointComponent/OrderByEndpointComponent.js +82 -58
  702. package/dist/commonjs/queryExecutionContext/EndpointComponent/OrderByEndpointComponent.js.map +7 -1
  703. package/dist/commonjs/queryExecutionContext/EndpointComponent/OrderedDistinctEndpointComponent.js +72 -48
  704. package/dist/commonjs/queryExecutionContext/EndpointComponent/OrderedDistinctEndpointComponent.js.map +7 -1
  705. package/dist/commonjs/queryExecutionContext/EndpointComponent/UnorderedDistinctEndpointComponent.js +61 -42
  706. package/dist/commonjs/queryExecutionContext/EndpointComponent/UnorderedDistinctEndpointComponent.js.map +7 -1
  707. package/dist/commonjs/queryExecutionContext/EndpointComponent/emptyGroup.js +31 -13
  708. package/dist/commonjs/queryExecutionContext/EndpointComponent/emptyGroup.js.map +7 -1
  709. package/dist/commonjs/queryExecutionContext/ExecutionContext.js +16 -3
  710. package/dist/commonjs/queryExecutionContext/ExecutionContext.js.map +7 -1
  711. package/dist/commonjs/queryExecutionContext/FetchResult.js +56 -38
  712. package/dist/commonjs/queryExecutionContext/FetchResult.js.map +7 -1
  713. package/dist/commonjs/queryExecutionContext/LegacyFetchImplementation.js +62 -55
  714. package/dist/commonjs/queryExecutionContext/LegacyFetchImplementation.js.map +7 -1
  715. package/dist/commonjs/queryExecutionContext/PartitionRangeManager.d.ts +8 -7
  716. package/dist/commonjs/queryExecutionContext/PartitionRangeManager.d.ts.map +1 -1
  717. package/dist/commonjs/queryExecutionContext/PartitionRangeManager.js +152 -155
  718. package/dist/commonjs/queryExecutionContext/PartitionRangeManager.js.map +7 -1
  719. package/dist/commonjs/queryExecutionContext/PartitionRangeUtils.js +94 -102
  720. package/dist/commonjs/queryExecutionContext/PartitionRangeUtils.js.map +7 -1
  721. package/dist/commonjs/queryExecutionContext/QueryControlFetchImplementation.js +113 -89
  722. package/dist/commonjs/queryExecutionContext/QueryControlFetchImplementation.js.map +7 -1
  723. package/dist/commonjs/queryExecutionContext/QueryValidationHelper.js +64 -66
  724. package/dist/commonjs/queryExecutionContext/QueryValidationHelper.js.map +7 -1
  725. package/dist/commonjs/queryExecutionContext/SqlQuerySpec.js +16 -3
  726. package/dist/commonjs/queryExecutionContext/SqlQuerySpec.js.map +7 -1
  727. package/dist/commonjs/queryExecutionContext/defaultQueryExecutionContext.js +220 -191
  728. package/dist/commonjs/queryExecutionContext/defaultQueryExecutionContext.js.map +7 -1
  729. package/dist/commonjs/queryExecutionContext/documentProducer.js +286 -276
  730. package/dist/commonjs/queryExecutionContext/documentProducer.js.map +7 -1
  731. package/dist/commonjs/queryExecutionContext/headerUtils.js +95 -89
  732. package/dist/commonjs/queryExecutionContext/headerUtils.js.map +7 -1
  733. package/dist/commonjs/queryExecutionContext/hybridQueryExecutionContext.js +499 -481
  734. package/dist/commonjs/queryExecutionContext/hybridQueryExecutionContext.js.map +7 -1
  735. package/dist/commonjs/queryExecutionContext/index.d.ts +2 -2
  736. package/dist/commonjs/queryExecutionContext/index.d.ts.map +1 -1
  737. package/dist/commonjs/queryExecutionContext/index.js +62 -29
  738. package/dist/commonjs/queryExecutionContext/index.js.map +7 -1
  739. package/dist/commonjs/queryExecutionContext/nonStreamingOrderByResponse.js +16 -5
  740. package/dist/commonjs/queryExecutionContext/nonStreamingOrderByResponse.js.map +7 -1
  741. package/dist/commonjs/queryExecutionContext/nonStreamingOrderByResult.js +16 -5
  742. package/dist/commonjs/queryExecutionContext/nonStreamingOrderByResult.js.map +7 -1
  743. package/dist/commonjs/queryExecutionContext/orderByComparator.js +107 -113
  744. package/dist/commonjs/queryExecutionContext/orderByComparator.js.map +7 -1
  745. package/dist/commonjs/queryExecutionContext/orderByDocumentProducerComparator.js +145 -134
  746. package/dist/commonjs/queryExecutionContext/orderByDocumentProducerComparator.js.map +7 -1
  747. package/dist/commonjs/queryExecutionContext/orderByQueryExecutionContext.js +91 -61
  748. package/dist/commonjs/queryExecutionContext/orderByQueryExecutionContext.js.map +7 -1
  749. package/dist/commonjs/queryExecutionContext/parallelQueryExecutionContext.js +86 -68
  750. package/dist/commonjs/queryExecutionContext/parallelQueryExecutionContext.js.map +7 -1
  751. package/dist/commonjs/queryExecutionContext/parallelQueryExecutionContextBase.d.ts +1 -1
  752. package/dist/commonjs/queryExecutionContext/parallelQueryExecutionContextBase.d.ts.map +1 -1
  753. package/dist/commonjs/queryExecutionContext/parallelQueryExecutionContextBase.js +842 -788
  754. package/dist/commonjs/queryExecutionContext/parallelQueryExecutionContextBase.js.map +7 -1
  755. package/dist/commonjs/queryExecutionContext/parallelQueryResult.js +36 -24
  756. package/dist/commonjs/queryExecutionContext/parallelQueryResult.js.map +7 -1
  757. package/dist/commonjs/queryExecutionContext/pipelinedQueryExecutionContext.js +286 -228
  758. package/dist/commonjs/queryExecutionContext/pipelinedQueryExecutionContext.js.map +7 -1
  759. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/FilterStrategy.js +16 -5
  760. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/FilterStrategy.js.map +7 -1
  761. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/OrderByQueryRangeStrategy.d.ts +2 -1
  762. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/OrderByQueryRangeStrategy.d.ts.map +1 -1
  763. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/OrderByQueryRangeStrategy.js +263 -299
  764. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/OrderByQueryRangeStrategy.js.map +7 -1
  765. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.d.ts +0 -4
  766. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.d.ts.map +1 -1
  767. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.js +94 -98
  768. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.js.map +7 -1
  769. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/RidSkipCountFilter.js +149 -177
  770. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/RidSkipCountFilter.js.map +7 -1
  771. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/TargetPartitionRangeManager.js +105 -92
  772. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/TargetPartitionRangeManager.js.map +7 -1
  773. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/TargetPartitionRangeStrategy.js +16 -5
  774. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/TargetPartitionRangeStrategy.js.map +7 -1
  775. package/dist/commonjs/queryExecutionContext/queryProcessingStrategy/OrderByQueryProcessingStrategy.js +68 -55
  776. package/dist/commonjs/queryExecutionContext/queryProcessingStrategy/OrderByQueryProcessingStrategy.js.map +7 -1
  777. package/dist/commonjs/queryExecutionContext/queryProcessingStrategy/ParallelQueryProcessingStrategy.js +52 -36
  778. package/dist/commonjs/queryExecutionContext/queryProcessingStrategy/ParallelQueryProcessingStrategy.js.map +7 -1
  779. package/dist/commonjs/queryExecutionContext/queryProcessingStrategy/QueryProcessingStrategy.js +16 -5
  780. package/dist/commonjs/queryExecutionContext/queryProcessingStrategy/QueryProcessingStrategy.js.map +7 -1
  781. package/dist/commonjs/queryExecutionContext/queryRangeMapping.js +16 -5
  782. package/dist/commonjs/queryExecutionContext/queryRangeMapping.js.map +7 -1
  783. package/dist/commonjs/queryIterator.js +411 -354
  784. package/dist/commonjs/queryIterator.js.map +7 -1
  785. package/dist/commonjs/queryMetrics/clientSideMetrics.js +49 -29
  786. package/dist/commonjs/queryMetrics/clientSideMetrics.js.map +7 -1
  787. package/dist/commonjs/queryMetrics/index.js +53 -19
  788. package/dist/commonjs/queryMetrics/index.js.map +7 -1
  789. package/dist/commonjs/queryMetrics/queryMetrics.js +189 -159
  790. package/dist/commonjs/queryMetrics/queryMetrics.js.map +7 -1
  791. package/dist/commonjs/queryMetrics/queryMetricsConstants.js +75 -57
  792. package/dist/commonjs/queryMetrics/queryMetricsConstants.js.map +7 -1
  793. package/dist/commonjs/queryMetrics/queryMetricsUtils.js +52 -38
  794. package/dist/commonjs/queryMetrics/queryMetricsUtils.js.map +7 -1
  795. package/dist/commonjs/queryMetrics/queryPreparationTime.js +110 -65
  796. package/dist/commonjs/queryMetrics/queryPreparationTime.js.map +7 -1
  797. package/dist/commonjs/queryMetrics/runtimeExecutionTimes.js +120 -68
  798. package/dist/commonjs/queryMetrics/runtimeExecutionTimes.js.map +7 -1
  799. package/dist/commonjs/queryMetrics/timeSpan.js +206 -217
  800. package/dist/commonjs/queryMetrics/timeSpan.js.map +7 -1
  801. package/dist/commonjs/request/ErrorResponse.js +46 -27
  802. package/dist/commonjs/request/ErrorResponse.js.map +7 -1
  803. package/dist/commonjs/request/FeedOptions.js +16 -3
  804. package/dist/commonjs/request/FeedOptions.js.map +7 -1
  805. package/dist/commonjs/request/FeedResponse.js +60 -40
  806. package/dist/commonjs/request/FeedResponse.js.map +7 -1
  807. package/dist/commonjs/request/RequestContext.js +16 -3
  808. package/dist/commonjs/request/RequestContext.js.map +7 -1
  809. package/dist/commonjs/request/RequestHandler.js +173 -153
  810. package/dist/commonjs/request/RequestHandler.js.map +7 -1
  811. package/dist/commonjs/request/RequestOptions.js +16 -3
  812. package/dist/commonjs/request/RequestOptions.js.map +7 -1
  813. package/dist/commonjs/request/ResourceResponse.js +49 -27
  814. package/dist/commonjs/request/ResourceResponse.js.map +7 -1
  815. package/dist/commonjs/request/Response.js +16 -3
  816. package/dist/commonjs/request/Response.js.map +7 -1
  817. package/dist/commonjs/request/SharedOptions.js +16 -3
  818. package/dist/commonjs/request/SharedOptions.js.map +7 -1
  819. package/dist/commonjs/request/StatusCodes.js +16 -5
  820. package/dist/commonjs/request/StatusCodes.js.map +7 -1
  821. package/dist/commonjs/request/TimeoutError.js +35 -16
  822. package/dist/commonjs/request/TimeoutError.js.map +7 -1
  823. package/dist/commonjs/request/defaultAgent.js +46 -18
  824. package/dist/commonjs/request/defaultAgent.js.map +7 -1
  825. package/dist/commonjs/request/globalStatistics.js +16 -5
  826. package/dist/commonjs/request/globalStatistics.js.map +7 -1
  827. package/dist/commonjs/request/hybridSearchQueryResult.d.ts +1 -1
  828. package/dist/commonjs/request/hybridSearchQueryResult.d.ts.map +1 -1
  829. package/dist/commonjs/request/hybridSearchQueryResult.js +62 -45
  830. package/dist/commonjs/request/hybridSearchQueryResult.js.map +7 -1
  831. package/dist/commonjs/request/index.d.ts +8 -8
  832. package/dist/commonjs/request/index.d.ts.map +1 -1
  833. package/dist/commonjs/request/index.js +37 -16
  834. package/dist/commonjs/request/index.js.map +7 -1
  835. package/dist/commonjs/request/request.js +188 -186
  836. package/dist/commonjs/request/request.js.map +7 -1
  837. package/dist/commonjs/retry/RetryContext.js +16 -3
  838. package/dist/commonjs/retry/RetryContext.js.map +7 -1
  839. package/dist/commonjs/retry/RetryPolicy.js +16 -3
  840. package/dist/commonjs/retry/RetryPolicy.js.map +7 -1
  841. package/dist/commonjs/retry/bulkExecutionRetryPolicy.js +65 -56
  842. package/dist/commonjs/retry/bulkExecutionRetryPolicy.js.map +7 -1
  843. package/dist/commonjs/retry/defaultRetryPolicy.js +68 -115
  844. package/dist/commonjs/retry/defaultRetryPolicy.js.map +7 -1
  845. package/dist/commonjs/retry/endpointDiscoveryRetryPolicy.d.ts +1 -1
  846. package/dist/commonjs/retry/endpointDiscoveryRetryPolicy.d.ts.map +1 -1
  847. package/dist/commonjs/retry/endpointDiscoveryRetryPolicy.js +98 -73
  848. package/dist/commonjs/retry/endpointDiscoveryRetryPolicy.js.map +7 -1
  849. package/dist/commonjs/retry/index.d.ts +1 -1
  850. package/dist/commonjs/retry/index.d.ts.map +1 -1
  851. package/dist/commonjs/retry/index.js +30 -12
  852. package/dist/commonjs/retry/index.js.map +7 -1
  853. package/dist/commonjs/retry/resourceThrottleRetryPolicy.js +74 -61
  854. package/dist/commonjs/retry/resourceThrottleRetryPolicy.js.map +7 -1
  855. package/dist/commonjs/retry/retryOptions.js +16 -3
  856. package/dist/commonjs/retry/retryOptions.js.map +7 -1
  857. package/dist/commonjs/retry/retryUtility.js +169 -133
  858. package/dist/commonjs/retry/retryUtility.js.map +7 -1
  859. package/dist/commonjs/retry/sessionRetryPolicy.js +84 -73
  860. package/dist/commonjs/retry/sessionRetryPolicy.js.map +7 -1
  861. package/dist/commonjs/retry/timeoutFailoverRetryPolicy.d.ts +1 -1
  862. package/dist/commonjs/retry/timeoutFailoverRetryPolicy.d.ts.map +1 -1
  863. package/dist/commonjs/retry/timeoutFailoverRetryPolicy.js +124 -119
  864. package/dist/commonjs/retry/timeoutFailoverRetryPolicy.js.map +7 -1
  865. package/dist/commonjs/routing/CollectionRoutingMapFactory.js +70 -67
  866. package/dist/commonjs/routing/CollectionRoutingMapFactory.js.map +7 -1
  867. package/dist/commonjs/routing/QueryRange.js +93 -66
  868. package/dist/commonjs/routing/QueryRange.js.map +7 -1
  869. package/dist/commonjs/routing/inMemoryCollectionRoutingMap.js +112 -84
  870. package/dist/commonjs/routing/inMemoryCollectionRoutingMap.js.map +7 -1
  871. package/dist/commonjs/routing/index.js +28 -10
  872. package/dist/commonjs/routing/index.js.map +7 -1
  873. package/dist/commonjs/routing/partitionKeyRangeCache.js +83 -56
  874. package/dist/commonjs/routing/partitionKeyRangeCache.js.map +7 -1
  875. package/dist/commonjs/routing/smartRoutingMapProvider.js +131 -110
  876. package/dist/commonjs/routing/smartRoutingMapProvider.js.map +7 -1
  877. package/dist/commonjs/session/SessionContext.js +16 -3
  878. package/dist/commonjs/session/SessionContext.js.map +7 -1
  879. package/dist/commonjs/session/VectorSessionToken.js +130 -125
  880. package/dist/commonjs/session/VectorSessionToken.js.map +7 -1
  881. package/dist/commonjs/session/sessionContainer.js +135 -127
  882. package/dist/commonjs/session/sessionContainer.js.map +7 -1
  883. package/dist/commonjs/tsdoc-metadata.json +1 -1
  884. package/dist/commonjs/utils/SasToken.js +101 -120
  885. package/dist/commonjs/utils/SasToken.js.map +7 -1
  886. package/dist/commonjs/utils/atob.js +24 -7
  887. package/dist/commonjs/utils/atob.js.map +7 -1
  888. package/dist/commonjs/utils/batch.js +196 -197
  889. package/dist/commonjs/utils/batch.js.map +7 -1
  890. package/dist/commonjs/utils/cachedClient.js +32 -11
  891. package/dist/commonjs/utils/cachedClient.js.map +7 -1
  892. package/dist/commonjs/utils/checkURL.js +34 -14
  893. package/dist/commonjs/utils/checkURL.js.map +7 -1
  894. package/dist/commonjs/utils/diagnostics.js +107 -118
  895. package/dist/commonjs/utils/diagnostics.js.map +7 -1
  896. package/dist/commonjs/utils/digest.js +31 -10
  897. package/dist/commonjs/utils/digest.js.map +7 -1
  898. package/dist/commonjs/utils/encode.js +44 -23
  899. package/dist/commonjs/utils/encode.js.map +7 -1
  900. package/dist/commonjs/utils/envUtils.js +40 -10
  901. package/dist/commonjs/utils/envUtils.js.map +7 -1
  902. package/dist/commonjs/utils/fixedSizePriorityQueue.js +86 -55
  903. package/dist/commonjs/utils/fixedSizePriorityQueue.js.map +7 -1
  904. package/dist/commonjs/utils/globalCrypto.js +29 -10
  905. package/dist/commonjs/utils/globalCrypto.js.map +7 -1
  906. package/dist/commonjs/utils/hashObject.js +41 -11
  907. package/dist/commonjs/utils/hashObject.js.map +7 -1
  908. package/dist/commonjs/utils/hashing/encoding/number.js +73 -56
  909. package/dist/commonjs/utils/hashing/encoding/number.js.map +7 -1
  910. package/dist/commonjs/utils/hashing/encoding/prefix.js +50 -29
  911. package/dist/commonjs/utils/hashing/encoding/prefix.js.map +7 -1
  912. package/dist/commonjs/utils/hashing/encoding/string.js +45 -27
  913. package/dist/commonjs/utils/hashing/encoding/string.js.map +7 -1
  914. package/dist/commonjs/utils/hashing/hash.d.ts +1 -1
  915. package/dist/commonjs/utils/hashing/hash.d.ts.map +1 -1
  916. package/dist/commonjs/utils/hashing/hash.js +55 -43
  917. package/dist/commonjs/utils/hashing/hash.js.map +7 -1
  918. package/dist/commonjs/utils/hashing/multiHash.js +29 -11
  919. package/dist/commonjs/utils/hashing/multiHash.js.map +7 -1
  920. package/dist/commonjs/utils/hashing/murmurHash.js +362 -412
  921. package/dist/commonjs/utils/hashing/murmurHash.js.map +7 -1
  922. package/dist/commonjs/utils/hashing/v1.js +101 -71
  923. package/dist/commonjs/utils/hashing/v1.js.map +7 -1
  924. package/dist/commonjs/utils/hashing/v2.js +84 -63
  925. package/dist/commonjs/utils/hashing/v2.js.map +7 -1
  926. package/dist/commonjs/utils/headers.js +45 -33
  927. package/dist/commonjs/utils/headers.js.map +7 -1
  928. package/dist/commonjs/utils/hmac.js +29 -8
  929. package/dist/commonjs/utils/hmac.js.map +7 -1
  930. package/dist/commonjs/utils/nonStreamingOrderByMap.js +64 -52
  931. package/dist/commonjs/utils/nonStreamingOrderByMap.js.map +7 -1
  932. package/dist/commonjs/utils/offers.js +36 -13
  933. package/dist/commonjs/utils/offers.js.map +7 -1
  934. package/dist/commonjs/utils/patch.js +33 -12
  935. package/dist/commonjs/utils/patch.js.map +7 -1
  936. package/dist/commonjs/utils/strings.js +28 -7
  937. package/dist/commonjs/utils/strings.js.map +7 -1
  938. package/dist/commonjs/utils/supportedQueryFeaturesBuilder.js +37 -16
  939. package/dist/commonjs/utils/supportedQueryFeaturesBuilder.js.map +7 -1
  940. package/dist/commonjs/utils/time.js +39 -30
  941. package/dist/commonjs/utils/time.js.map +7 -1
  942. package/dist/commonjs/utils/tracing.js +33 -17
  943. package/dist/commonjs/utils/tracing.js.map +7 -1
  944. package/dist/commonjs/utils/typeChecks.js +50 -60
  945. package/dist/commonjs/utils/typeChecks.js.map +7 -1
  946. package/dist/commonjs/utils/types.js +16 -5
  947. package/dist/commonjs/utils/types.js.map +7 -1
  948. package/dist/commonjs/utils/uint8.js +45 -24
  949. package/dist/commonjs/utils/uint8.js.map +7 -1
  950. package/dist/esm/PartitionKeyRangeFailoverInfo.d.ts +1 -1
  951. package/dist/esm/PartitionKeyRangeFailoverInfo.d.ts.map +1 -1
  952. package/dist/esm/PartitionKeyRangeFailoverInfo.js +0 -2
  953. package/dist/esm/PartitionKeyRangeFailoverInfo.js.map +1 -1
  954. package/dist/esm/bulk/index.d.ts +1 -1
  955. package/dist/esm/bulk/index.d.ts.map +1 -1
  956. package/dist/esm/bulk/index.js.map +1 -1
  957. package/dist/esm/client/ChangeFeed/ChangeFeedForPartitionKey.d.ts +2 -2
  958. package/dist/esm/client/ChangeFeed/ChangeFeedForPartitionKey.d.ts.map +1 -1
  959. package/dist/esm/client/ChangeFeed/ChangeFeedForPartitionKey.js.map +1 -1
  960. package/dist/esm/client/ChangeFeed/buildChangeFeedIterator.js.map +1 -1
  961. package/dist/esm/client/ChangeFeed/changeFeedUtils.d.ts +4 -4
  962. package/dist/esm/client/ChangeFeed/changeFeedUtils.d.ts.map +1 -1
  963. package/dist/esm/client/ChangeFeed/changeFeedUtils.js.map +1 -1
  964. package/dist/esm/client/ChangeFeed/index.d.ts +2 -2
  965. package/dist/esm/client/ChangeFeed/index.d.ts.map +1 -1
  966. package/dist/esm/client/ChangeFeed/index.js.map +1 -1
  967. package/dist/esm/client/ClientUtils.d.ts +1 -1
  968. package/dist/esm/client/ClientUtils.d.ts.map +1 -1
  969. package/dist/esm/client/ClientUtils.js.map +1 -1
  970. package/dist/esm/client/Conflict/index.d.ts +2 -2
  971. package/dist/esm/client/Conflict/index.d.ts.map +1 -1
  972. package/dist/esm/client/Conflict/index.js.map +1 -1
  973. package/dist/esm/client/Container/ContainerDefinition.d.ts +1 -1
  974. package/dist/esm/client/Container/ContainerDefinition.d.ts.map +1 -1
  975. package/dist/esm/client/Container/ContainerDefinition.js.map +1 -1
  976. package/dist/esm/client/Container/index.d.ts +4 -4
  977. package/dist/esm/client/Container/index.d.ts.map +1 -1
  978. package/dist/esm/client/Container/index.js.map +1 -1
  979. package/dist/esm/client/Database/index.d.ts +2 -2
  980. package/dist/esm/client/Database/index.d.ts.map +1 -1
  981. package/dist/esm/client/Database/index.js.map +1 -1
  982. package/dist/esm/client/Item/Items.d.ts.map +1 -1
  983. package/dist/esm/client/Item/Items.js.map +1 -1
  984. package/dist/esm/client/Item/index.d.ts +1 -1
  985. package/dist/esm/client/Item/index.d.ts.map +1 -1
  986. package/dist/esm/client/Item/index.js.map +1 -1
  987. package/dist/esm/client/Offer/index.d.ts +1 -1
  988. package/dist/esm/client/Offer/index.d.ts.map +1 -1
  989. package/dist/esm/client/Offer/index.js.map +1 -1
  990. package/dist/esm/client/Permission/index.d.ts +2 -2
  991. package/dist/esm/client/Permission/index.d.ts.map +1 -1
  992. package/dist/esm/client/Permission/index.js.map +1 -1
  993. package/dist/esm/client/StoredProcedure/index.d.ts +1 -1
  994. package/dist/esm/client/StoredProcedure/index.d.ts.map +1 -1
  995. package/dist/esm/client/StoredProcedure/index.js.map +1 -1
  996. package/dist/esm/client/Trigger/index.d.ts +1 -1
  997. package/dist/esm/client/Trigger/index.d.ts.map +1 -1
  998. package/dist/esm/client/Trigger/index.js.map +1 -1
  999. package/dist/esm/client/User/index.d.ts +1 -1
  1000. package/dist/esm/client/User/index.d.ts.map +1 -1
  1001. package/dist/esm/client/User/index.js.map +1 -1
  1002. package/dist/esm/client/UserDefinedFunction/index.d.ts +1 -1
  1003. package/dist/esm/client/UserDefinedFunction/index.d.ts.map +1 -1
  1004. package/dist/esm/client/UserDefinedFunction/index.js.map +1 -1
  1005. package/dist/esm/client/index.d.ts +1 -1
  1006. package/dist/esm/client/index.d.ts.map +1 -1
  1007. package/dist/esm/client/index.js +0 -1
  1008. package/dist/esm/client/index.js.map +1 -1
  1009. package/dist/esm/common/constants.js +1 -1
  1010. package/dist/esm/common/constants.js.map +1 -1
  1011. package/dist/esm/common/helper.d.ts +4 -4
  1012. package/dist/esm/common/helper.d.ts.map +1 -1
  1013. package/dist/esm/common/helper.js.map +1 -1
  1014. package/dist/esm/common/platform.d.ts +1 -1
  1015. package/dist/esm/common/platform.d.ts.map +1 -1
  1016. package/dist/esm/common/platform.js.map +1 -1
  1017. package/dist/esm/diagnostics/DiagnosticNodeInternal.d.ts +1 -1
  1018. package/dist/esm/diagnostics/DiagnosticNodeInternal.d.ts.map +1 -1
  1019. package/dist/esm/diagnostics/DiagnosticNodeInternal.js.map +1 -1
  1020. package/dist/esm/documents/index.d.ts +4 -4
  1021. package/dist/esm/documents/index.d.ts.map +1 -1
  1022. package/dist/esm/documents/index.js +0 -4
  1023. package/dist/esm/documents/index.js.map +1 -1
  1024. package/dist/esm/encryption/AeadAes256CbcHmacSha256Algorithm/AeadAes256CbcHmacSha256Algorithm.d.ts +1 -1
  1025. package/dist/esm/encryption/AeadAes256CbcHmacSha256Algorithm/AeadAes256CbcHmacSha256Algorithm.d.ts.map +1 -1
  1026. package/dist/esm/encryption/AeadAes256CbcHmacSha256Algorithm/AeadAes256CbcHmacSha256Algorithm.js.map +1 -1
  1027. package/dist/esm/encryption/ClientEncryptionIncludedPath.d.ts +1 -1
  1028. package/dist/esm/encryption/ClientEncryptionIncludedPath.d.ts.map +1 -1
  1029. package/dist/esm/encryption/ClientEncryptionIncludedPath.js.map +1 -1
  1030. package/dist/esm/encryption/ClientEncryptionKey/ClientEncryptionKeyResponse.d.ts +4 -4
  1031. package/dist/esm/encryption/ClientEncryptionKey/ClientEncryptionKeyResponse.d.ts.map +1 -1
  1032. package/dist/esm/encryption/ClientEncryptionKey/ClientEncryptionKeyResponse.js.map +1 -1
  1033. package/dist/esm/encryption/ClientEncryptionKey/index.d.ts +2 -2
  1034. package/dist/esm/encryption/ClientEncryptionKey/index.d.ts.map +1 -1
  1035. package/dist/esm/encryption/ClientEncryptionKey/index.js.map +1 -1
  1036. package/dist/esm/encryption/EncryptionKeyResolver/index.d.ts +1 -1
  1037. package/dist/esm/encryption/EncryptionKeyResolver/index.d.ts.map +1 -1
  1038. package/dist/esm/encryption/EncryptionKeyResolver/index.js.map +1 -1
  1039. package/dist/esm/encryption/EncryptionQueryBuilder.d.ts +2 -2
  1040. package/dist/esm/encryption/EncryptionQueryBuilder.d.ts.map +1 -1
  1041. package/dist/esm/encryption/EncryptionQueryBuilder.js.map +1 -1
  1042. package/dist/esm/encryption/Serializers/BooleanSerializer.d.ts +1 -1
  1043. package/dist/esm/encryption/Serializers/BooleanSerializer.d.ts.map +1 -1
  1044. package/dist/esm/encryption/Serializers/BooleanSerializer.js.map +1 -1
  1045. package/dist/esm/encryption/Serializers/FloatSerializer.d.ts +1 -1
  1046. package/dist/esm/encryption/Serializers/FloatSerializer.d.ts.map +1 -1
  1047. package/dist/esm/encryption/Serializers/FloatSerializer.js.map +1 -1
  1048. package/dist/esm/encryption/Serializers/StringSerializer.d.ts +1 -1
  1049. package/dist/esm/encryption/Serializers/StringSerializer.d.ts.map +1 -1
  1050. package/dist/esm/encryption/Serializers/StringSerializer.js.map +1 -1
  1051. package/dist/esm/encryption/Serializers/index.d.ts +1 -1
  1052. package/dist/esm/encryption/Serializers/index.d.ts.map +1 -1
  1053. package/dist/esm/encryption/Serializers/index.js.map +1 -1
  1054. package/dist/esm/encryption/index.d.ts +5 -5
  1055. package/dist/esm/encryption/index.d.ts.map +1 -1
  1056. package/dist/esm/encryption/index.js.map +1 -1
  1057. package/dist/esm/globalPartitionEndpointManager.d.ts +2 -1
  1058. package/dist/esm/globalPartitionEndpointManager.d.ts.map +1 -1
  1059. package/dist/esm/globalPartitionEndpointManager.js.map +1 -1
  1060. package/dist/esm/index.d.ts +16 -16
  1061. package/dist/esm/index.d.ts.map +1 -1
  1062. package/dist/esm/index.js +1 -1
  1063. package/dist/esm/index.js.map +1 -1
  1064. package/dist/esm/queryExecutionContext/Aggregators/index.d.ts +1 -1
  1065. package/dist/esm/queryExecutionContext/Aggregators/index.d.ts.map +1 -1
  1066. package/dist/esm/queryExecutionContext/Aggregators/index.js.map +1 -1
  1067. package/dist/esm/queryExecutionContext/ContinuationTokenManager/BaseContinuationTokenManager.js +26 -18
  1068. package/dist/esm/queryExecutionContext/ContinuationTokenManager/BaseContinuationTokenManager.js.map +1 -1
  1069. package/dist/esm/queryExecutionContext/ContinuationTokenManager/OrderByQueryContinuationTokenManager.js +48 -25
  1070. package/dist/esm/queryExecutionContext/ContinuationTokenManager/OrderByQueryContinuationTokenManager.js.map +1 -1
  1071. package/dist/esm/queryExecutionContext/ContinuationTokenManager/ParallelQueryContinuationTokenManager.js +17 -26
  1072. package/dist/esm/queryExecutionContext/ContinuationTokenManager/ParallelQueryContinuationTokenManager.js.map +1 -1
  1073. package/dist/esm/queryExecutionContext/PartitionRangeManager.d.ts +8 -7
  1074. package/dist/esm/queryExecutionContext/PartitionRangeManager.d.ts.map +1 -1
  1075. package/dist/esm/queryExecutionContext/PartitionRangeManager.js +13 -12
  1076. package/dist/esm/queryExecutionContext/PartitionRangeManager.js.map +1 -1
  1077. package/dist/esm/queryExecutionContext/index.d.ts +2 -2
  1078. package/dist/esm/queryExecutionContext/index.d.ts.map +1 -1
  1079. package/dist/esm/queryExecutionContext/index.js +0 -2
  1080. package/dist/esm/queryExecutionContext/index.js.map +1 -1
  1081. package/dist/esm/queryExecutionContext/parallelQueryExecutionContextBase.d.ts +1 -1
  1082. package/dist/esm/queryExecutionContext/parallelQueryExecutionContextBase.d.ts.map +1 -1
  1083. package/dist/esm/queryExecutionContext/parallelQueryExecutionContextBase.js.map +1 -1
  1084. package/dist/esm/queryExecutionContext/queryFilteringStrategy/OrderByQueryRangeStrategy.d.ts +2 -1
  1085. package/dist/esm/queryExecutionContext/queryFilteringStrategy/OrderByQueryRangeStrategy.d.ts.map +1 -1
  1086. package/dist/esm/queryExecutionContext/queryFilteringStrategy/OrderByQueryRangeStrategy.js +6 -5
  1087. package/dist/esm/queryExecutionContext/queryFilteringStrategy/OrderByQueryRangeStrategy.js.map +1 -1
  1088. package/dist/esm/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.d.ts +0 -4
  1089. package/dist/esm/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.d.ts.map +1 -1
  1090. package/dist/esm/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.js +2 -10
  1091. package/dist/esm/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.js.map +1 -1
  1092. package/dist/esm/request/hybridSearchQueryResult.d.ts +1 -1
  1093. package/dist/esm/request/hybridSearchQueryResult.d.ts.map +1 -1
  1094. package/dist/esm/request/hybridSearchQueryResult.js.map +1 -1
  1095. package/dist/esm/request/index.d.ts +8 -8
  1096. package/dist/esm/request/index.d.ts.map +1 -1
  1097. package/dist/esm/request/index.js +0 -1
  1098. package/dist/esm/request/index.js.map +1 -1
  1099. package/dist/esm/retry/endpointDiscoveryRetryPolicy.d.ts +1 -1
  1100. package/dist/esm/retry/endpointDiscoveryRetryPolicy.d.ts.map +1 -1
  1101. package/dist/esm/retry/endpointDiscoveryRetryPolicy.js.map +1 -1
  1102. package/dist/esm/retry/index.d.ts +1 -1
  1103. package/dist/esm/retry/index.d.ts.map +1 -1
  1104. package/dist/esm/retry/index.js +0 -3
  1105. package/dist/esm/retry/index.js.map +1 -1
  1106. package/dist/esm/retry/timeoutFailoverRetryPolicy.d.ts +1 -1
  1107. package/dist/esm/retry/timeoutFailoverRetryPolicy.d.ts.map +1 -1
  1108. package/dist/esm/retry/timeoutFailoverRetryPolicy.js.map +1 -1
  1109. package/dist/esm/utils/hashing/hash.d.ts +1 -1
  1110. package/dist/esm/utils/hashing/hash.d.ts.map +1 -1
  1111. package/dist/esm/utils/hashing/hash.js.map +1 -1
  1112. package/dist/react-native/PartitionKeyRangeFailoverInfo.d.ts +1 -1
  1113. package/dist/react-native/PartitionKeyRangeFailoverInfo.d.ts.map +1 -1
  1114. package/dist/react-native/PartitionKeyRangeFailoverInfo.js +0 -2
  1115. package/dist/react-native/PartitionKeyRangeFailoverInfo.js.map +1 -1
  1116. package/dist/react-native/bulk/index.d.ts +1 -1
  1117. package/dist/react-native/bulk/index.d.ts.map +1 -1
  1118. package/dist/react-native/bulk/index.js.map +1 -1
  1119. package/dist/react-native/client/ChangeFeed/ChangeFeedForPartitionKey.d.ts +2 -2
  1120. package/dist/react-native/client/ChangeFeed/ChangeFeedForPartitionKey.d.ts.map +1 -1
  1121. package/dist/react-native/client/ChangeFeed/ChangeFeedForPartitionKey.js.map +1 -1
  1122. package/dist/react-native/client/ChangeFeed/buildChangeFeedIterator.js.map +1 -1
  1123. package/dist/react-native/client/ChangeFeed/changeFeedUtils.d.ts +4 -4
  1124. package/dist/react-native/client/ChangeFeed/changeFeedUtils.d.ts.map +1 -1
  1125. package/dist/react-native/client/ChangeFeed/changeFeedUtils.js.map +1 -1
  1126. package/dist/react-native/client/ChangeFeed/index.d.ts +2 -2
  1127. package/dist/react-native/client/ChangeFeed/index.d.ts.map +1 -1
  1128. package/dist/react-native/client/ChangeFeed/index.js.map +1 -1
  1129. package/dist/react-native/client/ClientUtils.d.ts +1 -1
  1130. package/dist/react-native/client/ClientUtils.d.ts.map +1 -1
  1131. package/dist/react-native/client/ClientUtils.js.map +1 -1
  1132. package/dist/react-native/client/Conflict/index.d.ts +2 -2
  1133. package/dist/react-native/client/Conflict/index.d.ts.map +1 -1
  1134. package/dist/react-native/client/Conflict/index.js.map +1 -1
  1135. package/dist/react-native/client/Container/ContainerDefinition.d.ts +1 -1
  1136. package/dist/react-native/client/Container/ContainerDefinition.d.ts.map +1 -1
  1137. package/dist/react-native/client/Container/ContainerDefinition.js.map +1 -1
  1138. package/dist/react-native/client/Container/index.d.ts +4 -4
  1139. package/dist/react-native/client/Container/index.d.ts.map +1 -1
  1140. package/dist/react-native/client/Container/index.js.map +1 -1
  1141. package/dist/react-native/client/Database/index.d.ts +2 -2
  1142. package/dist/react-native/client/Database/index.d.ts.map +1 -1
  1143. package/dist/react-native/client/Database/index.js.map +1 -1
  1144. package/dist/react-native/client/Item/Items.d.ts.map +1 -1
  1145. package/dist/react-native/client/Item/Items.js.map +1 -1
  1146. package/dist/react-native/client/Item/index.d.ts +1 -1
  1147. package/dist/react-native/client/Item/index.d.ts.map +1 -1
  1148. package/dist/react-native/client/Item/index.js.map +1 -1
  1149. package/dist/react-native/client/Offer/index.d.ts +1 -1
  1150. package/dist/react-native/client/Offer/index.d.ts.map +1 -1
  1151. package/dist/react-native/client/Offer/index.js.map +1 -1
  1152. package/dist/react-native/client/Permission/index.d.ts +2 -2
  1153. package/dist/react-native/client/Permission/index.d.ts.map +1 -1
  1154. package/dist/react-native/client/Permission/index.js.map +1 -1
  1155. package/dist/react-native/client/StoredProcedure/index.d.ts +1 -1
  1156. package/dist/react-native/client/StoredProcedure/index.d.ts.map +1 -1
  1157. package/dist/react-native/client/StoredProcedure/index.js.map +1 -1
  1158. package/dist/react-native/client/Trigger/index.d.ts +1 -1
  1159. package/dist/react-native/client/Trigger/index.d.ts.map +1 -1
  1160. package/dist/react-native/client/Trigger/index.js.map +1 -1
  1161. package/dist/react-native/client/User/index.d.ts +1 -1
  1162. package/dist/react-native/client/User/index.d.ts.map +1 -1
  1163. package/dist/react-native/client/User/index.js.map +1 -1
  1164. package/dist/react-native/client/UserDefinedFunction/index.d.ts +1 -1
  1165. package/dist/react-native/client/UserDefinedFunction/index.d.ts.map +1 -1
  1166. package/dist/react-native/client/UserDefinedFunction/index.js.map +1 -1
  1167. package/dist/react-native/client/index.d.ts +1 -1
  1168. package/dist/react-native/client/index.d.ts.map +1 -1
  1169. package/dist/react-native/client/index.js +0 -1
  1170. package/dist/react-native/client/index.js.map +1 -1
  1171. package/dist/react-native/common/constants.js +1 -1
  1172. package/dist/react-native/common/constants.js.map +1 -1
  1173. package/dist/react-native/common/helper.d.ts +4 -4
  1174. package/dist/react-native/common/helper.d.ts.map +1 -1
  1175. package/dist/react-native/common/helper.js.map +1 -1
  1176. package/dist/react-native/common/platform.d.ts +1 -1
  1177. package/dist/react-native/common/platform.d.ts.map +1 -1
  1178. package/dist/react-native/common/platform.js.map +1 -1
  1179. package/dist/react-native/diagnostics/DiagnosticNodeInternal.d.ts +1 -1
  1180. package/dist/react-native/diagnostics/DiagnosticNodeInternal.d.ts.map +1 -1
  1181. package/dist/react-native/diagnostics/DiagnosticNodeInternal.js.map +1 -1
  1182. package/dist/react-native/documents/index.d.ts +4 -4
  1183. package/dist/react-native/documents/index.d.ts.map +1 -1
  1184. package/dist/react-native/documents/index.js +0 -4
  1185. package/dist/react-native/documents/index.js.map +1 -1
  1186. package/dist/react-native/encryption/AeadAes256CbcHmacSha256Algorithm/AeadAes256CbcHmacSha256Algorithm.d.ts +1 -1
  1187. package/dist/react-native/encryption/AeadAes256CbcHmacSha256Algorithm/AeadAes256CbcHmacSha256Algorithm.d.ts.map +1 -1
  1188. package/dist/react-native/encryption/AeadAes256CbcHmacSha256Algorithm/AeadAes256CbcHmacSha256Algorithm.js.map +1 -1
  1189. package/dist/react-native/encryption/ClientEncryptionIncludedPath.d.ts +1 -1
  1190. package/dist/react-native/encryption/ClientEncryptionIncludedPath.d.ts.map +1 -1
  1191. package/dist/react-native/encryption/ClientEncryptionIncludedPath.js.map +1 -1
  1192. package/dist/react-native/encryption/ClientEncryptionKey/ClientEncryptionKeyResponse.d.ts +4 -4
  1193. package/dist/react-native/encryption/ClientEncryptionKey/ClientEncryptionKeyResponse.d.ts.map +1 -1
  1194. package/dist/react-native/encryption/ClientEncryptionKey/ClientEncryptionKeyResponse.js.map +1 -1
  1195. package/dist/react-native/encryption/ClientEncryptionKey/index.d.ts +2 -2
  1196. package/dist/react-native/encryption/ClientEncryptionKey/index.d.ts.map +1 -1
  1197. package/dist/react-native/encryption/ClientEncryptionKey/index.js.map +1 -1
  1198. package/dist/react-native/encryption/EncryptionKeyResolver/index.d.ts +1 -1
  1199. package/dist/react-native/encryption/EncryptionKeyResolver/index.d.ts.map +1 -1
  1200. package/dist/react-native/encryption/EncryptionKeyResolver/index.js.map +1 -1
  1201. package/dist/react-native/encryption/EncryptionQueryBuilder.d.ts +2 -2
  1202. package/dist/react-native/encryption/EncryptionQueryBuilder.d.ts.map +1 -1
  1203. package/dist/react-native/encryption/EncryptionQueryBuilder.js.map +1 -1
  1204. package/dist/react-native/encryption/Serializers/BooleanSerializer.d.ts +1 -1
  1205. package/dist/react-native/encryption/Serializers/BooleanSerializer.d.ts.map +1 -1
  1206. package/dist/react-native/encryption/Serializers/BooleanSerializer.js.map +1 -1
  1207. package/dist/react-native/encryption/Serializers/FloatSerializer.d.ts +1 -1
  1208. package/dist/react-native/encryption/Serializers/FloatSerializer.d.ts.map +1 -1
  1209. package/dist/react-native/encryption/Serializers/FloatSerializer.js.map +1 -1
  1210. package/dist/react-native/encryption/Serializers/StringSerializer.d.ts +1 -1
  1211. package/dist/react-native/encryption/Serializers/StringSerializer.d.ts.map +1 -1
  1212. package/dist/react-native/encryption/Serializers/StringSerializer.js.map +1 -1
  1213. package/dist/react-native/encryption/Serializers/index.d.ts +1 -1
  1214. package/dist/react-native/encryption/Serializers/index.d.ts.map +1 -1
  1215. package/dist/react-native/encryption/Serializers/index.js.map +1 -1
  1216. package/dist/react-native/encryption/index.d.ts +5 -5
  1217. package/dist/react-native/encryption/index.d.ts.map +1 -1
  1218. package/dist/react-native/encryption/index.js.map +1 -1
  1219. package/dist/react-native/globalPartitionEndpointManager.d.ts +2 -1
  1220. package/dist/react-native/globalPartitionEndpointManager.d.ts.map +1 -1
  1221. package/dist/react-native/globalPartitionEndpointManager.js.map +1 -1
  1222. package/dist/react-native/index.d.ts +16 -16
  1223. package/dist/react-native/index.d.ts.map +1 -1
  1224. package/dist/react-native/index.js +1 -1
  1225. package/dist/react-native/index.js.map +1 -1
  1226. package/dist/react-native/queryExecutionContext/Aggregators/index.d.ts +1 -1
  1227. package/dist/react-native/queryExecutionContext/Aggregators/index.d.ts.map +1 -1
  1228. package/dist/react-native/queryExecutionContext/Aggregators/index.js.map +1 -1
  1229. package/dist/react-native/queryExecutionContext/ContinuationTokenManager/BaseContinuationTokenManager.js +26 -18
  1230. package/dist/react-native/queryExecutionContext/ContinuationTokenManager/BaseContinuationTokenManager.js.map +1 -1
  1231. package/dist/react-native/queryExecutionContext/ContinuationTokenManager/OrderByQueryContinuationTokenManager.js +48 -25
  1232. package/dist/react-native/queryExecutionContext/ContinuationTokenManager/OrderByQueryContinuationTokenManager.js.map +1 -1
  1233. package/dist/react-native/queryExecutionContext/ContinuationTokenManager/ParallelQueryContinuationTokenManager.js +17 -26
  1234. package/dist/react-native/queryExecutionContext/ContinuationTokenManager/ParallelQueryContinuationTokenManager.js.map +1 -1
  1235. package/dist/react-native/queryExecutionContext/PartitionRangeManager.d.ts +8 -7
  1236. package/dist/react-native/queryExecutionContext/PartitionRangeManager.d.ts.map +1 -1
  1237. package/dist/react-native/queryExecutionContext/PartitionRangeManager.js +13 -12
  1238. package/dist/react-native/queryExecutionContext/PartitionRangeManager.js.map +1 -1
  1239. package/dist/react-native/queryExecutionContext/index.d.ts +2 -2
  1240. package/dist/react-native/queryExecutionContext/index.d.ts.map +1 -1
  1241. package/dist/react-native/queryExecutionContext/index.js +0 -2
  1242. package/dist/react-native/queryExecutionContext/index.js.map +1 -1
  1243. package/dist/react-native/queryExecutionContext/parallelQueryExecutionContextBase.d.ts +1 -1
  1244. package/dist/react-native/queryExecutionContext/parallelQueryExecutionContextBase.d.ts.map +1 -1
  1245. package/dist/react-native/queryExecutionContext/parallelQueryExecutionContextBase.js.map +1 -1
  1246. package/dist/react-native/queryExecutionContext/queryFilteringStrategy/OrderByQueryRangeStrategy.d.ts +2 -1
  1247. package/dist/react-native/queryExecutionContext/queryFilteringStrategy/OrderByQueryRangeStrategy.d.ts.map +1 -1
  1248. package/dist/react-native/queryExecutionContext/queryFilteringStrategy/OrderByQueryRangeStrategy.js +6 -5
  1249. package/dist/react-native/queryExecutionContext/queryFilteringStrategy/OrderByQueryRangeStrategy.js.map +1 -1
  1250. package/dist/react-native/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.d.ts +0 -4
  1251. package/dist/react-native/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.d.ts.map +1 -1
  1252. package/dist/react-native/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.js +2 -10
  1253. package/dist/react-native/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.js.map +1 -1
  1254. package/dist/react-native/request/hybridSearchQueryResult.d.ts +1 -1
  1255. package/dist/react-native/request/hybridSearchQueryResult.d.ts.map +1 -1
  1256. package/dist/react-native/request/hybridSearchQueryResult.js.map +1 -1
  1257. package/dist/react-native/request/index.d.ts +8 -8
  1258. package/dist/react-native/request/index.d.ts.map +1 -1
  1259. package/dist/react-native/request/index.js +0 -1
  1260. package/dist/react-native/request/index.js.map +1 -1
  1261. package/dist/react-native/retry/endpointDiscoveryRetryPolicy.d.ts +1 -1
  1262. package/dist/react-native/retry/endpointDiscoveryRetryPolicy.d.ts.map +1 -1
  1263. package/dist/react-native/retry/endpointDiscoveryRetryPolicy.js.map +1 -1
  1264. package/dist/react-native/retry/index.d.ts +1 -1
  1265. package/dist/react-native/retry/index.d.ts.map +1 -1
  1266. package/dist/react-native/retry/index.js +0 -3
  1267. package/dist/react-native/retry/index.js.map +1 -1
  1268. package/dist/react-native/retry/timeoutFailoverRetryPolicy.d.ts +1 -1
  1269. package/dist/react-native/retry/timeoutFailoverRetryPolicy.d.ts.map +1 -1
  1270. package/dist/react-native/retry/timeoutFailoverRetryPolicy.js.map +1 -1
  1271. package/dist/react-native/utils/globalCrypto.d.ts +1 -1
  1272. package/dist/react-native/utils/globalCrypto.d.ts.map +1 -0
  1273. package/dist/react-native/utils/globalCrypto.js +1 -1
  1274. package/dist/react-native/utils/globalCrypto.js.map +1 -0
  1275. package/dist/react-native/utils/hashing/hash.d.ts +1 -1
  1276. package/dist/react-native/utils/hashing/hash.d.ts.map +1 -1
  1277. package/dist/react-native/utils/hashing/hash.js.map +1 -1
  1278. package/package.json +6 -23
  1279. package/dist/browser/encryption/AeadAes256CbcHmacSha256Algorithm/AeadAes256CbcHmacSha256Algorithm-browser.d.mts.map +0 -1
  1280. package/dist/browser/encryption/AeadAes256CbcHmacSha256Algorithm/AeadAes256CbcHmacSha256Algorithm-browser.mjs.map +0 -1
  1281. package/dist/browser/encryption/Cache/ProtectedDataEncryptionKeyCache-browser.d.mts.map +0 -1
  1282. package/dist/browser/encryption/Cache/ProtectedDataEncryptionKeyCache-browser.mjs.map +0 -1
  1283. package/dist/browser/encryption/EncryptionKey/DataEncryptionKey-browser.d.mts.map +0 -1
  1284. package/dist/browser/encryption/EncryptionKey/DataEncryptionKey-browser.mjs.map +0 -1
  1285. package/dist/browser/request/defaultAgent-browser.d.mts.map +0 -1
  1286. package/dist/browser/request/defaultAgent-browser.mjs.map +0 -1
  1287. package/dist/browser/utils/atob-browser.d.mts.map +0 -1
  1288. package/dist/browser/utils/atob-browser.mjs.map +0 -1
  1289. package/dist/browser/utils/digest-browser.d.mts.map +0 -1
  1290. package/dist/browser/utils/digest-browser.mjs.map +0 -1
  1291. package/dist/browser/utils/envUtils-browser.d.mts.map +0 -1
  1292. package/dist/browser/utils/envUtils-browser.mjs.map +0 -1
  1293. package/dist/browser/utils/hmac-browser.d.mts.map +0 -1
  1294. package/dist/browser/utils/hmac-browser.mjs.map +0 -1
  1295. package/dist/react-native/utils/globalCrypto-react-native.d.mts.map +0 -1
  1296. package/dist/react-native/utils/globalCrypto-react-native.mjs.map +0 -1
@@ -1 +1,7 @@
1
- {"version":3,"file":"BulkHelper.js","sourceRoot":"","sources":["../../../src/bulk/BulkHelper.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { RequestOptions } from \"../request/RequestOptions.js\";\nimport { readPartitionKeyDefinition } from \"../client/ClientUtils.js\";\nimport type { Container } from \"../client/index.js\";\nimport type { ClientContext } from \"../ClientContext.js\";\nimport { Constants, ResourceType } from \"../common/constants.js\";\nimport { sleep, copyObject, getPathFromLink } from \"../common/helper.js\";\nimport { StatusCodes } from \"../common/statusCodes.js\";\nimport {\n DiagnosticNodeInternal,\n DiagnosticNodeType,\n} from \"../diagnostics/DiagnosticNodeInternal.js\";\nimport type { PartitionKeyDefinition } from \"../documents/PartitionKeyDefinition.js\";\nimport { convertToInternalPartitionKey } from \"../documents/PartitionKeyInternal.js\";\nimport { ErrorResponse } from \"../index.js\";\nimport { BulkExecutionRetryPolicy } from \"../retry/bulkExecutionRetryPolicy.js\";\nimport { ResourceThrottleRetryPolicy } from \"../retry/resourceThrottleRetryPolicy.js\";\nimport type { RetryPolicy } from \"../retry/RetryPolicy.js\";\nimport type { PartitionKeyRangeCache } from \"../routing/partitionKeyRangeCache.js\";\nimport type { BulkOperationResult, OperationInput, Operation } from \"../utils/batch.js\";\nimport { encryptOperationInput, isKeyInRange } from \"../utils/batch.js\";\nimport { addDiagnosticChild } from \"../utils/diagnostics.js\";\nimport { hashPartitionKey } from \"../utils/hashing/hash.js\";\nimport { HelperPerPartition } from \"./HelperPerPartition.js\";\nimport type { ItemOperation } from \"./index.js\";\nimport { ItemOperationContext, BulkResponse } from \"./index.js\";\n\n/**\n * BulkHelper for bulk operations in a container.\n * It maintains one @see {@link HelperPerPartition} for each Partition Key Range, which allows independent execution of requests. Queue based limiters @see {@link LimiterQueue}\n * rate limit requestsbat the helper / Partition Key Range level, this means that we can send parallel and independent requests to different Partition Key Ranges, but for the same Range, requests\n * will be limited. Two callback implementations define how a particular request should be executed, and how operations should be retried. When the helper dispatches a batch\n * the batch will create a request and call the execute callback (executeRequest), if conditions are met, it might call the retry callback (reBatchOperation).\n * @hidden\n */\n\nexport class BulkHelper {\n private readonly container: Container;\n private readonly clientContext: ClientContext;\n private readonly partitionKeyRangeCache: PartitionKeyRangeCache;\n private readonly helpersByPartitionKeyRangeId: Map<string, HelperPerPartition>;\n private options: RequestOptions;\n private partitionKeyDefinition: PartitionKeyDefinition;\n private partitionKeyDefinitionPromise: Promise<PartitionKeyDefinition>;\n private isCancelled: boolean;\n private processedOperationCountRef: { count: number } = { count: 0 };\n private operationPromisesList: Promise<BulkOperationResult>[] = [];\n private congestionControlTimer: NodeJS.Timeout;\n private readonly congestionControlDelayInMs: number = 1000;\n private staleRidError: ErrorResponse | undefined;\n private readonly operationsPerSleep: number = 100; // Number of operations to add per sleep\n private readonly intervalForPartialBatchInMs: number = 1000; // Sleep interval before adding partial batch to dispatch queue\n\n /**\n * @internal\n */\n constructor(\n container: Container,\n clientContext: ClientContext,\n partitionKeyRangeCache: PartitionKeyRangeCache,\n options: RequestOptions,\n ) {\n this.container = container;\n this.clientContext = clientContext;\n this.partitionKeyRangeCache = partitionKeyRangeCache;\n this.helpersByPartitionKeyRangeId = new Map();\n this.options = options;\n this.executeRequest = this.executeRequest.bind(this);\n this.reBatchOperation = this.reBatchOperation.bind(this);\n this.refreshPartitionKeyRangeCache = this.refreshPartitionKeyRangeCache.bind(this);\n this.isCancelled = false;\n this.runCongestionControlTimer();\n }\n\n /**\n * adds operation(s) to the helper\n * @param operationInput - bulk operation or list of bulk operations\n */\n async execute(operationInput: OperationInput[]): Promise<BulkOperationResult[]> {\n const addOperationPromises: Promise<void>[] = [];\n const minimalPause = 0; // minimal pause (0 ms) inserted periodically during processing.\n try {\n for (let i = 0; i < operationInput.length; i++) {\n // After every 100 operations,sleep of 0 ms is added to allow the event loop to process any pending\n // callbacks/tasks such as fetching partition key definition and dispatching batches from queue. This helps\n // to prevent blocking and improves overall responsiveness.\n if (i % this.operationsPerSleep === 0) {\n await sleep(minimalPause);\n }\n addOperationPromises.push(this.addOperation(operationInput[i], i));\n }\n await Promise.allSettled(addOperationPromises);\n\n // After processing all operations via addOperation, it's possible that the current batch in each helper is not completely full.\n // In such cases, addPartialBatchToQueue is called to ensure that all the operations are added to the dispatch queue.\n // while loop below waits until the count of processed operations equals the number of input operations. This is necessary because\n // some operations might fail and then again get added to current batch for retry.\n while (this.processedOperationCountRef.count < operationInput.length) {\n this.helpersByPartitionKeyRangeId.forEach((helper) => {\n helper.addPartialBatchToQueue();\n });\n // Pause for 1000 ms to give pending operations chance to accumulate into a batch to avoid sending multiple small batches.\n await sleep(this.intervalForPartialBatchInMs);\n }\n } finally {\n if (this.congestionControlTimer) {\n clearInterval(this.congestionControlTimer);\n }\n }\n const settledResults = await Promise.allSettled(this.operationPromisesList);\n if (this.isCancelled && this.staleRidError) {\n throw this.staleRidError;\n }\n\n const bulkOperationResults = settledResults.map((result) =>\n result.status === \"fulfilled\" ? result.value : result.reason,\n );\n\n // Formatting result: if an error is present, removing the stack trace details.\n const formattedResults = bulkOperationResults.map((result) => {\n if (result && result.error) {\n const { stack, ...otherProps } = result.error;\n const trimmedError = { message: result.error.message, ...otherProps };\n return {\n ...result,\n error: trimmedError,\n };\n }\n return result;\n });\n return formattedResults;\n }\n\n private async addOperation(operation: OperationInput, idx: number): Promise<void> {\n if (this.isCancelled) {\n return;\n }\n if (!operation) {\n this.operationPromisesList[idx] = Promise.resolve({\n operationInput: operation,\n error: Object.assign(new ErrorResponse(\"Operation cannot be null or undefined.\"), {\n code: StatusCodes.InternalServerError,\n }),\n });\n return;\n }\n\n // Checks for id and partition key in input body\n if (\n operation.operationType === \"Create\" ||\n operation.operationType === \"Upsert\" ||\n operation.operationType === \"Replace\"\n ) {\n if (!operation.resourceBody.id) {\n this.operationPromisesList[idx] = Promise.resolve({\n operationInput: operation,\n error: Object.assign(\n new ErrorResponse(\n `Operation resource body must have an 'id' for ${operation.operationType} operations.`,\n ),\n { code: StatusCodes.InternalServerError },\n ),\n });\n this.processedOperationCountRef.count++;\n return;\n }\n }\n if (operation.partitionKey === undefined) {\n this.operationPromisesList[idx] = Promise.resolve({\n operationInput: operation,\n error: Object.assign(\n new ErrorResponse(`PartitionKey is required for ${operation.operationType} operations.`),\n { code: StatusCodes.InternalServerError },\n ),\n });\n this.processedOperationCountRef.count++;\n return;\n }\n\n let operationError: Error | undefined;\n let diagnosticNode: DiagnosticNodeInternal;\n let unencryptedOperation: OperationInput;\n let partitionKeyRangeId: string;\n try {\n diagnosticNode = new DiagnosticNodeInternal(\n this.clientContext.diagnosticLevel,\n DiagnosticNodeType.CLIENT_REQUEST_NODE,\n null,\n );\n // Ensure partition key definition is available.\n if (!this.partitionKeyDefinition) {\n if (!this.partitionKeyDefinitionPromise) {\n this.partitionKeyDefinitionPromise = (async () => {\n try {\n const partitionKeyDefinition = await readPartitionKeyDefinition(\n diagnosticNode,\n this.container,\n );\n this.partitionKeyDefinition = partitionKeyDefinition;\n return partitionKeyDefinition;\n } finally {\n this.partitionKeyDefinitionPromise = null;\n }\n })();\n }\n await this.partitionKeyDefinitionPromise;\n }\n unencryptedOperation = copyObject(operation);\n // If encryption is enabled, encrypt the operation input.\n if (this.clientContext.enableEncryption) {\n operation = copyObject(operation);\n await this.container.checkAndInitializeEncryption();\n diagnosticNode.beginEncryptionDiagnostics(Constants.Encryption.DiagnosticsEncryptOperation);\n const { operation: encryptedOp, totalPropertiesEncryptedCount } =\n await encryptOperationInput(this.container.encryptionProcessor, operation, 0);\n operation = encryptedOp;\n diagnosticNode.endEncryptionDiagnostics(\n Constants.Encryption.DiagnosticsEncryptOperation,\n totalPropertiesEncryptedCount,\n );\n }\n // Resolve the partition key range id.\n partitionKeyRangeId = await this.resolvePartitionKeyRangeId(operation, diagnosticNode);\n } catch (error) {\n operationError = error;\n }\n\n // Get helper & context.\n const helperForPartition = this.getHelperForPKRange(partitionKeyRangeId);\n const retryPolicy = this.getRetryPolicy();\n const context = new ItemOperationContext(partitionKeyRangeId, retryPolicy, diagnosticNode);\n const itemOperation: ItemOperation = {\n unencryptedOperationInput: unencryptedOperation,\n operationInput: operation,\n operationContext: context,\n };\n\n // Assign the promise (ensuring position matches input order)\n this.operationPromisesList[idx] = context.operationPromise;\n\n if (operationError) {\n const response: BulkOperationResult = {\n operationInput: unencryptedOperation,\n error: Object.assign(new ErrorResponse(operationError.message), {\n code: StatusCodes.InternalServerError,\n diagnostics: diagnosticNode?.toDiagnostic(this.clientContext.getClientConfig()),\n }),\n };\n context.fail(response);\n this.processedOperationCountRef.count++;\n return;\n }\n // Add the operation to the helper.\n return helperForPartition.add(itemOperation);\n }\n\n private async resolvePartitionKeyRangeId(\n operation: OperationInput,\n diagnosticNode: DiagnosticNodeInternal,\n ): Promise<string> {\n const partitionKeyRanges = (\n await this.partitionKeyRangeCache.onCollectionRoutingMap(this.container.url, diagnosticNode)\n ).getOrderedParitionKeyRanges();\n\n const partitionKey = convertToInternalPartitionKey(operation.partitionKey);\n\n const hashedKey = hashPartitionKey(partitionKey, this.partitionKeyDefinition);\n\n const matchingRange = partitionKeyRanges.find((range) =>\n isKeyInRange(range.minInclusive, range.maxExclusive, hashedKey),\n );\n\n if (!matchingRange) {\n throw new Error(\"No matching partition key range found for the operation.\");\n }\n return matchingRange.id;\n }\n\n private getRetryPolicy(): RetryPolicy {\n const nextRetryPolicy = new ResourceThrottleRetryPolicy(this.clientContext.getRetryOptions());\n return new BulkExecutionRetryPolicy(nextRetryPolicy);\n }\n\n private async executeRequest(\n operations: ItemOperation[],\n diagnosticNode: DiagnosticNodeInternal,\n ): Promise<BulkResponse> {\n if (this.isCancelled) {\n throw new ErrorResponse(\"Bulk execution cancelled due to a previous error.\");\n }\n if (!operations.length) return;\n const pkRangeId = operations[0].operationContext.pkRangeId;\n const path = getPathFromLink(this.container.url, ResourceType.item);\n const requestBody: Operation[] = [];\n for (const itemOperation of operations) {\n requestBody.push(this.prepareOperation(itemOperation.operationInput));\n }\n if (!this.options.containerRid) {\n this.options.containerRid = this.container._rid;\n }\n try {\n const response = await addDiagnosticChild(\n async (childNode: DiagnosticNodeInternal) =>\n this.clientContext.bulk({\n body: requestBody,\n partitionKeyRangeId: pkRangeId,\n path: path,\n resourceId: this.container.url,\n options: this.options,\n diagnosticNode: childNode,\n }),\n diagnosticNode,\n DiagnosticNodeType.BATCH_REQUEST,\n );\n if (!response) {\n throw new ErrorResponse(\"Failed to fetch bulk response.\");\n }\n return BulkResponse.fromResponseMessage(response, operations);\n } catch (error) {\n if (this.clientContext.enableEncryption) {\n try {\n await this.container.throwIfRequestNeedsARetryPostPolicyRefresh(error);\n } catch (err) {\n await this.cancelExecution(err);\n return BulkResponse.createEmptyResponse(operations, 0, 0, {});\n }\n }\n return BulkResponse.fromResponseMessage(error, operations);\n }\n }\n\n private prepareOperation(operationInput: OperationInput): Operation {\n operationInput.partitionKey = convertToInternalPartitionKey(operationInput.partitionKey);\n return {\n ...operationInput,\n partitionKey: JSON.stringify(operationInput.partitionKey),\n } as Operation;\n }\n\n private async reBatchOperation(\n operation: ItemOperation,\n diagnosticNode: DiagnosticNodeInternal,\n ): Promise<void> {\n const partitionKeyRangeId = await this.resolvePartitionKeyRangeId(\n operation.operationInput,\n diagnosticNode,\n );\n operation.operationContext.updatePKRangeId(partitionKeyRangeId);\n const helper = this.getHelperForPKRange(partitionKeyRangeId);\n await helper.add(operation);\n }\n\n private async cancelExecution(error: ErrorResponse): Promise<void> {\n this.isCancelled = true;\n this.staleRidError = error;\n for (const helper of this.helpersByPartitionKeyRangeId.values()) {\n await helper.dispose();\n }\n this.helpersByPartitionKeyRangeId.clear();\n }\n\n private getHelperForPKRange(pkRangeId: string): HelperPerPartition {\n if (this.helpersByPartitionKeyRangeId.has(pkRangeId)) {\n return this.helpersByPartitionKeyRangeId.get(pkRangeId);\n }\n\n const newHelper = new HelperPerPartition(\n this.executeRequest,\n this.reBatchOperation,\n this.refreshPartitionKeyRangeCache,\n this.clientContext.diagnosticLevel,\n this.clientContext.enableEncryption,\n this.clientContext.getClientConfig(),\n this.container.encryptionProcessor,\n this.processedOperationCountRef,\n );\n this.helpersByPartitionKeyRangeId.set(pkRangeId, newHelper);\n return newHelper;\n }\n\n private runCongestionControlTimer(): void {\n this.congestionControlTimer = setInterval(() => {\n this.helpersByPartitionKeyRangeId.forEach((helper) => {\n helper.runCongestionAlgorithm();\n });\n }, this.congestionControlDelayInMs);\n }\n\n private async refreshPartitionKeyRangeCache(\n diagnosticNode: DiagnosticNodeInternal,\n ): Promise<void> {\n await this.partitionKeyRangeCache.onCollectionRoutingMap(\n this.container.url,\n diagnosticNode,\n true,\n );\n }\n}\n"]}
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/bulk/BulkHelper.ts"],
4
+ "sourcesContent": ["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { RequestOptions } from \"../request/RequestOptions.js\";\nimport { readPartitionKeyDefinition } from \"../client/ClientUtils.js\";\nimport type { Container } from \"../client/index.js\";\nimport type { ClientContext } from \"../ClientContext.js\";\nimport { Constants, ResourceType } from \"../common/constants.js\";\nimport { sleep, copyObject, getPathFromLink } from \"../common/helper.js\";\nimport { StatusCodes } from \"../common/statusCodes.js\";\nimport {\n DiagnosticNodeInternal,\n DiagnosticNodeType,\n} from \"../diagnostics/DiagnosticNodeInternal.js\";\nimport type { PartitionKeyDefinition } from \"../documents/PartitionKeyDefinition.js\";\nimport { convertToInternalPartitionKey } from \"../documents/PartitionKeyInternal.js\";\nimport { ErrorResponse } from \"../index.js\";\nimport { BulkExecutionRetryPolicy } from \"../retry/bulkExecutionRetryPolicy.js\";\nimport { ResourceThrottleRetryPolicy } from \"../retry/resourceThrottleRetryPolicy.js\";\nimport type { RetryPolicy } from \"../retry/RetryPolicy.js\";\nimport type { PartitionKeyRangeCache } from \"../routing/partitionKeyRangeCache.js\";\nimport type { BulkOperationResult, OperationInput, Operation } from \"../utils/batch.js\";\nimport { encryptOperationInput, isKeyInRange } from \"../utils/batch.js\";\nimport { addDiagnosticChild } from \"../utils/diagnostics.js\";\nimport { hashPartitionKey } from \"../utils/hashing/hash.js\";\nimport { HelperPerPartition } from \"./HelperPerPartition.js\";\nimport type { ItemOperation } from \"./index.js\";\nimport { ItemOperationContext, BulkResponse } from \"./index.js\";\n\n/**\n * BulkHelper for bulk operations in a container.\n * It maintains one @see {@link HelperPerPartition} for each Partition Key Range, which allows independent execution of requests. Queue based limiters @see {@link LimiterQueue}\n * rate limit requestsbat the helper / Partition Key Range level, this means that we can send parallel and independent requests to different Partition Key Ranges, but for the same Range, requests\n * will be limited. Two callback implementations define how a particular request should be executed, and how operations should be retried. When the helper dispatches a batch\n * the batch will create a request and call the execute callback (executeRequest), if conditions are met, it might call the retry callback (reBatchOperation).\n * @hidden\n */\n\nexport class BulkHelper {\n private readonly container: Container;\n private readonly clientContext: ClientContext;\n private readonly partitionKeyRangeCache: PartitionKeyRangeCache;\n private readonly helpersByPartitionKeyRangeId: Map<string, HelperPerPartition>;\n private options: RequestOptions;\n private partitionKeyDefinition: PartitionKeyDefinition;\n private partitionKeyDefinitionPromise: Promise<PartitionKeyDefinition>;\n private isCancelled: boolean;\n private processedOperationCountRef: { count: number } = { count: 0 };\n private operationPromisesList: Promise<BulkOperationResult>[] = [];\n private congestionControlTimer: NodeJS.Timeout;\n private readonly congestionControlDelayInMs: number = 1000;\n private staleRidError: ErrorResponse | undefined;\n private readonly operationsPerSleep: number = 100; // Number of operations to add per sleep\n private readonly intervalForPartialBatchInMs: number = 1000; // Sleep interval before adding partial batch to dispatch queue\n\n /**\n * @internal\n */\n constructor(\n container: Container,\n clientContext: ClientContext,\n partitionKeyRangeCache: PartitionKeyRangeCache,\n options: RequestOptions,\n ) {\n this.container = container;\n this.clientContext = clientContext;\n this.partitionKeyRangeCache = partitionKeyRangeCache;\n this.helpersByPartitionKeyRangeId = new Map();\n this.options = options;\n this.executeRequest = this.executeRequest.bind(this);\n this.reBatchOperation = this.reBatchOperation.bind(this);\n this.refreshPartitionKeyRangeCache = this.refreshPartitionKeyRangeCache.bind(this);\n this.isCancelled = false;\n this.runCongestionControlTimer();\n }\n\n /**\n * adds operation(s) to the helper\n * @param operationInput - bulk operation or list of bulk operations\n */\n async execute(operationInput: OperationInput[]): Promise<BulkOperationResult[]> {\n const addOperationPromises: Promise<void>[] = [];\n const minimalPause = 0; // minimal pause (0 ms) inserted periodically during processing.\n try {\n for (let i = 0; i < operationInput.length; i++) {\n // After every 100 operations,sleep of 0 ms is added to allow the event loop to process any pending\n // callbacks/tasks such as fetching partition key definition and dispatching batches from queue. This helps\n // to prevent blocking and improves overall responsiveness.\n if (i % this.operationsPerSleep === 0) {\n await sleep(minimalPause);\n }\n addOperationPromises.push(this.addOperation(operationInput[i], i));\n }\n await Promise.allSettled(addOperationPromises);\n\n // After processing all operations via addOperation, it's possible that the current batch in each helper is not completely full.\n // In such cases, addPartialBatchToQueue is called to ensure that all the operations are added to the dispatch queue.\n // while loop below waits until the count of processed operations equals the number of input operations. This is necessary because\n // some operations might fail and then again get added to current batch for retry.\n while (this.processedOperationCountRef.count < operationInput.length) {\n this.helpersByPartitionKeyRangeId.forEach((helper) => {\n helper.addPartialBatchToQueue();\n });\n // Pause for 1000 ms to give pending operations chance to accumulate into a batch to avoid sending multiple small batches.\n await sleep(this.intervalForPartialBatchInMs);\n }\n } finally {\n if (this.congestionControlTimer) {\n clearInterval(this.congestionControlTimer);\n }\n }\n const settledResults = await Promise.allSettled(this.operationPromisesList);\n if (this.isCancelled && this.staleRidError) {\n throw this.staleRidError;\n }\n\n const bulkOperationResults = settledResults.map((result) =>\n result.status === \"fulfilled\" ? result.value : result.reason,\n );\n\n // Formatting result: if an error is present, removing the stack trace details.\n const formattedResults = bulkOperationResults.map((result) => {\n if (result && result.error) {\n const { stack, ...otherProps } = result.error;\n const trimmedError = { message: result.error.message, ...otherProps };\n return {\n ...result,\n error: trimmedError,\n };\n }\n return result;\n });\n return formattedResults;\n }\n\n private async addOperation(operation: OperationInput, idx: number): Promise<void> {\n if (this.isCancelled) {\n return;\n }\n if (!operation) {\n this.operationPromisesList[idx] = Promise.resolve({\n operationInput: operation,\n error: Object.assign(new ErrorResponse(\"Operation cannot be null or undefined.\"), {\n code: StatusCodes.InternalServerError,\n }),\n });\n return;\n }\n\n // Checks for id and partition key in input body\n if (\n operation.operationType === \"Create\" ||\n operation.operationType === \"Upsert\" ||\n operation.operationType === \"Replace\"\n ) {\n if (!operation.resourceBody.id) {\n this.operationPromisesList[idx] = Promise.resolve({\n operationInput: operation,\n error: Object.assign(\n new ErrorResponse(\n `Operation resource body must have an 'id' for ${operation.operationType} operations.`,\n ),\n { code: StatusCodes.InternalServerError },\n ),\n });\n this.processedOperationCountRef.count++;\n return;\n }\n }\n if (operation.partitionKey === undefined) {\n this.operationPromisesList[idx] = Promise.resolve({\n operationInput: operation,\n error: Object.assign(\n new ErrorResponse(`PartitionKey is required for ${operation.operationType} operations.`),\n { code: StatusCodes.InternalServerError },\n ),\n });\n this.processedOperationCountRef.count++;\n return;\n }\n\n let operationError: Error | undefined;\n let diagnosticNode: DiagnosticNodeInternal;\n let unencryptedOperation: OperationInput;\n let partitionKeyRangeId: string;\n try {\n diagnosticNode = new DiagnosticNodeInternal(\n this.clientContext.diagnosticLevel,\n DiagnosticNodeType.CLIENT_REQUEST_NODE,\n null,\n );\n // Ensure partition key definition is available.\n if (!this.partitionKeyDefinition) {\n if (!this.partitionKeyDefinitionPromise) {\n this.partitionKeyDefinitionPromise = (async () => {\n try {\n const partitionKeyDefinition = await readPartitionKeyDefinition(\n diagnosticNode,\n this.container,\n );\n this.partitionKeyDefinition = partitionKeyDefinition;\n return partitionKeyDefinition;\n } finally {\n this.partitionKeyDefinitionPromise = null;\n }\n })();\n }\n await this.partitionKeyDefinitionPromise;\n }\n unencryptedOperation = copyObject(operation);\n // If encryption is enabled, encrypt the operation input.\n if (this.clientContext.enableEncryption) {\n operation = copyObject(operation);\n await this.container.checkAndInitializeEncryption();\n diagnosticNode.beginEncryptionDiagnostics(Constants.Encryption.DiagnosticsEncryptOperation);\n const { operation: encryptedOp, totalPropertiesEncryptedCount } =\n await encryptOperationInput(this.container.encryptionProcessor, operation, 0);\n operation = encryptedOp;\n diagnosticNode.endEncryptionDiagnostics(\n Constants.Encryption.DiagnosticsEncryptOperation,\n totalPropertiesEncryptedCount,\n );\n }\n // Resolve the partition key range id.\n partitionKeyRangeId = await this.resolvePartitionKeyRangeId(operation, diagnosticNode);\n } catch (error) {\n operationError = error;\n }\n\n // Get helper & context.\n const helperForPartition = this.getHelperForPKRange(partitionKeyRangeId);\n const retryPolicy = this.getRetryPolicy();\n const context = new ItemOperationContext(partitionKeyRangeId, retryPolicy, diagnosticNode);\n const itemOperation: ItemOperation = {\n unencryptedOperationInput: unencryptedOperation,\n operationInput: operation,\n operationContext: context,\n };\n\n // Assign the promise (ensuring position matches input order)\n this.operationPromisesList[idx] = context.operationPromise;\n\n if (operationError) {\n const response: BulkOperationResult = {\n operationInput: unencryptedOperation,\n error: Object.assign(new ErrorResponse(operationError.message), {\n code: StatusCodes.InternalServerError,\n diagnostics: diagnosticNode?.toDiagnostic(this.clientContext.getClientConfig()),\n }),\n };\n context.fail(response);\n this.processedOperationCountRef.count++;\n return;\n }\n // Add the operation to the helper.\n return helperForPartition.add(itemOperation);\n }\n\n private async resolvePartitionKeyRangeId(\n operation: OperationInput,\n diagnosticNode: DiagnosticNodeInternal,\n ): Promise<string> {\n const partitionKeyRanges = (\n await this.partitionKeyRangeCache.onCollectionRoutingMap(this.container.url, diagnosticNode)\n ).getOrderedParitionKeyRanges();\n\n const partitionKey = convertToInternalPartitionKey(operation.partitionKey);\n\n const hashedKey = hashPartitionKey(partitionKey, this.partitionKeyDefinition);\n\n const matchingRange = partitionKeyRanges.find((range) =>\n isKeyInRange(range.minInclusive, range.maxExclusive, hashedKey),\n );\n\n if (!matchingRange) {\n throw new Error(\"No matching partition key range found for the operation.\");\n }\n return matchingRange.id;\n }\n\n private getRetryPolicy(): RetryPolicy {\n const nextRetryPolicy = new ResourceThrottleRetryPolicy(this.clientContext.getRetryOptions());\n return new BulkExecutionRetryPolicy(nextRetryPolicy);\n }\n\n private async executeRequest(\n operations: ItemOperation[],\n diagnosticNode: DiagnosticNodeInternal,\n ): Promise<BulkResponse> {\n if (this.isCancelled) {\n throw new ErrorResponse(\"Bulk execution cancelled due to a previous error.\");\n }\n if (!operations.length) return;\n const pkRangeId = operations[0].operationContext.pkRangeId;\n const path = getPathFromLink(this.container.url, ResourceType.item);\n const requestBody: Operation[] = [];\n for (const itemOperation of operations) {\n requestBody.push(this.prepareOperation(itemOperation.operationInput));\n }\n if (!this.options.containerRid) {\n this.options.containerRid = this.container._rid;\n }\n try {\n const response = await addDiagnosticChild(\n async (childNode: DiagnosticNodeInternal) =>\n this.clientContext.bulk({\n body: requestBody,\n partitionKeyRangeId: pkRangeId,\n path: path,\n resourceId: this.container.url,\n options: this.options,\n diagnosticNode: childNode,\n }),\n diagnosticNode,\n DiagnosticNodeType.BATCH_REQUEST,\n );\n if (!response) {\n throw new ErrorResponse(\"Failed to fetch bulk response.\");\n }\n return BulkResponse.fromResponseMessage(response, operations);\n } catch (error) {\n if (this.clientContext.enableEncryption) {\n try {\n await this.container.throwIfRequestNeedsARetryPostPolicyRefresh(error);\n } catch (err) {\n await this.cancelExecution(err);\n return BulkResponse.createEmptyResponse(operations, 0, 0, {});\n }\n }\n return BulkResponse.fromResponseMessage(error, operations);\n }\n }\n\n private prepareOperation(operationInput: OperationInput): Operation {\n operationInput.partitionKey = convertToInternalPartitionKey(operationInput.partitionKey);\n return {\n ...operationInput,\n partitionKey: JSON.stringify(operationInput.partitionKey),\n } as Operation;\n }\n\n private async reBatchOperation(\n operation: ItemOperation,\n diagnosticNode: DiagnosticNodeInternal,\n ): Promise<void> {\n const partitionKeyRangeId = await this.resolvePartitionKeyRangeId(\n operation.operationInput,\n diagnosticNode,\n );\n operation.operationContext.updatePKRangeId(partitionKeyRangeId);\n const helper = this.getHelperForPKRange(partitionKeyRangeId);\n await helper.add(operation);\n }\n\n private async cancelExecution(error: ErrorResponse): Promise<void> {\n this.isCancelled = true;\n this.staleRidError = error;\n for (const helper of this.helpersByPartitionKeyRangeId.values()) {\n await helper.dispose();\n }\n this.helpersByPartitionKeyRangeId.clear();\n }\n\n private getHelperForPKRange(pkRangeId: string): HelperPerPartition {\n if (this.helpersByPartitionKeyRangeId.has(pkRangeId)) {\n return this.helpersByPartitionKeyRangeId.get(pkRangeId);\n }\n\n const newHelper = new HelperPerPartition(\n this.executeRequest,\n this.reBatchOperation,\n this.refreshPartitionKeyRangeCache,\n this.clientContext.diagnosticLevel,\n this.clientContext.enableEncryption,\n this.clientContext.getClientConfig(),\n this.container.encryptionProcessor,\n this.processedOperationCountRef,\n );\n this.helpersByPartitionKeyRangeId.set(pkRangeId, newHelper);\n return newHelper;\n }\n\n private runCongestionControlTimer(): void {\n this.congestionControlTimer = setInterval(() => {\n this.helpersByPartitionKeyRangeId.forEach((helper) => {\n helper.runCongestionAlgorithm();\n });\n }, this.congestionControlDelayInMs);\n }\n\n private async refreshPartitionKeyRangeCache(\n diagnosticNode: DiagnosticNodeInternal,\n ): Promise<void> {\n await this.partitionKeyRangeCache.onCollectionRoutingMap(\n this.container.url,\n diagnosticNode,\n true,\n );\n }\n}\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -1,125 +1,148 @@
1
- "use strict";
2
- // Copyright (c) Microsoft Corporation.
3
- // Licensed under the MIT License.
4
- Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.BulkResponse = void 0;
6
- const constants_js_1 = require("../common/constants.js");
7
- const statusCodes_js_1 = require("../common/statusCodes.js");
8
- const index_js_1 = require("../index.js");
9
- const batch_js_1 = require("../utils/batch.js");
10
- /**
11
- * Represents a batch response for bulk request.
12
- * @hidden
13
- */
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ }
15
+ return to;
16
+ };
17
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
+ var BulkResponse_exports = {};
19
+ __export(BulkResponse_exports, {
20
+ BulkResponse: () => BulkResponse
21
+ });
22
+ module.exports = __toCommonJS(BulkResponse_exports);
23
+ var import_constants = require("../common/constants.js");
24
+ var import_statusCodes = require("../common/statusCodes.js");
25
+ var import__ = require("../index.js");
26
+ var import_batch = require("../utils/batch.js");
14
27
  class BulkResponse {
15
- statusCode;
16
- subStatusCode;
17
- headers;
18
- operations;
19
- results = [];
20
- diagnostics;
21
- constructor(statusCode, subStatusCode, headers, operations) {
22
- this.statusCode = statusCode;
23
- this.subStatusCode = subStatusCode;
24
- this.headers = headers;
25
- this.operations = operations;
28
+ statusCode;
29
+ subStatusCode;
30
+ headers;
31
+ operations;
32
+ results = [];
33
+ diagnostics;
34
+ constructor(statusCode, subStatusCode, headers, operations) {
35
+ this.statusCode = statusCode;
36
+ this.subStatusCode = subStatusCode;
37
+ this.headers = headers;
38
+ this.operations = operations;
39
+ }
40
+ /**
41
+ * Generate empty response object
42
+ */
43
+ static createEmptyResponse(operations, statusCode, subStatusCode, headers) {
44
+ const bulkResponse = new BulkResponse(statusCode, subStatusCode, headers, operations);
45
+ bulkResponse.createAndPopulateResults(operations, 0, new import__.ErrorResponse());
46
+ return bulkResponse;
47
+ }
48
+ /**
49
+ * static method to create BulkResponse from Response object
50
+ */
51
+ static fromResponseMessage(responseMessage, operations) {
52
+ let bulkResponse = this.populateFromResponse(responseMessage, operations);
53
+ if (!bulkResponse.results || bulkResponse.results.length !== operations.length) {
54
+ if ((0, import_batch.isSuccessStatusCode)(responseMessage.code)) {
55
+ bulkResponse = new BulkResponse(
56
+ import_statusCodes.StatusCodes.InternalServerError,
57
+ import_statusCodes.SubStatusCodes.Unknown,
58
+ responseMessage.headers,
59
+ operations
60
+ );
61
+ }
62
+ let retryAfterMilliseconds = 0;
63
+ if (responseMessage.code === import_statusCodes.StatusCodes.TooManyRequests) {
64
+ const retryAfter = responseMessage.headers?.[import_constants.Constants.HttpHeaders.RetryAfterInMs];
65
+ retryAfterMilliseconds = !retryAfter || isNaN(Number(retryAfter)) ? 0 : Number(retryAfter);
66
+ }
67
+ bulkResponse.createAndPopulateResults(
68
+ operations,
69
+ retryAfterMilliseconds,
70
+ responseMessage
71
+ );
26
72
  }
27
- /**
28
- * Generate empty response object
29
- */
30
- static createEmptyResponse(operations, statusCode, subStatusCode, headers) {
31
- const bulkResponse = new BulkResponse(statusCode, subStatusCode, headers, operations);
32
- bulkResponse.createAndPopulateResults(operations, 0, new index_js_1.ErrorResponse());
33
- return bulkResponse;
34
- }
35
- /**
36
- * static method to create BulkResponse from Response object
37
- */
38
- static fromResponseMessage(responseMessage, operations) {
39
- // Create and populate the response object
40
- let bulkResponse = this.populateFromResponse(responseMessage, operations);
41
- if (!bulkResponse.results || bulkResponse.results.length !== operations.length) {
42
- // Server should be guaranteeing number of results equal to operations when
43
- // batch request is successful - so fail as InternalServerError if this is not the case.
44
- if ((0, batch_js_1.isSuccessStatusCode)(responseMessage.code)) {
45
- bulkResponse = new BulkResponse(statusCodes_js_1.StatusCodes.InternalServerError, statusCodes_js_1.SubStatusCodes.Unknown, responseMessage.headers, operations);
46
- }
47
- // When the overall response status code is TooManyRequests, propagate the RetryAfter into the individual operations.
48
- let retryAfterMilliseconds = 0;
49
- if (responseMessage.code === statusCodes_js_1.StatusCodes.TooManyRequests) {
50
- const retryAfter = responseMessage.headers?.[constants_js_1.Constants.HttpHeaders.RetryAfterInMs];
51
- retryAfterMilliseconds = !retryAfter || isNaN(Number(retryAfter)) ? 0 : Number(retryAfter);
52
- }
53
- bulkResponse.createAndPopulateResults(operations, retryAfterMilliseconds, responseMessage);
73
+ return bulkResponse;
74
+ }
75
+ static populateFromResponse(responseMessage, operations) {
76
+ const results = [];
77
+ if (responseMessage.result) {
78
+ for (let i = 0; i < operations.length; i++) {
79
+ const itemResponse = responseMessage.result[i];
80
+ if ((0, import_batch.isSuccessStatusCode)(itemResponse?.statusCode)) {
81
+ const result = {
82
+ statusCode: itemResponse?.statusCode,
83
+ eTag: itemResponse?.eTag,
84
+ activityId: responseMessage.headers?.[import_constants.Constants.HttpHeaders.ActivityId],
85
+ sessionToken: responseMessage.headers?.[import_constants.Constants.HttpHeaders.SessionToken],
86
+ requestCharge: itemResponse?.requestCharge,
87
+ resourceBody: itemResponse?.resourceBody,
88
+ // diagnostics will be filled in Batcher dispatch to capture the complete diagnostics(e.g. decryption)
89
+ diagnostics: null,
90
+ headers: responseMessage.headers
91
+ };
92
+ results.push(result);
93
+ } else {
94
+ const error = new import__.ErrorResponse();
95
+ error.code = itemResponse?.statusCode;
96
+ error.substatus = itemResponse?.subStatusCode;
97
+ error.message = itemResponse?.message;
98
+ error.requestCharge = itemResponse?.requestCharge;
99
+ error.body = itemResponse?.resourceBody;
100
+ error.headers = responseMessage.headers;
101
+ error.activityId = responseMessage.headers?.[import_constants.Constants.HttpHeaders.ActivityId];
102
+ error.retryAfterInMs = itemResponse?.retryAfterMilliseconds;
103
+ error.diagnostics = responseMessage.diagnostics;
104
+ results.push(error);
54
105
  }
55
- return bulkResponse;
106
+ }
56
107
  }
57
- static populateFromResponse(responseMessage, operations) {
58
- const results = [];
59
- if (responseMessage.result) {
60
- for (let i = 0; i < operations.length; i++) {
61
- const itemResponse = responseMessage.result[i];
62
- if ((0, batch_js_1.isSuccessStatusCode)(itemResponse?.statusCode)) {
63
- const result = {
64
- statusCode: itemResponse?.statusCode,
65
- eTag: itemResponse?.eTag,
66
- activityId: responseMessage.headers?.[constants_js_1.Constants.HttpHeaders.ActivityId],
67
- sessionToken: responseMessage.headers?.[constants_js_1.Constants.HttpHeaders.SessionToken],
68
- requestCharge: itemResponse?.requestCharge,
69
- resourceBody: itemResponse?.resourceBody,
70
- // diagnostics will be filled in Batcher dispatch to capture the complete diagnostics(e.g. decryption)
71
- diagnostics: null,
72
- headers: responseMessage.headers,
73
- };
74
- results.push(result);
75
- }
76
- else {
77
- const error = new index_js_1.ErrorResponse();
78
- error.code = itemResponse?.statusCode;
79
- error.substatus = itemResponse?.subStatusCode;
80
- error.message = itemResponse?.message;
81
- error.requestCharge = itemResponse?.requestCharge;
82
- error.body = itemResponse?.resourceBody;
83
- error.headers = responseMessage.headers;
84
- error.activityId = responseMessage.headers?.[constants_js_1.Constants.HttpHeaders.ActivityId];
85
- error.retryAfterInMs = itemResponse?.retryAfterMilliseconds;
86
- error.diagnostics = responseMessage.diagnostics;
87
- results.push(error);
88
- }
89
- }
90
- }
91
- let statusCode = responseMessage.code;
92
- let subStatusCode = responseMessage.substatus;
93
- if (responseMessage.code === statusCodes_js_1.StatusCodes.MultiStatus) {
94
- for (const result of results) {
95
- if (result instanceof index_js_1.ErrorResponse &&
96
- result.statusCode !== statusCodes_js_1.StatusCodes.FailedDependency &&
97
- result.statusCode >= statusCodes_js_1.StatusCodes.BadRequest) {
98
- statusCode = typeof result.code === "number" ? result.code : Number(result.code);
99
- subStatusCode = result.substatus;
100
- break;
101
- }
102
- }
108
+ let statusCode = responseMessage.code;
109
+ let subStatusCode = responseMessage.substatus;
110
+ if (responseMessage.code === import_statusCodes.StatusCodes.MultiStatus) {
111
+ for (const result of results) {
112
+ if (result instanceof import__.ErrorResponse && result.statusCode !== import_statusCodes.StatusCodes.FailedDependency && result.statusCode >= import_statusCodes.StatusCodes.BadRequest) {
113
+ statusCode = typeof result.code === "number" ? result.code : Number(result.code);
114
+ subStatusCode = result.substatus;
115
+ break;
103
116
  }
104
- const bulkResponse = new BulkResponse(statusCode, subStatusCode, responseMessage.headers, operations);
105
- bulkResponse.results = results;
106
- return bulkResponse;
107
- }
108
- createAndPopulateResults(operations, retryAfterInMs, error) {
109
- this.results = operations.map(() => {
110
- const errorResponse = new index_js_1.ErrorResponse();
111
- errorResponse.message = error.message;
112
- errorResponse.code = this.statusCode;
113
- errorResponse.substatus = this.subStatusCode;
114
- errorResponse.retryAfterInMs = retryAfterInMs;
115
- errorResponse.activityId = this.headers?.[constants_js_1.Constants.HttpHeaders.ActivityId];
116
- errorResponse.body = error.body;
117
- errorResponse.diagnostics = error.diagnostics;
118
- errorResponse.headers = this.headers;
119
- errorResponse.requestCharge = error.requestCharge;
120
- return errorResponse;
121
- });
117
+ }
122
118
  }
119
+ const bulkResponse = new BulkResponse(
120
+ statusCode,
121
+ subStatusCode,
122
+ responseMessage.headers,
123
+ operations
124
+ );
125
+ bulkResponse.results = results;
126
+ return bulkResponse;
127
+ }
128
+ createAndPopulateResults(operations, retryAfterInMs, error) {
129
+ this.results = operations.map(() => {
130
+ const errorResponse = new import__.ErrorResponse();
131
+ errorResponse.message = error.message;
132
+ errorResponse.code = this.statusCode;
133
+ errorResponse.substatus = this.subStatusCode;
134
+ errorResponse.retryAfterInMs = retryAfterInMs;
135
+ errorResponse.activityId = this.headers?.[import_constants.Constants.HttpHeaders.ActivityId];
136
+ errorResponse.body = error.body;
137
+ errorResponse.diagnostics = error.diagnostics;
138
+ errorResponse.headers = this.headers;
139
+ errorResponse.requestCharge = error.requestCharge;
140
+ return errorResponse;
141
+ });
142
+ }
123
143
  }
124
- exports.BulkResponse = BulkResponse;
125
- //# sourceMappingURL=BulkResponse.js.map
144
+ // Annotate the CommonJS export names for ESM import in node:
145
+ 0 && (module.exports = {
146
+ BulkResponse
147
+ });
148
+ //# sourceMappingURL=BulkResponse.js.map
@@ -1 +1,7 @@
1
- {"version":3,"file":"BulkResponse.js","sourceRoot":"","sources":["../../../src/bulk/BulkResponse.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { Constants } from \"../common/constants.js\";\nimport { StatusCodes, SubStatusCodes } from \"../common/statusCodes.js\";\nimport type { CosmosDiagnostics, Response } from \"../index.js\";\nimport { ErrorResponse } from \"../index.js\";\nimport type { CosmosHeaders } from \"../queryExecutionContext/headerUtils.js\";\nimport type { StatusCode, SubStatusCode } from \"../request/StatusCodes.js\";\nimport type { ExtendedOperationResponse } from \"../utils/batch.js\";\nimport { isSuccessStatusCode } from \"../utils/batch.js\";\nimport type { ItemOperation } from \"./index.js\";\n\n/**\n * Represents a batch response for bulk request.\n * @hidden\n */\n\nexport class BulkResponse {\n statusCode: StatusCode;\n subStatusCode: SubStatusCode;\n headers: CosmosHeaders;\n operations: ItemOperation[];\n results: (ExtendedOperationResponse | ErrorResponse)[] = [];\n diagnostics: CosmosDiagnostics;\n\n constructor(\n statusCode: StatusCode,\n subStatusCode: SubStatusCode,\n headers: CosmosHeaders,\n operations: ItemOperation[],\n ) {\n this.statusCode = statusCode;\n this.subStatusCode = subStatusCode;\n this.headers = headers;\n this.operations = operations;\n }\n\n /**\n * Generate empty response object\n */\n static createEmptyResponse(\n operations: ItemOperation[],\n statusCode: StatusCode,\n subStatusCode: SubStatusCode,\n headers: CosmosHeaders,\n ): BulkResponse {\n const bulkResponse = new BulkResponse(statusCode, subStatusCode, headers, operations);\n bulkResponse.createAndPopulateResults(operations, 0, new ErrorResponse());\n return bulkResponse;\n }\n\n /**\n * static method to create BulkResponse from Response object\n */\n static fromResponseMessage(\n responseMessage: Response<any>,\n operations: ItemOperation[],\n ): BulkResponse {\n // Create and populate the response object\n let bulkResponse = this.populateFromResponse(responseMessage, operations);\n\n if (!bulkResponse.results || bulkResponse.results.length !== operations.length) {\n // Server should be guaranteeing number of results equal to operations when\n // batch request is successful - so fail as InternalServerError if this is not the case.\n if (isSuccessStatusCode(responseMessage.code)) {\n bulkResponse = new BulkResponse(\n StatusCodes.InternalServerError,\n SubStatusCodes.Unknown,\n responseMessage.headers,\n operations,\n );\n }\n\n // When the overall response status code is TooManyRequests, propagate the RetryAfter into the individual operations.\n let retryAfterMilliseconds = 0;\n\n if (responseMessage.code === StatusCodes.TooManyRequests) {\n const retryAfter = responseMessage.headers?.[Constants.HttpHeaders.RetryAfterInMs];\n retryAfterMilliseconds = !retryAfter || isNaN(Number(retryAfter)) ? 0 : Number(retryAfter);\n }\n\n bulkResponse.createAndPopulateResults(\n operations,\n retryAfterMilliseconds,\n responseMessage as ErrorResponse,\n );\n }\n return bulkResponse;\n }\n\n private static populateFromResponse(\n responseMessage: Response<any>,\n operations: ItemOperation[],\n ): BulkResponse {\n const results: (ExtendedOperationResponse | ErrorResponse)[] = [];\n\n if (responseMessage.result) {\n for (let i = 0; i < operations.length; i++) {\n const itemResponse = responseMessage.result[i];\n\n if (isSuccessStatusCode(itemResponse?.statusCode)) {\n const result: ExtendedOperationResponse = {\n statusCode: itemResponse?.statusCode,\n eTag: itemResponse?.eTag,\n activityId: responseMessage.headers?.[Constants.HttpHeaders.ActivityId],\n sessionToken: responseMessage.headers?.[Constants.HttpHeaders.SessionToken],\n requestCharge: itemResponse?.requestCharge,\n resourceBody: itemResponse?.resourceBody,\n // diagnostics will be filled in Batcher dispatch to capture the complete diagnostics(e.g. decryption)\n diagnostics: null,\n headers: responseMessage.headers,\n };\n results.push(result);\n } else {\n const error: ErrorResponse = new ErrorResponse();\n error.code = itemResponse?.statusCode;\n error.substatus = itemResponse?.subStatusCode;\n error.message = itemResponse?.message;\n error.requestCharge = itemResponse?.requestCharge;\n error.body = itemResponse?.resourceBody;\n error.headers = responseMessage.headers;\n error.activityId = responseMessage.headers?.[Constants.HttpHeaders.ActivityId];\n error.retryAfterInMs = itemResponse?.retryAfterMilliseconds;\n error.diagnostics = responseMessage.diagnostics;\n results.push(error);\n }\n }\n }\n let statusCode = responseMessage.code;\n let subStatusCode = responseMessage.substatus;\n\n if (responseMessage.code === StatusCodes.MultiStatus) {\n for (const result of results) {\n if (\n result instanceof ErrorResponse &&\n result.statusCode !== StatusCodes.FailedDependency &&\n result.statusCode >= StatusCodes.BadRequest\n ) {\n statusCode = typeof result.code === \"number\" ? result.code : Number(result.code);\n subStatusCode = result.substatus;\n break;\n }\n }\n }\n\n const bulkResponse = new BulkResponse(\n statusCode,\n subStatusCode,\n responseMessage.headers,\n operations,\n );\n bulkResponse.results = results;\n return bulkResponse;\n }\n\n private createAndPopulateResults(\n operations: ItemOperation[],\n retryAfterInMs: number,\n error: ErrorResponse,\n ): void {\n this.results = operations.map(() => {\n const errorResponse = new ErrorResponse();\n errorResponse.message = error.message;\n errorResponse.code = this.statusCode;\n errorResponse.substatus = this.subStatusCode;\n errorResponse.retryAfterInMs = retryAfterInMs;\n errorResponse.activityId = this.headers?.[Constants.HttpHeaders.ActivityId];\n errorResponse.body = error.body;\n errorResponse.diagnostics = error.diagnostics;\n errorResponse.headers = this.headers;\n errorResponse.requestCharge = error.requestCharge;\n return errorResponse;\n });\n }\n}\n"]}
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/bulk/BulkResponse.ts"],
4
+ "sourcesContent": ["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { Constants } from \"../common/constants.js\";\nimport { StatusCodes, SubStatusCodes } from \"../common/statusCodes.js\";\nimport type { CosmosDiagnostics, Response } from \"../index.js\";\nimport { ErrorResponse } from \"../index.js\";\nimport type { CosmosHeaders } from \"../queryExecutionContext/headerUtils.js\";\nimport type { StatusCode, SubStatusCode } from \"../request/StatusCodes.js\";\nimport type { ExtendedOperationResponse } from \"../utils/batch.js\";\nimport { isSuccessStatusCode } from \"../utils/batch.js\";\nimport type { ItemOperation } from \"./index.js\";\n\n/**\n * Represents a batch response for bulk request.\n * @hidden\n */\n\nexport class BulkResponse {\n statusCode: StatusCode;\n subStatusCode: SubStatusCode;\n headers: CosmosHeaders;\n operations: ItemOperation[];\n results: (ExtendedOperationResponse | ErrorResponse)[] = [];\n diagnostics: CosmosDiagnostics;\n\n constructor(\n statusCode: StatusCode,\n subStatusCode: SubStatusCode,\n headers: CosmosHeaders,\n operations: ItemOperation[],\n ) {\n this.statusCode = statusCode;\n this.subStatusCode = subStatusCode;\n this.headers = headers;\n this.operations = operations;\n }\n\n /**\n * Generate empty response object\n */\n static createEmptyResponse(\n operations: ItemOperation[],\n statusCode: StatusCode,\n subStatusCode: SubStatusCode,\n headers: CosmosHeaders,\n ): BulkResponse {\n const bulkResponse = new BulkResponse(statusCode, subStatusCode, headers, operations);\n bulkResponse.createAndPopulateResults(operations, 0, new ErrorResponse());\n return bulkResponse;\n }\n\n /**\n * static method to create BulkResponse from Response object\n */\n static fromResponseMessage(\n responseMessage: Response<any>,\n operations: ItemOperation[],\n ): BulkResponse {\n // Create and populate the response object\n let bulkResponse = this.populateFromResponse(responseMessage, operations);\n\n if (!bulkResponse.results || bulkResponse.results.length !== operations.length) {\n // Server should be guaranteeing number of results equal to operations when\n // batch request is successful - so fail as InternalServerError if this is not the case.\n if (isSuccessStatusCode(responseMessage.code)) {\n bulkResponse = new BulkResponse(\n StatusCodes.InternalServerError,\n SubStatusCodes.Unknown,\n responseMessage.headers,\n operations,\n );\n }\n\n // When the overall response status code is TooManyRequests, propagate the RetryAfter into the individual operations.\n let retryAfterMilliseconds = 0;\n\n if (responseMessage.code === StatusCodes.TooManyRequests) {\n const retryAfter = responseMessage.headers?.[Constants.HttpHeaders.RetryAfterInMs];\n retryAfterMilliseconds = !retryAfter || isNaN(Number(retryAfter)) ? 0 : Number(retryAfter);\n }\n\n bulkResponse.createAndPopulateResults(\n operations,\n retryAfterMilliseconds,\n responseMessage as ErrorResponse,\n );\n }\n return bulkResponse;\n }\n\n private static populateFromResponse(\n responseMessage: Response<any>,\n operations: ItemOperation[],\n ): BulkResponse {\n const results: (ExtendedOperationResponse | ErrorResponse)[] = [];\n\n if (responseMessage.result) {\n for (let i = 0; i < operations.length; i++) {\n const itemResponse = responseMessage.result[i];\n\n if (isSuccessStatusCode(itemResponse?.statusCode)) {\n const result: ExtendedOperationResponse = {\n statusCode: itemResponse?.statusCode,\n eTag: itemResponse?.eTag,\n activityId: responseMessage.headers?.[Constants.HttpHeaders.ActivityId],\n sessionToken: responseMessage.headers?.[Constants.HttpHeaders.SessionToken],\n requestCharge: itemResponse?.requestCharge,\n resourceBody: itemResponse?.resourceBody,\n // diagnostics will be filled in Batcher dispatch to capture the complete diagnostics(e.g. decryption)\n diagnostics: null,\n headers: responseMessage.headers,\n };\n results.push(result);\n } else {\n const error: ErrorResponse = new ErrorResponse();\n error.code = itemResponse?.statusCode;\n error.substatus = itemResponse?.subStatusCode;\n error.message = itemResponse?.message;\n error.requestCharge = itemResponse?.requestCharge;\n error.body = itemResponse?.resourceBody;\n error.headers = responseMessage.headers;\n error.activityId = responseMessage.headers?.[Constants.HttpHeaders.ActivityId];\n error.retryAfterInMs = itemResponse?.retryAfterMilliseconds;\n error.diagnostics = responseMessage.diagnostics;\n results.push(error);\n }\n }\n }\n let statusCode = responseMessage.code;\n let subStatusCode = responseMessage.substatus;\n\n if (responseMessage.code === StatusCodes.MultiStatus) {\n for (const result of results) {\n if (\n result instanceof ErrorResponse &&\n result.statusCode !== StatusCodes.FailedDependency &&\n result.statusCode >= StatusCodes.BadRequest\n ) {\n statusCode = typeof result.code === \"number\" ? result.code : Number(result.code);\n subStatusCode = result.substatus;\n break;\n }\n }\n }\n\n const bulkResponse = new BulkResponse(\n statusCode,\n subStatusCode,\n responseMessage.headers,\n operations,\n );\n bulkResponse.results = results;\n return bulkResponse;\n }\n\n private createAndPopulateResults(\n operations: ItemOperation[],\n retryAfterInMs: number,\n error: ErrorResponse,\n ): void {\n this.results = operations.map(() => {\n const errorResponse = new ErrorResponse();\n errorResponse.message = error.message;\n errorResponse.code = this.statusCode;\n errorResponse.substatus = this.subStatusCode;\n errorResponse.retryAfterInMs = retryAfterInMs;\n errorResponse.activityId = this.headers?.[Constants.HttpHeaders.ActivityId];\n errorResponse.body = error.body;\n errorResponse.diagnostics = error.diagnostics;\n errorResponse.headers = this.headers;\n errorResponse.requestCharge = error.requestCharge;\n return errorResponse;\n });\n }\n}\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -1,70 +1,76 @@
1
- "use strict";
2
- // Copyright (c) Microsoft Corporation.
3
- // Licensed under the MIT License.
4
- Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.CongestionAlgorithm = void 0;
6
- const constants_js_1 = require("../common/constants.js");
7
- /**
8
- * This class implements a congestion control algorithm which dynamically adjusts the degree
9
- * of concurrency based on the throttling and number of processed items.
10
- * For example, if it sees any throttling in requests from the last time the algorithm ran, it will decrease the
11
- * degree of concurrency (either by a factor of 5 or half the current degree of concurrency, whichever is smaller)
12
- * and increase the wait time to run the algorithm again by 1 second.
13
- * If it sees no throttling and the number of items processed increased, it will increase the degree of concurrency
14
- * (by a factor of 1) which cannot exceed the max degree of concurrency (Min(20, concurrency set by user)).
15
- * It uses the @see {@link PartitionMetric} to capture the metrics.
16
- * @hidden
17
- */
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ }
15
+ return to;
16
+ };
17
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
+ var CongestionAlgorithm_exports = {};
19
+ __export(CongestionAlgorithm_exports, {
20
+ CongestionAlgorithm: () => CongestionAlgorithm
21
+ });
22
+ module.exports = __toCommonJS(CongestionAlgorithm_exports);
23
+ var import_constants = require("../common/constants.js");
18
24
  class CongestionAlgorithm {
19
- // The semaphore to control the degree of concurrency.
20
- limiterQueue;
21
- // captures metrics upto previous requests for a partition.
22
- oldPartitionMetric;
23
- // captures metrics upto current request for a partition.
24
- partitionMetric;
25
- // time to wait before adjusting the degree of concurrency.
26
- congestionWaitTimeInMs = 1000;
27
- congestionIncreaseFactor = 1;
28
- congestionDecreaseFactor = 5;
29
- currentDegreeOfConcurrency;
30
- constructor(limiterQueue, partitionMetric, oldPartitionMetric) {
31
- this.limiterQueue = limiterQueue;
32
- this.oldPartitionMetric = oldPartitionMetric;
33
- this.partitionMetric = partitionMetric;
34
- this.currentDegreeOfConcurrency = 1;
25
+ // The semaphore to control the degree of concurrency.
26
+ limiterQueue;
27
+ // captures metrics upto previous requests for a partition.
28
+ oldPartitionMetric;
29
+ // captures metrics upto current request for a partition.
30
+ partitionMetric;
31
+ // time to wait before adjusting the degree of concurrency.
32
+ congestionWaitTimeInMs = 1e3;
33
+ congestionIncreaseFactor = 1;
34
+ congestionDecreaseFactor = 5;
35
+ currentDegreeOfConcurrency;
36
+ constructor(limiterQueue, partitionMetric, oldPartitionMetric) {
37
+ this.limiterQueue = limiterQueue;
38
+ this.oldPartitionMetric = oldPartitionMetric;
39
+ this.partitionMetric = partitionMetric;
40
+ this.currentDegreeOfConcurrency = 1;
41
+ }
42
+ run() {
43
+ const elapsedTimeInMs = this.partitionMetric.timeTakenInMs - this.oldPartitionMetric.timeTakenInMs;
44
+ if (elapsedTimeInMs >= this.congestionWaitTimeInMs) {
45
+ const diffThrottle = this.partitionMetric.numberOfThrottles - this.oldPartitionMetric.numberOfThrottles;
46
+ const changeItemsCount = this.partitionMetric.numberOfItemsOperatedOn - this.oldPartitionMetric.numberOfItemsOperatedOn;
47
+ this.oldPartitionMetric.add(changeItemsCount, elapsedTimeInMs, diffThrottle);
48
+ if (diffThrottle > 0) {
49
+ this.decreaseConcurrency();
50
+ }
51
+ if (changeItemsCount > 0 && diffThrottle === 0) {
52
+ this.increaseConcurrency();
53
+ }
35
54
  }
36
- run() {
37
- const elapsedTimeInMs = this.partitionMetric.timeTakenInMs - this.oldPartitionMetric.timeTakenInMs;
38
- if (elapsedTimeInMs >= this.congestionWaitTimeInMs) {
39
- const diffThrottle = this.partitionMetric.numberOfThrottles - this.oldPartitionMetric.numberOfThrottles;
40
- const changeItemsCount = this.partitionMetric.numberOfItemsOperatedOn -
41
- this.oldPartitionMetric.numberOfItemsOperatedOn;
42
- this.oldPartitionMetric.add(changeItemsCount, elapsedTimeInMs, diffThrottle);
43
- // if the number of throttles increased, decrease the degree of concurrency.
44
- if (diffThrottle > 0) {
45
- this.decreaseConcurrency();
46
- }
47
- // if there's no throttling and the number of items processed increased, increase the degree of concurrency.
48
- if (changeItemsCount > 0 && diffThrottle === 0) {
49
- this.increaseConcurrency();
50
- }
51
- }
52
- }
53
- decreaseConcurrency() {
54
- // decrease should not lead the degree of concurrency as 0.
55
- const decreaseCount = Math.min(this.congestionDecreaseFactor, Math.floor(this.currentDegreeOfConcurrency / 2));
56
- this.currentDegreeOfConcurrency -= decreaseCount;
57
- this.limiterQueue.setConcurrency(this.currentDegreeOfConcurrency);
58
- // In case of throttling increase the wait time to adjust the degree of concurrency.
59
- this.congestionWaitTimeInMs += 1000;
60
- }
61
- increaseConcurrency() {
62
- if (this.currentDegreeOfConcurrency + this.congestionIncreaseFactor <=
63
- constants_js_1.Constants.BulkMaxDegreeOfConcurrency) {
64
- this.currentDegreeOfConcurrency += this.congestionIncreaseFactor;
65
- this.limiterQueue.setConcurrency(this.currentDegreeOfConcurrency);
66
- }
55
+ }
56
+ decreaseConcurrency() {
57
+ const decreaseCount = Math.min(
58
+ this.congestionDecreaseFactor,
59
+ Math.floor(this.currentDegreeOfConcurrency / 2)
60
+ );
61
+ this.currentDegreeOfConcurrency -= decreaseCount;
62
+ this.limiterQueue.setConcurrency(this.currentDegreeOfConcurrency);
63
+ this.congestionWaitTimeInMs += 1e3;
64
+ }
65
+ increaseConcurrency() {
66
+ if (this.currentDegreeOfConcurrency + this.congestionIncreaseFactor <= import_constants.Constants.BulkMaxDegreeOfConcurrency) {
67
+ this.currentDegreeOfConcurrency += this.congestionIncreaseFactor;
68
+ this.limiterQueue.setConcurrency(this.currentDegreeOfConcurrency);
67
69
  }
70
+ }
68
71
  }
69
- exports.CongestionAlgorithm = CongestionAlgorithm;
70
- //# sourceMappingURL=CongestionAlgorithm.js.map
72
+ // Annotate the CommonJS export names for ESM import in node:
73
+ 0 && (module.exports = {
74
+ CongestionAlgorithm
75
+ });
76
+ //# sourceMappingURL=CongestionAlgorithm.js.map