@azure/cosmos 4.9.1 → 4.9.2

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 (1282) 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/ParallelQueryRangeStrategy.d.ts +0 -4
  145. package/dist/browser/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.d.ts.map +1 -1
  146. package/dist/browser/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.js +2 -10
  147. package/dist/browser/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.js.map +1 -1
  148. package/dist/browser/request/defaultAgent.d.ts +1 -1
  149. package/dist/browser/request/defaultAgent.d.ts.map +1 -0
  150. package/dist/browser/request/defaultAgent.js +1 -1
  151. package/dist/browser/request/defaultAgent.js.map +1 -0
  152. package/dist/browser/request/hybridSearchQueryResult.d.ts +1 -1
  153. package/dist/browser/request/hybridSearchQueryResult.d.ts.map +1 -1
  154. package/dist/browser/request/hybridSearchQueryResult.js.map +1 -1
  155. package/dist/browser/request/index.d.ts +8 -8
  156. package/dist/browser/request/index.d.ts.map +1 -1
  157. package/dist/browser/request/index.js +0 -1
  158. package/dist/browser/request/index.js.map +1 -1
  159. package/dist/browser/retry/endpointDiscoveryRetryPolicy.d.ts +1 -1
  160. package/dist/browser/retry/endpointDiscoveryRetryPolicy.d.ts.map +1 -1
  161. package/dist/browser/retry/endpointDiscoveryRetryPolicy.js.map +1 -1
  162. package/dist/browser/retry/index.d.ts +1 -1
  163. package/dist/browser/retry/index.d.ts.map +1 -1
  164. package/dist/browser/retry/index.js +0 -3
  165. package/dist/browser/retry/index.js.map +1 -1
  166. package/dist/browser/retry/timeoutFailoverRetryPolicy.d.ts +1 -1
  167. package/dist/browser/retry/timeoutFailoverRetryPolicy.d.ts.map +1 -1
  168. package/dist/browser/retry/timeoutFailoverRetryPolicy.js.map +1 -1
  169. package/dist/browser/utils/atob.d.ts +1 -1
  170. package/dist/browser/utils/atob.d.ts.map +1 -0
  171. package/dist/browser/utils/atob.js +1 -1
  172. package/dist/browser/utils/atob.js.map +1 -0
  173. package/dist/browser/utils/digest.d.ts +1 -1
  174. package/dist/browser/utils/digest.d.ts.map +1 -0
  175. package/dist/browser/utils/digest.js +1 -1
  176. package/dist/browser/utils/digest.js.map +1 -0
  177. package/dist/browser/utils/envUtils.d.ts +1 -1
  178. package/dist/browser/utils/envUtils.d.ts.map +1 -0
  179. package/dist/browser/utils/envUtils.js +1 -1
  180. package/dist/browser/utils/envUtils.js.map +1 -0
  181. package/dist/browser/utils/hashing/hash.d.ts +1 -1
  182. package/dist/browser/utils/hashing/hash.d.ts.map +1 -1
  183. package/dist/browser/utils/hashing/hash.js.map +1 -1
  184. package/dist/browser/utils/hmac.d.ts +1 -1
  185. package/dist/browser/utils/hmac.d.ts.map +1 -0
  186. package/dist/browser/utils/hmac.js +1 -1
  187. package/dist/browser/utils/hmac.js.map +1 -0
  188. package/dist/commonjs/ChangeFeedIterator.js +125 -110
  189. package/dist/commonjs/ChangeFeedIterator.js.map +7 -1
  190. package/dist/commonjs/ChangeFeedOptions.js +15 -3
  191. package/dist/commonjs/ChangeFeedOptions.js.map +7 -1
  192. package/dist/commonjs/ChangeFeedResponse.js +80 -78
  193. package/dist/commonjs/ChangeFeedResponse.js.map +7 -1
  194. package/dist/commonjs/ClientContext.js +867 -761
  195. package/dist/commonjs/ClientContext.js.map +7 -1
  196. package/dist/commonjs/CosmosClient.js +293 -286
  197. package/dist/commonjs/CosmosClient.js.map +7 -1
  198. package/dist/commonjs/CosmosClientOptions.js +15 -3
  199. package/dist/commonjs/CosmosClientOptions.js.map +7 -1
  200. package/dist/commonjs/CosmosDiagnostics.js +51 -55
  201. package/dist/commonjs/CosmosDiagnostics.js.map +7 -1
  202. package/dist/commonjs/GlobalEndpointManagerOptions.js +15 -3
  203. package/dist/commonjs/GlobalEndpointManagerOptions.js.map +7 -1
  204. package/dist/commonjs/PartitionKeyRangeFailoverInfo.d.ts +1 -1
  205. package/dist/commonjs/PartitionKeyRangeFailoverInfo.d.ts.map +1 -1
  206. package/dist/commonjs/PartitionKeyRangeFailoverInfo.js +148 -134
  207. package/dist/commonjs/PartitionKeyRangeFailoverInfo.js.map +7 -1
  208. package/dist/commonjs/auth.js +91 -84
  209. package/dist/commonjs/auth.js.map +7 -1
  210. package/dist/commonjs/bulk/Batcher.js +177 -149
  211. package/dist/commonjs/bulk/Batcher.js.map +7 -1
  212. package/dist/commonjs/bulk/BulkHelper.js +320 -289
  213. package/dist/commonjs/bulk/BulkHelper.js.map +7 -1
  214. package/dist/commonjs/bulk/BulkResponse.js +140 -118
  215. package/dist/commonjs/bulk/BulkResponse.js.map +7 -1
  216. package/dist/commonjs/bulk/CongestionAlgorithm.js +71 -66
  217. package/dist/commonjs/bulk/CongestionAlgorithm.js.map +7 -1
  218. package/dist/commonjs/bulk/HelperPerPartition.js +167 -130
  219. package/dist/commonjs/bulk/HelperPerPartition.js.map +7 -1
  220. package/dist/commonjs/bulk/ItemOperation.js +15 -5
  221. package/dist/commonjs/bulk/ItemOperation.js.map +7 -1
  222. package/dist/commonjs/bulk/ItemOperationContext.js +53 -38
  223. package/dist/commonjs/bulk/ItemOperationContext.js.map +7 -1
  224. package/dist/commonjs/bulk/Limiter.js +198 -212
  225. package/dist/commonjs/bulk/Limiter.js.map +7 -1
  226. package/dist/commonjs/bulk/PartitionMetric.js +58 -35
  227. package/dist/commonjs/bulk/PartitionMetric.js.map +7 -1
  228. package/dist/commonjs/bulk/index.d.ts +1 -1
  229. package/dist/commonjs/bulk/index.d.ts.map +1 -1
  230. package/dist/commonjs/bulk/index.js +30 -10
  231. package/dist/commonjs/bulk/index.js.map +7 -1
  232. package/dist/commonjs/client/ChangeFeed/ChangeFeedEnums.js +31 -14
  233. package/dist/commonjs/client/ChangeFeed/ChangeFeedEnums.js.map +7 -1
  234. package/dist/commonjs/client/ChangeFeed/ChangeFeedForEpkRange.js +374 -327
  235. package/dist/commonjs/client/ChangeFeed/ChangeFeedForEpkRange.js.map +7 -1
  236. package/dist/commonjs/client/ChangeFeed/ChangeFeedForPartitionKey.d.ts +2 -2
  237. package/dist/commonjs/client/ChangeFeed/ChangeFeedForPartitionKey.d.ts.map +1 -1
  238. package/dist/commonjs/client/ChangeFeed/ChangeFeedForPartitionKey.js +180 -146
  239. package/dist/commonjs/client/ChangeFeed/ChangeFeedForPartitionKey.js.map +7 -1
  240. package/dist/commonjs/client/ChangeFeed/ChangeFeedIteratorBuilder.js +78 -63
  241. package/dist/commonjs/client/ChangeFeed/ChangeFeedIteratorBuilder.js.map +7 -1
  242. package/dist/commonjs/client/ChangeFeed/ChangeFeedIteratorOptions.js +15 -5
  243. package/dist/commonjs/client/ChangeFeed/ChangeFeedIteratorOptions.js.map +7 -1
  244. package/dist/commonjs/client/ChangeFeed/ChangeFeedIteratorResponse.js +67 -78
  245. package/dist/commonjs/client/ChangeFeed/ChangeFeedIteratorResponse.js.map +7 -1
  246. package/dist/commonjs/client/ChangeFeed/ChangeFeedMode.js +31 -11
  247. package/dist/commonjs/client/ChangeFeed/ChangeFeedMode.js.map +7 -1
  248. package/dist/commonjs/client/ChangeFeed/ChangeFeedPolicy.js +30 -12
  249. package/dist/commonjs/client/ChangeFeed/ChangeFeedPolicy.js.map +7 -1
  250. package/dist/commonjs/client/ChangeFeed/ChangeFeedPullModelIterator.js +15 -3
  251. package/dist/commonjs/client/ChangeFeed/ChangeFeedPullModelIterator.js.map +7 -1
  252. package/dist/commonjs/client/ChangeFeed/ChangeFeedRange.js +53 -38
  253. package/dist/commonjs/client/ChangeFeed/ChangeFeedRange.js.map +7 -1
  254. package/dist/commonjs/client/ChangeFeed/ChangeFeedRetentionTimeSpan.js +52 -36
  255. package/dist/commonjs/client/ChangeFeed/ChangeFeedRetentionTimeSpan.js.map +7 -1
  256. package/dist/commonjs/client/ChangeFeed/ChangeFeedStartFrom.js +70 -54
  257. package/dist/commonjs/client/ChangeFeed/ChangeFeedStartFrom.js.map +7 -1
  258. package/dist/commonjs/client/ChangeFeed/ChangeFeedStartFromBeginning.js +33 -16
  259. package/dist/commonjs/client/ChangeFeed/ChangeFeedStartFromBeginning.js.map +7 -1
  260. package/dist/commonjs/client/ChangeFeed/ChangeFeedStartFromContinuation.js +47 -38
  261. package/dist/commonjs/client/ChangeFeed/ChangeFeedStartFromContinuation.js.map +7 -1
  262. package/dist/commonjs/client/ChangeFeed/ChangeFeedStartFromNow.js +33 -18
  263. package/dist/commonjs/client/ChangeFeed/ChangeFeedStartFromNow.js.map +7 -1
  264. package/dist/commonjs/client/ChangeFeed/ChangeFeedStartFromTime.js +38 -21
  265. package/dist/commonjs/client/ChangeFeed/ChangeFeedStartFromTime.js.map +7 -1
  266. package/dist/commonjs/client/ChangeFeed/CompositeContinuationToken.js +38 -21
  267. package/dist/commonjs/client/ChangeFeed/CompositeContinuationToken.js.map +7 -1
  268. package/dist/commonjs/client/ChangeFeed/ContinuationTokenForPartitionKey.js +43 -26
  269. package/dist/commonjs/client/ChangeFeed/ContinuationTokenForPartitionKey.js.map +7 -1
  270. package/dist/commonjs/client/ChangeFeed/FeedRange.js +50 -38
  271. package/dist/commonjs/client/ChangeFeed/FeedRange.js.map +7 -1
  272. package/dist/commonjs/client/ChangeFeed/FeedRangeQueue.js +68 -49
  273. package/dist/commonjs/client/ChangeFeed/FeedRangeQueue.js.map +7 -1
  274. package/dist/commonjs/client/ChangeFeed/InternalChangeFeedOptions.js +15 -5
  275. package/dist/commonjs/client/ChangeFeed/InternalChangeFeedOptions.js.map +7 -1
  276. package/dist/commonjs/client/ChangeFeed/buildChangeFeedIterator.js +143 -71
  277. package/dist/commonjs/client/ChangeFeed/buildChangeFeedIterator.js.map +7 -1
  278. package/dist/commonjs/client/ChangeFeed/changeFeedUtils.d.ts +4 -4
  279. package/dist/commonjs/client/ChangeFeed/changeFeedUtils.d.ts.map +1 -1
  280. package/dist/commonjs/client/ChangeFeed/changeFeedUtils.js +160 -188
  281. package/dist/commonjs/client/ChangeFeed/changeFeedUtils.js.map +7 -1
  282. package/dist/commonjs/client/ChangeFeed/index.d.ts +2 -2
  283. package/dist/commonjs/client/ChangeFeed/index.d.ts.map +1 -1
  284. package/dist/commonjs/client/ChangeFeed/index.js +59 -29
  285. package/dist/commonjs/client/ChangeFeed/index.js.map +7 -1
  286. package/dist/commonjs/client/ClientUtils.d.ts +1 -1
  287. package/dist/commonjs/client/ClientUtils.d.ts.map +1 -1
  288. package/dist/commonjs/client/ClientUtils.js +42 -16
  289. package/dist/commonjs/client/ClientUtils.js.map +7 -1
  290. package/dist/commonjs/client/Conflict/Conflict.js +127 -100
  291. package/dist/commonjs/client/Conflict/Conflict.js.map +7 -1
  292. package/dist/commonjs/client/Conflict/ConflictDefinition.js +15 -3
  293. package/dist/commonjs/client/Conflict/ConflictDefinition.js.map +7 -1
  294. package/dist/commonjs/client/Conflict/ConflictResolutionMode.js +31 -11
  295. package/dist/commonjs/client/Conflict/ConflictResolutionMode.js.map +7 -1
  296. package/dist/commonjs/client/Conflict/ConflictResolutionPolicy.js +15 -3
  297. package/dist/commonjs/client/Conflict/ConflictResolutionPolicy.js.map +7 -1
  298. package/dist/commonjs/client/Conflict/ConflictResponse.js +34 -13
  299. package/dist/commonjs/client/Conflict/ConflictResponse.js.map +7 -1
  300. package/dist/commonjs/client/Conflict/Conflicts.js +70 -51
  301. package/dist/commonjs/client/Conflict/Conflicts.js.map +7 -1
  302. package/dist/commonjs/client/Conflict/index.d.ts +2 -2
  303. package/dist/commonjs/client/Conflict/index.d.ts.map +1 -1
  304. package/dist/commonjs/client/Conflict/index.js +36 -14
  305. package/dist/commonjs/client/Conflict/index.js.map +7 -1
  306. package/dist/commonjs/client/Container/Container.js +664 -599
  307. package/dist/commonjs/client/Container/Container.js.map +7 -1
  308. package/dist/commonjs/client/Container/ContainerDefinition.d.ts +1 -1
  309. package/dist/commonjs/client/Container/ContainerDefinition.d.ts.map +1 -1
  310. package/dist/commonjs/client/Container/ContainerDefinition.js +15 -3
  311. package/dist/commonjs/client/Container/ContainerDefinition.js.map +7 -1
  312. package/dist/commonjs/client/Container/ContainerRequest.js +15 -3
  313. package/dist/commonjs/client/Container/ContainerRequest.js.map +7 -1
  314. package/dist/commonjs/client/Container/ContainerResponse.js +34 -14
  315. package/dist/commonjs/client/Container/ContainerResponse.js.map +7 -1
  316. package/dist/commonjs/client/Container/Containers.js +232 -218
  317. package/dist/commonjs/client/Container/Containers.js.map +7 -1
  318. package/dist/commonjs/client/Container/PartitionKeyRange.js +15 -3
  319. package/dist/commonjs/client/Container/PartitionKeyRange.js.map +7 -1
  320. package/dist/commonjs/client/Container/UniqueKeyPolicy.js +15 -3
  321. package/dist/commonjs/client/Container/UniqueKeyPolicy.js.map +7 -1
  322. package/dist/commonjs/client/Container/index.d.ts +4 -4
  323. package/dist/commonjs/client/Container/index.d.ts.map +1 -1
  324. package/dist/commonjs/client/Container/index.js +33 -12
  325. package/dist/commonjs/client/Container/index.js.map +7 -1
  326. package/dist/commonjs/client/Database/Database.js +528 -448
  327. package/dist/commonjs/client/Database/Database.js.map +7 -1
  328. package/dist/commonjs/client/Database/DatabaseDefinition.js +15 -3
  329. package/dist/commonjs/client/Database/DatabaseDefinition.js.map +7 -1
  330. package/dist/commonjs/client/Database/DatabaseRequest.js +15 -3
  331. package/dist/commonjs/client/Database/DatabaseRequest.js.map +7 -1
  332. package/dist/commonjs/client/Database/DatabaseResponse.js +34 -14
  333. package/dist/commonjs/client/Database/DatabaseResponse.js.map +7 -1
  334. package/dist/commonjs/client/Database/Databases.js +197 -188
  335. package/dist/commonjs/client/Database/Databases.js.map +7 -1
  336. package/dist/commonjs/client/Database/index.d.ts +2 -2
  337. package/dist/commonjs/client/Database/index.d.ts.map +1 -1
  338. package/dist/commonjs/client/Database/index.js +33 -12
  339. package/dist/commonjs/client/Database/index.js.map +7 -1
  340. package/dist/commonjs/client/Item/Item.js +506 -383
  341. package/dist/commonjs/client/Item/Item.js.map +7 -1
  342. package/dist/commonjs/client/Item/ItemDefinition.js +15 -5
  343. package/dist/commonjs/client/Item/ItemDefinition.js.map +7 -1
  344. package/dist/commonjs/client/Item/ItemResponse.js +34 -13
  345. package/dist/commonjs/client/Item/ItemResponse.js.map +7 -1
  346. package/dist/commonjs/client/Item/Items.d.ts.map +1 -1
  347. package/dist/commonjs/client/Item/Items.js +888 -717
  348. package/dist/commonjs/client/Item/Items.js.map +7 -1
  349. package/dist/commonjs/client/Item/index.d.ts +1 -1
  350. package/dist/commonjs/client/Item/index.d.ts.map +1 -1
  351. package/dist/commonjs/client/Item/index.js +33 -12
  352. package/dist/commonjs/client/Item/index.js.map +7 -1
  353. package/dist/commonjs/client/Offer/Offer.js +115 -90
  354. package/dist/commonjs/client/Offer/Offer.js.map +7 -1
  355. package/dist/commonjs/client/Offer/OfferDefinition.js +15 -3
  356. package/dist/commonjs/client/Offer/OfferDefinition.js.map +7 -1
  357. package/dist/commonjs/client/Offer/OfferResponse.js +34 -13
  358. package/dist/commonjs/client/Offer/OfferResponse.js.map +7 -1
  359. package/dist/commonjs/client/Offer/Offers.js +65 -51
  360. package/dist/commonjs/client/Offer/Offers.js.map +7 -1
  361. package/dist/commonjs/client/Offer/index.d.ts +1 -1
  362. package/dist/commonjs/client/Offer/index.d.ts.map +1 -1
  363. package/dist/commonjs/client/Offer/index.js +33 -12
  364. package/dist/commonjs/client/Offer/index.js.map +7 -1
  365. package/dist/commonjs/client/Permission/Permission.js +158 -127
  366. package/dist/commonjs/client/Permission/Permission.js.map +7 -1
  367. package/dist/commonjs/client/Permission/PermissionBody.js +15 -3
  368. package/dist/commonjs/client/Permission/PermissionBody.js.map +7 -1
  369. package/dist/commonjs/client/Permission/PermissionDefinition.js +15 -3
  370. package/dist/commonjs/client/Permission/PermissionDefinition.js.map +7 -1
  371. package/dist/commonjs/client/Permission/PermissionResponse.js +34 -13
  372. package/dist/commonjs/client/Permission/PermissionResponse.js.map +7 -1
  373. package/dist/commonjs/client/Permission/Permissions.js +170 -144
  374. package/dist/commonjs/client/Permission/Permissions.js.map +7 -1
  375. package/dist/commonjs/client/Permission/index.d.ts +2 -2
  376. package/dist/commonjs/client/Permission/index.d.ts.map +1 -1
  377. package/dist/commonjs/client/Permission/index.js +33 -12
  378. package/dist/commonjs/client/Permission/index.js.map +7 -1
  379. package/dist/commonjs/client/Resource.js +15 -3
  380. package/dist/commonjs/client/Resource.js.map +7 -1
  381. package/dist/commonjs/client/SasToken/PermissionScopeValues.js +91 -80
  382. package/dist/commonjs/client/SasToken/PermissionScopeValues.js.map +7 -1
  383. package/dist/commonjs/client/SasToken/SasTokenProperties.js +43 -24
  384. package/dist/commonjs/client/SasToken/SasTokenProperties.js.map +7 -1
  385. package/dist/commonjs/client/Script/Scripts.js +97 -80
  386. package/dist/commonjs/client/Script/Scripts.js.map +7 -1
  387. package/dist/commonjs/client/StoredProcedure/StoredProcedure.js +224 -185
  388. package/dist/commonjs/client/StoredProcedure/StoredProcedure.js.map +7 -1
  389. package/dist/commonjs/client/StoredProcedure/StoredProcedureDefinition.js +15 -3
  390. package/dist/commonjs/client/StoredProcedure/StoredProcedureDefinition.js.map +7 -1
  391. package/dist/commonjs/client/StoredProcedure/StoredProcedureResponse.js +44 -23
  392. package/dist/commonjs/client/StoredProcedure/StoredProcedureResponse.js.map +7 -1
  393. package/dist/commonjs/client/StoredProcedure/StoredProcedures.js +131 -111
  394. package/dist/commonjs/client/StoredProcedure/StoredProcedures.js.map +7 -1
  395. package/dist/commonjs/client/StoredProcedure/index.d.ts +1 -1
  396. package/dist/commonjs/client/StoredProcedure/index.d.ts.map +1 -1
  397. package/dist/commonjs/client/StoredProcedure/index.js +33 -12
  398. package/dist/commonjs/client/StoredProcedure/index.js.map +7 -1
  399. package/dist/commonjs/client/Trigger/Trigger.js +169 -138
  400. package/dist/commonjs/client/Trigger/Trigger.js.map +7 -1
  401. package/dist/commonjs/client/Trigger/TriggerDefinition.js +15 -3
  402. package/dist/commonjs/client/Trigger/TriggerDefinition.js.map +7 -1
  403. package/dist/commonjs/client/Trigger/TriggerResponse.js +34 -13
  404. package/dist/commonjs/client/Trigger/TriggerResponse.js.map +7 -1
  405. package/dist/commonjs/client/Trigger/Triggers.js +130 -110
  406. package/dist/commonjs/client/Trigger/Triggers.js.map +7 -1
  407. package/dist/commonjs/client/Trigger/index.d.ts +1 -1
  408. package/dist/commonjs/client/Trigger/index.d.ts.map +1 -1
  409. package/dist/commonjs/client/Trigger/index.js +33 -12
  410. package/dist/commonjs/client/Trigger/index.js.map +7 -1
  411. package/dist/commonjs/client/User/User.js +170 -141
  412. package/dist/commonjs/client/User/User.js.map +7 -1
  413. package/dist/commonjs/client/User/UserDefinition.js +15 -3
  414. package/dist/commonjs/client/User/UserDefinition.js.map +7 -1
  415. package/dist/commonjs/client/User/UserResponse.js +34 -13
  416. package/dist/commonjs/client/User/UserResponse.js.map +7 -1
  417. package/dist/commonjs/client/User/Users.js +154 -128
  418. package/dist/commonjs/client/User/Users.js.map +7 -1
  419. package/dist/commonjs/client/User/index.d.ts +1 -1
  420. package/dist/commonjs/client/User/index.d.ts.map +1 -1
  421. package/dist/commonjs/client/User/index.js +33 -12
  422. package/dist/commonjs/client/User/index.js.map +7 -1
  423. package/dist/commonjs/client/UserDefinedFunction/UserDefinedFunction.js +168 -137
  424. package/dist/commonjs/client/UserDefinedFunction/UserDefinedFunction.js.map +7 -1
  425. package/dist/commonjs/client/UserDefinedFunction/UserDefinedFunctionDefinition.js +15 -3
  426. package/dist/commonjs/client/UserDefinedFunction/UserDefinedFunctionDefinition.js.map +7 -1
  427. package/dist/commonjs/client/UserDefinedFunction/UserDefinedFunctionResponse.js +42 -21
  428. package/dist/commonjs/client/UserDefinedFunction/UserDefinedFunctionResponse.js.map +7 -1
  429. package/dist/commonjs/client/UserDefinedFunction/UserDefinedFunctions.js +127 -107
  430. package/dist/commonjs/client/UserDefinedFunction/UserDefinedFunctions.js.map +7 -1
  431. package/dist/commonjs/client/UserDefinedFunction/index.d.ts +1 -1
  432. package/dist/commonjs/client/UserDefinedFunction/index.d.ts.map +1 -1
  433. package/dist/commonjs/client/UserDefinedFunction/index.js +33 -12
  434. package/dist/commonjs/client/UserDefinedFunction/index.js.map +7 -1
  435. package/dist/commonjs/client/index.d.ts +1 -1
  436. package/dist/commonjs/client/index.d.ts.map +1 -1
  437. package/dist/commonjs/client/index.js +41 -18
  438. package/dist/commonjs/client/index.js.map +7 -1
  439. package/dist/commonjs/common/constants.js +514 -500
  440. package/dist/commonjs/common/constants.js.map +7 -1
  441. package/dist/commonjs/common/helper.d.ts +4 -4
  442. package/dist/commonjs/common/helper.d.ts.map +1 -1
  443. package/dist/commonjs/common/helper.js +349 -412
  444. package/dist/commonjs/common/helper.js.map +7 -1
  445. package/dist/commonjs/common/index.js +27 -10
  446. package/dist/commonjs/common/index.js.map +7 -1
  447. package/dist/commonjs/common/logger.js +28 -9
  448. package/dist/commonjs/common/logger.js.map +7 -1
  449. package/dist/commonjs/common/partitionKeys.js +27 -7
  450. package/dist/commonjs/common/partitionKeys.js.map +7 -1
  451. package/dist/commonjs/common/platform.d.ts +1 -1
  452. package/dist/commonjs/common/platform.d.ts.map +1 -1
  453. package/dist/commonjs/common/platform.js +54 -42
  454. package/dist/commonjs/common/platform.js.map +7 -1
  455. package/dist/commonjs/common/statusCodes.js +76 -60
  456. package/dist/commonjs/common/statusCodes.js.map +7 -1
  457. package/dist/commonjs/common/uriFactory.js +79 -195
  458. package/dist/commonjs/common/uriFactory.js.map +7 -1
  459. package/dist/commonjs/diagnostics/CosmosDbDiagnosticLevel.js +32 -15
  460. package/dist/commonjs/diagnostics/CosmosDbDiagnosticLevel.js.map +7 -1
  461. package/dist/commonjs/diagnostics/CosmosDiagnosticsContext.js +145 -126
  462. package/dist/commonjs/diagnostics/CosmosDiagnosticsContext.js.map +7 -1
  463. package/dist/commonjs/diagnostics/DiagnosticFormatter.js +29 -10
  464. package/dist/commonjs/diagnostics/DiagnosticFormatter.js.map +7 -1
  465. package/dist/commonjs/diagnostics/DiagnosticNodeInternal.d.ts +1 -1
  466. package/dist/commonjs/diagnostics/DiagnosticNodeInternal.d.ts.map +1 -1
  467. package/dist/commonjs/diagnostics/DiagnosticNodeInternal.js +316 -305
  468. package/dist/commonjs/diagnostics/DiagnosticNodeInternal.js.map +7 -1
  469. package/dist/commonjs/diagnostics/DiagnosticWriter.js +35 -25
  470. package/dist/commonjs/diagnostics/DiagnosticWriter.js.map +7 -1
  471. package/dist/commonjs/diagnostics/diagnosticLevelComparator.js +39 -24
  472. package/dist/commonjs/diagnostics/diagnosticLevelComparator.js.map +7 -1
  473. package/dist/commonjs/diagnostics/index.js +67 -34
  474. package/dist/commonjs/diagnostics/index.js.map +7 -1
  475. package/dist/commonjs/documents/ComputedProperty.js +15 -3
  476. package/dist/commonjs/documents/ComputedProperty.js.map +7 -1
  477. package/dist/commonjs/documents/ConnectionMode.js +30 -12
  478. package/dist/commonjs/documents/ConnectionMode.js.map +7 -1
  479. package/dist/commonjs/documents/ConnectionPolicy.js +43 -26
  480. package/dist/commonjs/documents/ConnectionPolicy.js.map +7 -1
  481. package/dist/commonjs/documents/ConsistencyLevel.js +34 -43
  482. package/dist/commonjs/documents/ConsistencyLevel.js.map +7 -1
  483. package/dist/commonjs/documents/ContinuationToken/CompositeQueryContinuationToken.js +76 -79
  484. package/dist/commonjs/documents/ContinuationToken/CompositeQueryContinuationToken.js.map +7 -1
  485. package/dist/commonjs/documents/ContinuationToken/OrderByQueryContinuationToken.js +48 -38
  486. package/dist/commonjs/documents/ContinuationToken/OrderByQueryContinuationToken.js.map +7 -1
  487. package/dist/commonjs/documents/ContinuationToken/PartitionRangeUpdate.js +15 -5
  488. package/dist/commonjs/documents/ContinuationToken/PartitionRangeUpdate.js.map +7 -1
  489. package/dist/commonjs/documents/DataType.js +35 -22
  490. package/dist/commonjs/documents/DataType.js.map +7 -1
  491. package/dist/commonjs/documents/DatabaseAccount.js +109 -100
  492. package/dist/commonjs/documents/DatabaseAccount.js.map +7 -1
  493. package/dist/commonjs/documents/Document.js +15 -3
  494. package/dist/commonjs/documents/Document.js.map +7 -1
  495. package/dist/commonjs/documents/FullTextPolicy.js +15 -5
  496. package/dist/commonjs/documents/FullTextPolicy.js.map +7 -1
  497. package/dist/commonjs/documents/GeospatialType.js +31 -13
  498. package/dist/commonjs/documents/GeospatialType.js.map +7 -1
  499. package/dist/commonjs/documents/IndexKind.js +31 -20
  500. package/dist/commonjs/documents/IndexKind.js.map +7 -1
  501. package/dist/commonjs/documents/IndexingMode.js +32 -27
  502. package/dist/commonjs/documents/IndexingMode.js.map +7 -1
  503. package/dist/commonjs/documents/IndexingPolicy.js +41 -30
  504. package/dist/commonjs/documents/IndexingPolicy.js.map +7 -1
  505. package/dist/commonjs/documents/PartitionKey.js +43 -27
  506. package/dist/commonjs/documents/PartitionKey.js.map +7 -1
  507. package/dist/commonjs/documents/PartitionKeyDefinition.js +15 -3
  508. package/dist/commonjs/documents/PartitionKeyDefinition.js.map +7 -1
  509. package/dist/commonjs/documents/PartitionKeyDefinitionVersion.js +31 -14
  510. package/dist/commonjs/documents/PartitionKeyDefinitionVersion.js.map +7 -1
  511. package/dist/commonjs/documents/PartitionKeyInternal.js +35 -28
  512. package/dist/commonjs/documents/PartitionKeyInternal.js.map +7 -1
  513. package/dist/commonjs/documents/PartitionKeyKind.js +31 -14
  514. package/dist/commonjs/documents/PartitionKeyKind.js.map +7 -1
  515. package/dist/commonjs/documents/PermissionMode.js +32 -18
  516. package/dist/commonjs/documents/PermissionMode.js.map +7 -1
  517. package/dist/commonjs/documents/PriorityLevel.js +31 -25
  518. package/dist/commonjs/documents/PriorityLevel.js.map +7 -1
  519. package/dist/commonjs/documents/TriggerOperation.js +34 -23
  520. package/dist/commonjs/documents/TriggerOperation.js.map +7 -1
  521. package/dist/commonjs/documents/TriggerType.js +31 -17
  522. package/dist/commonjs/documents/TriggerType.js.map +7 -1
  523. package/dist/commonjs/documents/UserDefinedFunctionType.js +30 -15
  524. package/dist/commonjs/documents/UserDefinedFunctionType.js.map +7 -1
  525. package/dist/commonjs/documents/VectorEmbeddingPolicy.js +41 -44
  526. package/dist/commonjs/documents/VectorEmbeddingPolicy.js.map +7 -1
  527. package/dist/commonjs/documents/index.d.ts +4 -4
  528. package/dist/commonjs/documents/index.d.ts.map +1 -1
  529. package/dist/commonjs/documents/index.js +57 -29
  530. package/dist/commonjs/documents/index.js.map +7 -1
  531. package/dist/commonjs/encryption/AeadAes256CbcHmacSha256Algorithm/AeadAes256CbcHmacSha256Algorithm.d.ts +1 -1
  532. package/dist/commonjs/encryption/AeadAes256CbcHmacSha256Algorithm/AeadAes256CbcHmacSha256Algorithm.d.ts.map +1 -1
  533. package/dist/commonjs/encryption/AeadAes256CbcHmacSha256Algorithm/AeadAes256CbcHmacSha256Algorithm.js +97 -71
  534. package/dist/commonjs/encryption/AeadAes256CbcHmacSha256Algorithm/AeadAes256CbcHmacSha256Algorithm.js.map +7 -1
  535. package/dist/commonjs/encryption/AeadAes256CbcHmacSha256Algorithm/index.js +27 -8
  536. package/dist/commonjs/encryption/AeadAes256CbcHmacSha256Algorithm/index.js.map +7 -1
  537. package/dist/commonjs/encryption/Cache/ClientEncryptionKeyPropertiesCache.js +37 -23
  538. package/dist/commonjs/encryption/Cache/ClientEncryptionKeyPropertiesCache.js.map +7 -1
  539. package/dist/commonjs/encryption/Cache/EncryptionSettingsCache.js +52 -36
  540. package/dist/commonjs/encryption/Cache/EncryptionSettingsCache.js.map +7 -1
  541. package/dist/commonjs/encryption/Cache/KeyEncryptionKeyCache.js +46 -32
  542. package/dist/commonjs/encryption/Cache/KeyEncryptionKeyCache.js.map +7 -1
  543. package/dist/commonjs/encryption/Cache/ProtectedDataEncryptionKeyCache.js +98 -86
  544. package/dist/commonjs/encryption/Cache/ProtectedDataEncryptionKeyCache.js.map +7 -1
  545. package/dist/commonjs/encryption/ClientEncryptionIncludedPath.d.ts +1 -1
  546. package/dist/commonjs/encryption/ClientEncryptionIncludedPath.d.ts.map +1 -1
  547. package/dist/commonjs/encryption/ClientEncryptionIncludedPath.js +15 -5
  548. package/dist/commonjs/encryption/ClientEncryptionIncludedPath.js.map +7 -1
  549. package/dist/commonjs/encryption/ClientEncryptionKey/ClientEncryptionKeyProperties.js +15 -5
  550. package/dist/commonjs/encryption/ClientEncryptionKey/ClientEncryptionKeyProperties.js.map +7 -1
  551. package/dist/commonjs/encryption/ClientEncryptionKey/ClientEncryptionKeyRequest.js +15 -5
  552. package/dist/commonjs/encryption/ClientEncryptionKey/ClientEncryptionKeyRequest.js.map +7 -1
  553. package/dist/commonjs/encryption/ClientEncryptionKey/ClientEncryptionKeyResponse.d.ts +4 -4
  554. package/dist/commonjs/encryption/ClientEncryptionKey/ClientEncryptionKeyResponse.d.ts.map +1 -1
  555. package/dist/commonjs/encryption/ClientEncryptionKey/ClientEncryptionKeyResponse.js +34 -16
  556. package/dist/commonjs/encryption/ClientEncryptionKey/ClientEncryptionKeyResponse.js.map +7 -1
  557. package/dist/commonjs/encryption/ClientEncryptionKey/index.d.ts +2 -2
  558. package/dist/commonjs/encryption/ClientEncryptionKey/index.d.ts.map +1 -1
  559. package/dist/commonjs/encryption/ClientEncryptionKey/index.js +27 -8
  560. package/dist/commonjs/encryption/ClientEncryptionKey/index.js.map +7 -1
  561. package/dist/commonjs/encryption/ClientEncryptionOptions.js +15 -5
  562. package/dist/commonjs/encryption/ClientEncryptionOptions.js.map +7 -1
  563. package/dist/commonjs/encryption/ClientEncryptionPolicy.js +15 -5
  564. package/dist/commonjs/encryption/ClientEncryptionPolicy.js.map +7 -1
  565. package/dist/commonjs/encryption/CosmosEncryptedNumber.js +31 -20
  566. package/dist/commonjs/encryption/CosmosEncryptedNumber.js.map +7 -1
  567. package/dist/commonjs/encryption/EncryptionItemQueryIterator.js +129 -106
  568. package/dist/commonjs/encryption/EncryptionItemQueryIterator.js.map +7 -1
  569. package/dist/commonjs/encryption/EncryptionKey/DataEncryptionKey.js +51 -32
  570. package/dist/commonjs/encryption/EncryptionKey/DataEncryptionKey.js.map +7 -1
  571. package/dist/commonjs/encryption/EncryptionKey/ProtectedDataEncryptionKey.js +36 -23
  572. package/dist/commonjs/encryption/EncryptionKey/ProtectedDataEncryptionKey.js.map +7 -1
  573. package/dist/commonjs/encryption/EncryptionKey/index.js +30 -10
  574. package/dist/commonjs/encryption/EncryptionKey/index.js.map +7 -1
  575. package/dist/commonjs/encryption/EncryptionKeyResolver/AzureKeyVaultEncryptionKeyResolver.js +112 -94
  576. package/dist/commonjs/encryption/EncryptionKeyResolver/AzureKeyVaultEncryptionKeyResolver.js.map +7 -1
  577. package/dist/commonjs/encryption/EncryptionKeyResolver/EncryptionKeyResolver.js +15 -5
  578. package/dist/commonjs/encryption/EncryptionKeyResolver/EncryptionKeyResolver.js.map +7 -1
  579. package/dist/commonjs/encryption/EncryptionKeyResolver/index.d.ts +1 -1
  580. package/dist/commonjs/encryption/EncryptionKeyResolver/index.d.ts.map +1 -1
  581. package/dist/commonjs/encryption/EncryptionKeyResolver/index.js +27 -8
  582. package/dist/commonjs/encryption/EncryptionKeyResolver/index.js.map +7 -1
  583. package/dist/commonjs/encryption/EncryptionKeyStoreProvider.js +80 -55
  584. package/dist/commonjs/encryption/EncryptionKeyStoreProvider.js.map +7 -1
  585. package/dist/commonjs/encryption/EncryptionKeyWrapMetadata.js +15 -5
  586. package/dist/commonjs/encryption/EncryptionKeyWrapMetadata.js.map +7 -1
  587. package/dist/commonjs/encryption/EncryptionManager.js +57 -42
  588. package/dist/commonjs/encryption/EncryptionManager.js.map +7 -1
  589. package/dist/commonjs/encryption/EncryptionProcessor.js +340 -284
  590. package/dist/commonjs/encryption/EncryptionProcessor.js.map +7 -1
  591. package/dist/commonjs/encryption/EncryptionQueryBuilder.d.ts +2 -2
  592. package/dist/commonjs/encryption/EncryptionQueryBuilder.d.ts.map +1 -1
  593. package/dist/commonjs/encryption/EncryptionQueryBuilder.js +109 -99
  594. package/dist/commonjs/encryption/EncryptionQueryBuilder.js.map +7 -1
  595. package/dist/commonjs/encryption/EncryptionSettingForProperty.js +64 -33
  596. package/dist/commonjs/encryption/EncryptionSettingForProperty.js.map +7 -1
  597. package/dist/commonjs/encryption/EncryptionSettings.js +45 -30
  598. package/dist/commonjs/encryption/EncryptionSettings.js.map +7 -1
  599. package/dist/commonjs/encryption/KeyEncryptionKey.js +51 -28
  600. package/dist/commonjs/encryption/KeyEncryptionKey.js.map +7 -1
  601. package/dist/commonjs/encryption/Serializers/BooleanSerializer.d.ts +1 -1
  602. package/dist/commonjs/encryption/Serializers/BooleanSerializer.d.ts.map +1 -1
  603. package/dist/commonjs/encryption/Serializers/BooleanSerializer.js +37 -18
  604. package/dist/commonjs/encryption/Serializers/BooleanSerializer.js.map +7 -1
  605. package/dist/commonjs/encryption/Serializers/FloatSerializer.d.ts +1 -1
  606. package/dist/commonjs/encryption/Serializers/FloatSerializer.d.ts.map +1 -1
  607. package/dist/commonjs/encryption/Serializers/FloatSerializer.js +39 -20
  608. package/dist/commonjs/encryption/Serializers/FloatSerializer.js.map +7 -1
  609. package/dist/commonjs/encryption/Serializers/NumberSerializer.js +38 -19
  610. package/dist/commonjs/encryption/Serializers/NumberSerializer.js.map +7 -1
  611. package/dist/commonjs/encryption/Serializers/Serializer.js +15 -5
  612. package/dist/commonjs/encryption/Serializers/Serializer.js.map +7 -1
  613. package/dist/commonjs/encryption/Serializers/StringSerializer.d.ts +1 -1
  614. package/dist/commonjs/encryption/Serializers/StringSerializer.d.ts.map +1 -1
  615. package/dist/commonjs/encryption/Serializers/StringSerializer.js +33 -14
  616. package/dist/commonjs/encryption/Serializers/StringSerializer.js.map +7 -1
  617. package/dist/commonjs/encryption/Serializers/index.d.ts +1 -1
  618. package/dist/commonjs/encryption/Serializers/index.d.ts.map +1 -1
  619. package/dist/commonjs/encryption/Serializers/index.js +36 -14
  620. package/dist/commonjs/encryption/Serializers/index.js.map +7 -1
  621. package/dist/commonjs/encryption/enums/EncryptionAlgorithm.js +30 -13
  622. package/dist/commonjs/encryption/enums/EncryptionAlgorithm.js.map +7 -1
  623. package/dist/commonjs/encryption/enums/EncryptionKeyResolverName.js +30 -12
  624. package/dist/commonjs/encryption/enums/EncryptionKeyResolverName.js.map +7 -1
  625. package/dist/commonjs/encryption/enums/EncryptionType.js +31 -16
  626. package/dist/commonjs/encryption/enums/EncryptionType.js.map +7 -1
  627. package/dist/commonjs/encryption/enums/KeyEncryptionAlgorithm.js +30 -12
  628. package/dist/commonjs/encryption/enums/KeyEncryptionAlgorithm.js.map +7 -1
  629. package/dist/commonjs/encryption/enums/TypeMarker.js +34 -14
  630. package/dist/commonjs/encryption/enums/TypeMarker.js.map +7 -1
  631. package/dist/commonjs/encryption/enums/index.js +36 -14
  632. package/dist/commonjs/encryption/enums/index.js.map +7 -1
  633. package/dist/commonjs/encryption/index.d.ts +5 -5
  634. package/dist/commonjs/encryption/index.d.ts.map +1 -1
  635. package/dist/commonjs/encryption/index.js +55 -26
  636. package/dist/commonjs/encryption/index.js.map +7 -1
  637. package/dist/commonjs/extractPartitionKey.js +92 -91
  638. package/dist/commonjs/extractPartitionKey.js.map +7 -1
  639. package/dist/commonjs/globalEndpointManager.js +364 -357
  640. package/dist/commonjs/globalEndpointManager.js.map +7 -1
  641. package/dist/commonjs/globalPartitionEndpointManager.d.ts +2 -1
  642. package/dist/commonjs/globalPartitionEndpointManager.d.ts.map +1 -1
  643. package/dist/commonjs/globalPartitionEndpointManager.js +322 -297
  644. package/dist/commonjs/globalPartitionEndpointManager.js.map +7 -1
  645. package/dist/commonjs/index.d.ts +16 -16
  646. package/dist/commonjs/index.d.ts.map +1 -1
  647. package/dist/commonjs/index.js +177 -96
  648. package/dist/commonjs/index.js.map +7 -1
  649. package/dist/commonjs/plugins/Plugin.js +50 -44
  650. package/dist/commonjs/plugins/Plugin.js.map +7 -1
  651. package/dist/commonjs/queryExecutionContext/Aggregators/Aggregator.js +15 -3
  652. package/dist/commonjs/queryExecutionContext/Aggregators/Aggregator.js.map +7 -1
  653. package/dist/commonjs/queryExecutionContext/Aggregators/AverageAggregator.js +49 -29
  654. package/dist/commonjs/queryExecutionContext/Aggregators/AverageAggregator.js.map +7 -1
  655. package/dist/commonjs/queryExecutionContext/Aggregators/CountAggregator.js +46 -26
  656. package/dist/commonjs/queryExecutionContext/Aggregators/CountAggregator.js.map +7 -1
  657. package/dist/commonjs/queryExecutionContext/Aggregators/GlobalStatisticsAggregator.js +64 -54
  658. package/dist/commonjs/queryExecutionContext/Aggregators/GlobalStatisticsAggregator.js.map +7 -1
  659. package/dist/commonjs/queryExecutionContext/Aggregators/MakeListAggregator.js +38 -18
  660. package/dist/commonjs/queryExecutionContext/Aggregators/MakeListAggregator.js.map +7 -1
  661. package/dist/commonjs/queryExecutionContext/Aggregators/MakeSetAggregator.js +46 -29
  662. package/dist/commonjs/queryExecutionContext/Aggregators/MakeSetAggregator.js.map +7 -1
  663. package/dist/commonjs/queryExecutionContext/Aggregators/MaxAggregator.js +54 -38
  664. package/dist/commonjs/queryExecutionContext/Aggregators/MaxAggregator.js.map +7 -1
  665. package/dist/commonjs/queryExecutionContext/Aggregators/MinAggregator.js +58 -43
  666. package/dist/commonjs/queryExecutionContext/Aggregators/MinAggregator.js.map +7 -1
  667. package/dist/commonjs/queryExecutionContext/Aggregators/StaticValueAggregator.js +34 -14
  668. package/dist/commonjs/queryExecutionContext/Aggregators/StaticValueAggregator.js.map +7 -1
  669. package/dist/commonjs/queryExecutionContext/Aggregators/SumAggregator.js +44 -25
  670. package/dist/commonjs/queryExecutionContext/Aggregators/SumAggregator.js.map +7 -1
  671. package/dist/commonjs/queryExecutionContext/Aggregators/index.d.ts +1 -1
  672. package/dist/commonjs/queryExecutionContext/Aggregators/index.d.ts.map +1 -1
  673. package/dist/commonjs/queryExecutionContext/Aggregators/index.js +63 -39
  674. package/dist/commonjs/queryExecutionContext/Aggregators/index.js.map +7 -1
  675. package/dist/commonjs/queryExecutionContext/ContinuationTokenManager/BaseContinuationTokenManager.js +181 -166
  676. package/dist/commonjs/queryExecutionContext/ContinuationTokenManager/BaseContinuationTokenManager.js.map +7 -1
  677. package/dist/commonjs/queryExecutionContext/ContinuationTokenManager/ContinuationTokenManagerFactory.js +45 -30
  678. package/dist/commonjs/queryExecutionContext/ContinuationTokenManager/ContinuationTokenManagerFactory.js.map +7 -1
  679. package/dist/commonjs/queryExecutionContext/ContinuationTokenManager/OrderByQueryContinuationTokenManager.js +146 -124
  680. package/dist/commonjs/queryExecutionContext/ContinuationTokenManager/OrderByQueryContinuationTokenManager.js.map +7 -1
  681. package/dist/commonjs/queryExecutionContext/ContinuationTokenManager/ParallelQueryContinuationTokenManager.js +70 -65
  682. package/dist/commonjs/queryExecutionContext/ContinuationTokenManager/ParallelQueryContinuationTokenManager.js.map +7 -1
  683. package/dist/commonjs/queryExecutionContext/ContinuationTokenParser.js +38 -24
  684. package/dist/commonjs/queryExecutionContext/ContinuationTokenParser.js.map +7 -1
  685. package/dist/commonjs/queryExecutionContext/CosmosHeaders.js +15 -3
  686. package/dist/commonjs/queryExecutionContext/CosmosHeaders.js.map +7 -1
  687. package/dist/commonjs/queryExecutionContext/EndpointComponent/GroupByEndpointComponent.js +110 -107
  688. package/dist/commonjs/queryExecutionContext/EndpointComponent/GroupByEndpointComponent.js.map +7 -1
  689. package/dist/commonjs/queryExecutionContext/EndpointComponent/GroupByValueEndpointComponent.js +115 -107
  690. package/dist/commonjs/queryExecutionContext/EndpointComponent/GroupByValueEndpointComponent.js.map +7 -1
  691. package/dist/commonjs/queryExecutionContext/EndpointComponent/NonStreamingOrderByDistinctEndpointComponent.js +164 -155
  692. package/dist/commonjs/queryExecutionContext/EndpointComponent/NonStreamingOrderByDistinctEndpointComponent.js.map +7 -1
  693. package/dist/commonjs/queryExecutionContext/EndpointComponent/NonStreamingOrderByEndpointComponent.js +152 -143
  694. package/dist/commonjs/queryExecutionContext/EndpointComponent/NonStreamingOrderByEndpointComponent.js.map +7 -1
  695. package/dist/commonjs/queryExecutionContext/EndpointComponent/OffsetLimitEndpointComponent.js +81 -64
  696. package/dist/commonjs/queryExecutionContext/EndpointComponent/OffsetLimitEndpointComponent.js.map +7 -1
  697. package/dist/commonjs/queryExecutionContext/EndpointComponent/OrderByEndpointComponent.js +79 -58
  698. package/dist/commonjs/queryExecutionContext/EndpointComponent/OrderByEndpointComponent.js.map +7 -1
  699. package/dist/commonjs/queryExecutionContext/EndpointComponent/OrderedDistinctEndpointComponent.js +70 -48
  700. package/dist/commonjs/queryExecutionContext/EndpointComponent/OrderedDistinctEndpointComponent.js.map +7 -1
  701. package/dist/commonjs/queryExecutionContext/EndpointComponent/UnorderedDistinctEndpointComponent.js +59 -42
  702. package/dist/commonjs/queryExecutionContext/EndpointComponent/UnorderedDistinctEndpointComponent.js.map +7 -1
  703. package/dist/commonjs/queryExecutionContext/EndpointComponent/emptyGroup.js +30 -13
  704. package/dist/commonjs/queryExecutionContext/EndpointComponent/emptyGroup.js.map +7 -1
  705. package/dist/commonjs/queryExecutionContext/ExecutionContext.js +15 -3
  706. package/dist/commonjs/queryExecutionContext/ExecutionContext.js.map +7 -1
  707. package/dist/commonjs/queryExecutionContext/FetchResult.js +55 -38
  708. package/dist/commonjs/queryExecutionContext/FetchResult.js.map +7 -1
  709. package/dist/commonjs/queryExecutionContext/LegacyFetchImplementation.js +59 -55
  710. package/dist/commonjs/queryExecutionContext/LegacyFetchImplementation.js.map +7 -1
  711. package/dist/commonjs/queryExecutionContext/PartitionRangeManager.d.ts +8 -7
  712. package/dist/commonjs/queryExecutionContext/PartitionRangeManager.d.ts.map +1 -1
  713. package/dist/commonjs/queryExecutionContext/PartitionRangeManager.js +151 -155
  714. package/dist/commonjs/queryExecutionContext/PartitionRangeManager.js.map +7 -1
  715. package/dist/commonjs/queryExecutionContext/PartitionRangeUtils.js +93 -102
  716. package/dist/commonjs/queryExecutionContext/PartitionRangeUtils.js.map +7 -1
  717. package/dist/commonjs/queryExecutionContext/QueryControlFetchImplementation.js +110 -89
  718. package/dist/commonjs/queryExecutionContext/QueryControlFetchImplementation.js.map +7 -1
  719. package/dist/commonjs/queryExecutionContext/QueryValidationHelper.js +63 -66
  720. package/dist/commonjs/queryExecutionContext/QueryValidationHelper.js.map +7 -1
  721. package/dist/commonjs/queryExecutionContext/SqlQuerySpec.js +15 -3
  722. package/dist/commonjs/queryExecutionContext/SqlQuerySpec.js.map +7 -1
  723. package/dist/commonjs/queryExecutionContext/defaultQueryExecutionContext.js +219 -191
  724. package/dist/commonjs/queryExecutionContext/defaultQueryExecutionContext.js.map +7 -1
  725. package/dist/commonjs/queryExecutionContext/documentProducer.js +284 -276
  726. package/dist/commonjs/queryExecutionContext/documentProducer.js.map +7 -1
  727. package/dist/commonjs/queryExecutionContext/headerUtils.js +94 -89
  728. package/dist/commonjs/queryExecutionContext/headerUtils.js.map +7 -1
  729. package/dist/commonjs/queryExecutionContext/hybridQueryExecutionContext.js +491 -481
  730. package/dist/commonjs/queryExecutionContext/hybridQueryExecutionContext.js.map +7 -1
  731. package/dist/commonjs/queryExecutionContext/index.d.ts +2 -2
  732. package/dist/commonjs/queryExecutionContext/index.d.ts.map +1 -1
  733. package/dist/commonjs/queryExecutionContext/index.js +61 -29
  734. package/dist/commonjs/queryExecutionContext/index.js.map +7 -1
  735. package/dist/commonjs/queryExecutionContext/nonStreamingOrderByResponse.js +15 -5
  736. package/dist/commonjs/queryExecutionContext/nonStreamingOrderByResponse.js.map +7 -1
  737. package/dist/commonjs/queryExecutionContext/nonStreamingOrderByResult.js +15 -5
  738. package/dist/commonjs/queryExecutionContext/nonStreamingOrderByResult.js.map +7 -1
  739. package/dist/commonjs/queryExecutionContext/orderByComparator.js +105 -113
  740. package/dist/commonjs/queryExecutionContext/orderByComparator.js.map +7 -1
  741. package/dist/commonjs/queryExecutionContext/orderByDocumentProducerComparator.js +143 -134
  742. package/dist/commonjs/queryExecutionContext/orderByDocumentProducerComparator.js.map +7 -1
  743. package/dist/commonjs/queryExecutionContext/orderByQueryExecutionContext.js +90 -61
  744. package/dist/commonjs/queryExecutionContext/orderByQueryExecutionContext.js.map +7 -1
  745. package/dist/commonjs/queryExecutionContext/parallelQueryExecutionContext.js +85 -68
  746. package/dist/commonjs/queryExecutionContext/parallelQueryExecutionContext.js.map +7 -1
  747. package/dist/commonjs/queryExecutionContext/parallelQueryExecutionContextBase.d.ts +1 -1
  748. package/dist/commonjs/queryExecutionContext/parallelQueryExecutionContextBase.d.ts.map +1 -1
  749. package/dist/commonjs/queryExecutionContext/parallelQueryExecutionContextBase.js +832 -788
  750. package/dist/commonjs/queryExecutionContext/parallelQueryExecutionContextBase.js.map +7 -1
  751. package/dist/commonjs/queryExecutionContext/parallelQueryResult.js +35 -24
  752. package/dist/commonjs/queryExecutionContext/parallelQueryResult.js.map +7 -1
  753. package/dist/commonjs/queryExecutionContext/pipelinedQueryExecutionContext.js +278 -228
  754. package/dist/commonjs/queryExecutionContext/pipelinedQueryExecutionContext.js.map +7 -1
  755. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/FilterStrategy.js +15 -5
  756. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/FilterStrategy.js.map +7 -1
  757. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/OrderByQueryRangeStrategy.js +261 -299
  758. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/OrderByQueryRangeStrategy.js.map +7 -1
  759. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.d.ts +0 -4
  760. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.d.ts.map +1 -1
  761. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.js +93 -98
  762. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.js.map +7 -1
  763. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/RidSkipCountFilter.js +147 -177
  764. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/RidSkipCountFilter.js.map +7 -1
  765. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/TargetPartitionRangeManager.js +104 -92
  766. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/TargetPartitionRangeManager.js.map +7 -1
  767. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/TargetPartitionRangeStrategy.js +15 -5
  768. package/dist/commonjs/queryExecutionContext/queryFilteringStrategy/TargetPartitionRangeStrategy.js.map +7 -1
  769. package/dist/commonjs/queryExecutionContext/queryProcessingStrategy/OrderByQueryProcessingStrategy.js +66 -55
  770. package/dist/commonjs/queryExecutionContext/queryProcessingStrategy/OrderByQueryProcessingStrategy.js.map +7 -1
  771. package/dist/commonjs/queryExecutionContext/queryProcessingStrategy/ParallelQueryProcessingStrategy.js +51 -36
  772. package/dist/commonjs/queryExecutionContext/queryProcessingStrategy/ParallelQueryProcessingStrategy.js.map +7 -1
  773. package/dist/commonjs/queryExecutionContext/queryProcessingStrategy/QueryProcessingStrategy.js +15 -5
  774. package/dist/commonjs/queryExecutionContext/queryProcessingStrategy/QueryProcessingStrategy.js.map +7 -1
  775. package/dist/commonjs/queryExecutionContext/queryRangeMapping.js +15 -5
  776. package/dist/commonjs/queryExecutionContext/queryRangeMapping.js.map +7 -1
  777. package/dist/commonjs/queryIterator.js +404 -354
  778. package/dist/commonjs/queryIterator.js.map +7 -1
  779. package/dist/commonjs/queryMetrics/clientSideMetrics.js +47 -29
  780. package/dist/commonjs/queryMetrics/clientSideMetrics.js.map +7 -1
  781. package/dist/commonjs/queryMetrics/index.js +52 -19
  782. package/dist/commonjs/queryMetrics/index.js.map +7 -1
  783. package/dist/commonjs/queryMetrics/queryMetrics.js +175 -159
  784. package/dist/commonjs/queryMetrics/queryMetrics.js.map +7 -1
  785. package/dist/commonjs/queryMetrics/queryMetricsConstants.js +74 -57
  786. package/dist/commonjs/queryMetrics/queryMetricsConstants.js.map +7 -1
  787. package/dist/commonjs/queryMetrics/queryMetricsUtils.js +51 -38
  788. package/dist/commonjs/queryMetrics/queryMetricsUtils.js.map +7 -1
  789. package/dist/commonjs/queryMetrics/queryPreparationTime.js +105 -65
  790. package/dist/commonjs/queryMetrics/queryPreparationTime.js.map +7 -1
  791. package/dist/commonjs/queryMetrics/runtimeExecutionTimes.js +116 -68
  792. package/dist/commonjs/queryMetrics/runtimeExecutionTimes.js.map +7 -1
  793. package/dist/commonjs/queryMetrics/timeSpan.js +205 -217
  794. package/dist/commonjs/queryMetrics/timeSpan.js.map +7 -1
  795. package/dist/commonjs/request/ErrorResponse.js +45 -27
  796. package/dist/commonjs/request/ErrorResponse.js.map +7 -1
  797. package/dist/commonjs/request/FeedOptions.js +15 -3
  798. package/dist/commonjs/request/FeedOptions.js.map +7 -1
  799. package/dist/commonjs/request/FeedResponse.js +55 -40
  800. package/dist/commonjs/request/FeedResponse.js.map +7 -1
  801. package/dist/commonjs/request/RequestContext.js +15 -3
  802. package/dist/commonjs/request/RequestContext.js.map +7 -1
  803. package/dist/commonjs/request/RequestHandler.js +172 -153
  804. package/dist/commonjs/request/RequestHandler.js.map +7 -1
  805. package/dist/commonjs/request/RequestOptions.js +15 -3
  806. package/dist/commonjs/request/RequestOptions.js.map +7 -1
  807. package/dist/commonjs/request/ResourceResponse.js +43 -27
  808. package/dist/commonjs/request/ResourceResponse.js.map +7 -1
  809. package/dist/commonjs/request/Response.js +15 -3
  810. package/dist/commonjs/request/Response.js.map +7 -1
  811. package/dist/commonjs/request/SharedOptions.js +15 -3
  812. package/dist/commonjs/request/SharedOptions.js.map +7 -1
  813. package/dist/commonjs/request/StatusCodes.js +15 -5
  814. package/dist/commonjs/request/StatusCodes.js.map +7 -1
  815. package/dist/commonjs/request/TimeoutError.js +34 -16
  816. package/dist/commonjs/request/TimeoutError.js.map +7 -1
  817. package/dist/commonjs/request/defaultAgent.js +45 -18
  818. package/dist/commonjs/request/defaultAgent.js.map +7 -1
  819. package/dist/commonjs/request/globalStatistics.js +15 -5
  820. package/dist/commonjs/request/globalStatistics.js.map +7 -1
  821. package/dist/commonjs/request/hybridSearchQueryResult.d.ts +1 -1
  822. package/dist/commonjs/request/hybridSearchQueryResult.d.ts.map +1 -1
  823. package/dist/commonjs/request/hybridSearchQueryResult.js +61 -45
  824. package/dist/commonjs/request/hybridSearchQueryResult.js.map +7 -1
  825. package/dist/commonjs/request/index.d.ts +8 -8
  826. package/dist/commonjs/request/index.d.ts.map +1 -1
  827. package/dist/commonjs/request/index.js +36 -16
  828. package/dist/commonjs/request/index.js.map +7 -1
  829. package/dist/commonjs/request/request.js +187 -186
  830. package/dist/commonjs/request/request.js.map +7 -1
  831. package/dist/commonjs/retry/RetryContext.js +15 -3
  832. package/dist/commonjs/retry/RetryContext.js.map +7 -1
  833. package/dist/commonjs/retry/RetryPolicy.js +15 -3
  834. package/dist/commonjs/retry/RetryPolicy.js.map +7 -1
  835. package/dist/commonjs/retry/bulkExecutionRetryPolicy.js +64 -56
  836. package/dist/commonjs/retry/bulkExecutionRetryPolicy.js.map +7 -1
  837. package/dist/commonjs/retry/defaultRetryPolicy.js +66 -115
  838. package/dist/commonjs/retry/defaultRetryPolicy.js.map +7 -1
  839. package/dist/commonjs/retry/endpointDiscoveryRetryPolicy.d.ts +1 -1
  840. package/dist/commonjs/retry/endpointDiscoveryRetryPolicy.d.ts.map +1 -1
  841. package/dist/commonjs/retry/endpointDiscoveryRetryPolicy.js +93 -73
  842. package/dist/commonjs/retry/endpointDiscoveryRetryPolicy.js.map +7 -1
  843. package/dist/commonjs/retry/index.d.ts +1 -1
  844. package/dist/commonjs/retry/index.d.ts.map +1 -1
  845. package/dist/commonjs/retry/index.js +29 -12
  846. package/dist/commonjs/retry/index.js.map +7 -1
  847. package/dist/commonjs/retry/resourceThrottleRetryPolicy.js +73 -61
  848. package/dist/commonjs/retry/resourceThrottleRetryPolicy.js.map +7 -1
  849. package/dist/commonjs/retry/retryOptions.js +15 -3
  850. package/dist/commonjs/retry/retryOptions.js.map +7 -1
  851. package/dist/commonjs/retry/retryUtility.js +168 -133
  852. package/dist/commonjs/retry/retryUtility.js.map +7 -1
  853. package/dist/commonjs/retry/sessionRetryPolicy.js +79 -73
  854. package/dist/commonjs/retry/sessionRetryPolicy.js.map +7 -1
  855. package/dist/commonjs/retry/timeoutFailoverRetryPolicy.d.ts +1 -1
  856. package/dist/commonjs/retry/timeoutFailoverRetryPolicy.d.ts.map +1 -1
  857. package/dist/commonjs/retry/timeoutFailoverRetryPolicy.js +116 -119
  858. package/dist/commonjs/retry/timeoutFailoverRetryPolicy.js.map +7 -1
  859. package/dist/commonjs/routing/CollectionRoutingMapFactory.js +69 -67
  860. package/dist/commonjs/routing/CollectionRoutingMapFactory.js.map +7 -1
  861. package/dist/commonjs/routing/QueryRange.js +92 -66
  862. package/dist/commonjs/routing/QueryRange.js.map +7 -1
  863. package/dist/commonjs/routing/inMemoryCollectionRoutingMap.js +111 -84
  864. package/dist/commonjs/routing/inMemoryCollectionRoutingMap.js.map +7 -1
  865. package/dist/commonjs/routing/index.js +27 -10
  866. package/dist/commonjs/routing/index.js.map +7 -1
  867. package/dist/commonjs/routing/partitionKeyRangeCache.js +81 -56
  868. package/dist/commonjs/routing/partitionKeyRangeCache.js.map +7 -1
  869. package/dist/commonjs/routing/smartRoutingMapProvider.js +130 -110
  870. package/dist/commonjs/routing/smartRoutingMapProvider.js.map +7 -1
  871. package/dist/commonjs/session/SessionContext.js +15 -3
  872. package/dist/commonjs/session/SessionContext.js.map +7 -1
  873. package/dist/commonjs/session/VectorSessionToken.js +125 -125
  874. package/dist/commonjs/session/VectorSessionToken.js.map +7 -1
  875. package/dist/commonjs/session/sessionContainer.js +132 -127
  876. package/dist/commonjs/session/sessionContainer.js.map +7 -1
  877. package/dist/commonjs/tsdoc-metadata.json +1 -1
  878. package/dist/commonjs/utils/SasToken.js +100 -120
  879. package/dist/commonjs/utils/SasToken.js.map +7 -1
  880. package/dist/commonjs/utils/atob.js +23 -7
  881. package/dist/commonjs/utils/atob.js.map +7 -1
  882. package/dist/commonjs/utils/batch.js +195 -197
  883. package/dist/commonjs/utils/batch.js.map +7 -1
  884. package/dist/commonjs/utils/cachedClient.js +31 -11
  885. package/dist/commonjs/utils/cachedClient.js.map +7 -1
  886. package/dist/commonjs/utils/checkURL.js +33 -14
  887. package/dist/commonjs/utils/checkURL.js.map +7 -1
  888. package/dist/commonjs/utils/diagnostics.js +106 -118
  889. package/dist/commonjs/utils/diagnostics.js.map +7 -1
  890. package/dist/commonjs/utils/digest.js +30 -10
  891. package/dist/commonjs/utils/digest.js.map +7 -1
  892. package/dist/commonjs/utils/encode.js +43 -23
  893. package/dist/commonjs/utils/encode.js.map +7 -1
  894. package/dist/commonjs/utils/envUtils.js +39 -10
  895. package/dist/commonjs/utils/envUtils.js.map +7 -1
  896. package/dist/commonjs/utils/fixedSizePriorityQueue.js +85 -55
  897. package/dist/commonjs/utils/fixedSizePriorityQueue.js.map +7 -1
  898. package/dist/commonjs/utils/globalCrypto.js +28 -10
  899. package/dist/commonjs/utils/globalCrypto.js.map +7 -1
  900. package/dist/commonjs/utils/hashObject.js +40 -11
  901. package/dist/commonjs/utils/hashObject.js.map +7 -1
  902. package/dist/commonjs/utils/hashing/encoding/number.js +72 -56
  903. package/dist/commonjs/utils/hashing/encoding/number.js.map +7 -1
  904. package/dist/commonjs/utils/hashing/encoding/prefix.js +49 -29
  905. package/dist/commonjs/utils/hashing/encoding/prefix.js.map +7 -1
  906. package/dist/commonjs/utils/hashing/encoding/string.js +44 -27
  907. package/dist/commonjs/utils/hashing/encoding/string.js.map +7 -1
  908. package/dist/commonjs/utils/hashing/hash.d.ts +1 -1
  909. package/dist/commonjs/utils/hashing/hash.d.ts.map +1 -1
  910. package/dist/commonjs/utils/hashing/hash.js +54 -43
  911. package/dist/commonjs/utils/hashing/hash.js.map +7 -1
  912. package/dist/commonjs/utils/hashing/multiHash.js +28 -11
  913. package/dist/commonjs/utils/hashing/multiHash.js.map +7 -1
  914. package/dist/commonjs/utils/hashing/murmurHash.js +361 -412
  915. package/dist/commonjs/utils/hashing/murmurHash.js.map +7 -1
  916. package/dist/commonjs/utils/hashing/v1.js +100 -71
  917. package/dist/commonjs/utils/hashing/v1.js.map +7 -1
  918. package/dist/commonjs/utils/hashing/v2.js +83 -63
  919. package/dist/commonjs/utils/hashing/v2.js.map +7 -1
  920. package/dist/commonjs/utils/headers.js +44 -33
  921. package/dist/commonjs/utils/headers.js.map +7 -1
  922. package/dist/commonjs/utils/hmac.js +28 -8
  923. package/dist/commonjs/utils/hmac.js.map +7 -1
  924. package/dist/commonjs/utils/nonStreamingOrderByMap.js +63 -52
  925. package/dist/commonjs/utils/nonStreamingOrderByMap.js.map +7 -1
  926. package/dist/commonjs/utils/offers.js +35 -13
  927. package/dist/commonjs/utils/offers.js.map +7 -1
  928. package/dist/commonjs/utils/patch.js +32 -12
  929. package/dist/commonjs/utils/patch.js.map +7 -1
  930. package/dist/commonjs/utils/strings.js +27 -7
  931. package/dist/commonjs/utils/strings.js.map +7 -1
  932. package/dist/commonjs/utils/supportedQueryFeaturesBuilder.js +36 -16
  933. package/dist/commonjs/utils/supportedQueryFeaturesBuilder.js.map +7 -1
  934. package/dist/commonjs/utils/time.js +38 -30
  935. package/dist/commonjs/utils/time.js.map +7 -1
  936. package/dist/commonjs/utils/tracing.js +32 -17
  937. package/dist/commonjs/utils/tracing.js.map +7 -1
  938. package/dist/commonjs/utils/typeChecks.js +49 -60
  939. package/dist/commonjs/utils/typeChecks.js.map +7 -1
  940. package/dist/commonjs/utils/types.js +15 -5
  941. package/dist/commonjs/utils/types.js.map +7 -1
  942. package/dist/commonjs/utils/uint8.js +44 -24
  943. package/dist/commonjs/utils/uint8.js.map +7 -1
  944. package/dist/esm/PartitionKeyRangeFailoverInfo.d.ts +1 -1
  945. package/dist/esm/PartitionKeyRangeFailoverInfo.d.ts.map +1 -1
  946. package/dist/esm/PartitionKeyRangeFailoverInfo.js +0 -2
  947. package/dist/esm/PartitionKeyRangeFailoverInfo.js.map +1 -1
  948. package/dist/esm/bulk/index.d.ts +1 -1
  949. package/dist/esm/bulk/index.d.ts.map +1 -1
  950. package/dist/esm/bulk/index.js.map +1 -1
  951. package/dist/esm/client/ChangeFeed/ChangeFeedForPartitionKey.d.ts +2 -2
  952. package/dist/esm/client/ChangeFeed/ChangeFeedForPartitionKey.d.ts.map +1 -1
  953. package/dist/esm/client/ChangeFeed/ChangeFeedForPartitionKey.js.map +1 -1
  954. package/dist/esm/client/ChangeFeed/buildChangeFeedIterator.js.map +1 -1
  955. package/dist/esm/client/ChangeFeed/changeFeedUtils.d.ts +4 -4
  956. package/dist/esm/client/ChangeFeed/changeFeedUtils.d.ts.map +1 -1
  957. package/dist/esm/client/ChangeFeed/changeFeedUtils.js.map +1 -1
  958. package/dist/esm/client/ChangeFeed/index.d.ts +2 -2
  959. package/dist/esm/client/ChangeFeed/index.d.ts.map +1 -1
  960. package/dist/esm/client/ChangeFeed/index.js.map +1 -1
  961. package/dist/esm/client/ClientUtils.d.ts +1 -1
  962. package/dist/esm/client/ClientUtils.d.ts.map +1 -1
  963. package/dist/esm/client/ClientUtils.js.map +1 -1
  964. package/dist/esm/client/Conflict/index.d.ts +2 -2
  965. package/dist/esm/client/Conflict/index.d.ts.map +1 -1
  966. package/dist/esm/client/Conflict/index.js.map +1 -1
  967. package/dist/esm/client/Container/ContainerDefinition.d.ts +1 -1
  968. package/dist/esm/client/Container/ContainerDefinition.d.ts.map +1 -1
  969. package/dist/esm/client/Container/ContainerDefinition.js.map +1 -1
  970. package/dist/esm/client/Container/index.d.ts +4 -4
  971. package/dist/esm/client/Container/index.d.ts.map +1 -1
  972. package/dist/esm/client/Container/index.js.map +1 -1
  973. package/dist/esm/client/Database/index.d.ts +2 -2
  974. package/dist/esm/client/Database/index.d.ts.map +1 -1
  975. package/dist/esm/client/Database/index.js.map +1 -1
  976. package/dist/esm/client/Item/Items.d.ts.map +1 -1
  977. package/dist/esm/client/Item/Items.js.map +1 -1
  978. package/dist/esm/client/Item/index.d.ts +1 -1
  979. package/dist/esm/client/Item/index.d.ts.map +1 -1
  980. package/dist/esm/client/Item/index.js.map +1 -1
  981. package/dist/esm/client/Offer/index.d.ts +1 -1
  982. package/dist/esm/client/Offer/index.d.ts.map +1 -1
  983. package/dist/esm/client/Offer/index.js.map +1 -1
  984. package/dist/esm/client/Permission/index.d.ts +2 -2
  985. package/dist/esm/client/Permission/index.d.ts.map +1 -1
  986. package/dist/esm/client/Permission/index.js.map +1 -1
  987. package/dist/esm/client/StoredProcedure/index.d.ts +1 -1
  988. package/dist/esm/client/StoredProcedure/index.d.ts.map +1 -1
  989. package/dist/esm/client/StoredProcedure/index.js.map +1 -1
  990. package/dist/esm/client/Trigger/index.d.ts +1 -1
  991. package/dist/esm/client/Trigger/index.d.ts.map +1 -1
  992. package/dist/esm/client/Trigger/index.js.map +1 -1
  993. package/dist/esm/client/User/index.d.ts +1 -1
  994. package/dist/esm/client/User/index.d.ts.map +1 -1
  995. package/dist/esm/client/User/index.js.map +1 -1
  996. package/dist/esm/client/UserDefinedFunction/index.d.ts +1 -1
  997. package/dist/esm/client/UserDefinedFunction/index.d.ts.map +1 -1
  998. package/dist/esm/client/UserDefinedFunction/index.js.map +1 -1
  999. package/dist/esm/client/index.d.ts +1 -1
  1000. package/dist/esm/client/index.d.ts.map +1 -1
  1001. package/dist/esm/client/index.js +0 -1
  1002. package/dist/esm/client/index.js.map +1 -1
  1003. package/dist/esm/common/constants.js +1 -1
  1004. package/dist/esm/common/constants.js.map +1 -1
  1005. package/dist/esm/common/helper.d.ts +4 -4
  1006. package/dist/esm/common/helper.d.ts.map +1 -1
  1007. package/dist/esm/common/helper.js.map +1 -1
  1008. package/dist/esm/common/platform.d.ts +1 -1
  1009. package/dist/esm/common/platform.d.ts.map +1 -1
  1010. package/dist/esm/common/platform.js.map +1 -1
  1011. package/dist/esm/diagnostics/DiagnosticNodeInternal.d.ts +1 -1
  1012. package/dist/esm/diagnostics/DiagnosticNodeInternal.d.ts.map +1 -1
  1013. package/dist/esm/diagnostics/DiagnosticNodeInternal.js.map +1 -1
  1014. package/dist/esm/documents/index.d.ts +4 -4
  1015. package/dist/esm/documents/index.d.ts.map +1 -1
  1016. package/dist/esm/documents/index.js +0 -4
  1017. package/dist/esm/documents/index.js.map +1 -1
  1018. package/dist/esm/encryption/AeadAes256CbcHmacSha256Algorithm/AeadAes256CbcHmacSha256Algorithm.d.ts +1 -1
  1019. package/dist/esm/encryption/AeadAes256CbcHmacSha256Algorithm/AeadAes256CbcHmacSha256Algorithm.d.ts.map +1 -1
  1020. package/dist/esm/encryption/AeadAes256CbcHmacSha256Algorithm/AeadAes256CbcHmacSha256Algorithm.js.map +1 -1
  1021. package/dist/esm/encryption/ClientEncryptionIncludedPath.d.ts +1 -1
  1022. package/dist/esm/encryption/ClientEncryptionIncludedPath.d.ts.map +1 -1
  1023. package/dist/esm/encryption/ClientEncryptionIncludedPath.js.map +1 -1
  1024. package/dist/esm/encryption/ClientEncryptionKey/ClientEncryptionKeyResponse.d.ts +4 -4
  1025. package/dist/esm/encryption/ClientEncryptionKey/ClientEncryptionKeyResponse.d.ts.map +1 -1
  1026. package/dist/esm/encryption/ClientEncryptionKey/ClientEncryptionKeyResponse.js.map +1 -1
  1027. package/dist/esm/encryption/ClientEncryptionKey/index.d.ts +2 -2
  1028. package/dist/esm/encryption/ClientEncryptionKey/index.d.ts.map +1 -1
  1029. package/dist/esm/encryption/ClientEncryptionKey/index.js.map +1 -1
  1030. package/dist/esm/encryption/EncryptionKeyResolver/index.d.ts +1 -1
  1031. package/dist/esm/encryption/EncryptionKeyResolver/index.d.ts.map +1 -1
  1032. package/dist/esm/encryption/EncryptionKeyResolver/index.js.map +1 -1
  1033. package/dist/esm/encryption/EncryptionQueryBuilder.d.ts +2 -2
  1034. package/dist/esm/encryption/EncryptionQueryBuilder.d.ts.map +1 -1
  1035. package/dist/esm/encryption/EncryptionQueryBuilder.js.map +1 -1
  1036. package/dist/esm/encryption/Serializers/BooleanSerializer.d.ts +1 -1
  1037. package/dist/esm/encryption/Serializers/BooleanSerializer.d.ts.map +1 -1
  1038. package/dist/esm/encryption/Serializers/BooleanSerializer.js.map +1 -1
  1039. package/dist/esm/encryption/Serializers/FloatSerializer.d.ts +1 -1
  1040. package/dist/esm/encryption/Serializers/FloatSerializer.d.ts.map +1 -1
  1041. package/dist/esm/encryption/Serializers/FloatSerializer.js.map +1 -1
  1042. package/dist/esm/encryption/Serializers/StringSerializer.d.ts +1 -1
  1043. package/dist/esm/encryption/Serializers/StringSerializer.d.ts.map +1 -1
  1044. package/dist/esm/encryption/Serializers/StringSerializer.js.map +1 -1
  1045. package/dist/esm/encryption/Serializers/index.d.ts +1 -1
  1046. package/dist/esm/encryption/Serializers/index.d.ts.map +1 -1
  1047. package/dist/esm/encryption/Serializers/index.js.map +1 -1
  1048. package/dist/esm/encryption/index.d.ts +5 -5
  1049. package/dist/esm/encryption/index.d.ts.map +1 -1
  1050. package/dist/esm/encryption/index.js.map +1 -1
  1051. package/dist/esm/globalPartitionEndpointManager.d.ts +2 -1
  1052. package/dist/esm/globalPartitionEndpointManager.d.ts.map +1 -1
  1053. package/dist/esm/globalPartitionEndpointManager.js.map +1 -1
  1054. package/dist/esm/index.d.ts +16 -16
  1055. package/dist/esm/index.d.ts.map +1 -1
  1056. package/dist/esm/index.js +1 -1
  1057. package/dist/esm/index.js.map +1 -1
  1058. package/dist/esm/queryExecutionContext/Aggregators/index.d.ts +1 -1
  1059. package/dist/esm/queryExecutionContext/Aggregators/index.d.ts.map +1 -1
  1060. package/dist/esm/queryExecutionContext/Aggregators/index.js.map +1 -1
  1061. package/dist/esm/queryExecutionContext/ContinuationTokenManager/BaseContinuationTokenManager.js +26 -18
  1062. package/dist/esm/queryExecutionContext/ContinuationTokenManager/BaseContinuationTokenManager.js.map +1 -1
  1063. package/dist/esm/queryExecutionContext/ContinuationTokenManager/OrderByQueryContinuationTokenManager.js +48 -25
  1064. package/dist/esm/queryExecutionContext/ContinuationTokenManager/OrderByQueryContinuationTokenManager.js.map +1 -1
  1065. package/dist/esm/queryExecutionContext/ContinuationTokenManager/ParallelQueryContinuationTokenManager.js +17 -26
  1066. package/dist/esm/queryExecutionContext/ContinuationTokenManager/ParallelQueryContinuationTokenManager.js.map +1 -1
  1067. package/dist/esm/queryExecutionContext/PartitionRangeManager.d.ts +8 -7
  1068. package/dist/esm/queryExecutionContext/PartitionRangeManager.d.ts.map +1 -1
  1069. package/dist/esm/queryExecutionContext/PartitionRangeManager.js +13 -12
  1070. package/dist/esm/queryExecutionContext/PartitionRangeManager.js.map +1 -1
  1071. package/dist/esm/queryExecutionContext/index.d.ts +2 -2
  1072. package/dist/esm/queryExecutionContext/index.d.ts.map +1 -1
  1073. package/dist/esm/queryExecutionContext/index.js +0 -2
  1074. package/dist/esm/queryExecutionContext/index.js.map +1 -1
  1075. package/dist/esm/queryExecutionContext/parallelQueryExecutionContextBase.d.ts +1 -1
  1076. package/dist/esm/queryExecutionContext/parallelQueryExecutionContextBase.d.ts.map +1 -1
  1077. package/dist/esm/queryExecutionContext/parallelQueryExecutionContextBase.js.map +1 -1
  1078. package/dist/esm/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.d.ts +0 -4
  1079. package/dist/esm/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.d.ts.map +1 -1
  1080. package/dist/esm/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.js +2 -10
  1081. package/dist/esm/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.js.map +1 -1
  1082. package/dist/esm/request/hybridSearchQueryResult.d.ts +1 -1
  1083. package/dist/esm/request/hybridSearchQueryResult.d.ts.map +1 -1
  1084. package/dist/esm/request/hybridSearchQueryResult.js.map +1 -1
  1085. package/dist/esm/request/index.d.ts +8 -8
  1086. package/dist/esm/request/index.d.ts.map +1 -1
  1087. package/dist/esm/request/index.js +0 -1
  1088. package/dist/esm/request/index.js.map +1 -1
  1089. package/dist/esm/retry/endpointDiscoveryRetryPolicy.d.ts +1 -1
  1090. package/dist/esm/retry/endpointDiscoveryRetryPolicy.d.ts.map +1 -1
  1091. package/dist/esm/retry/endpointDiscoveryRetryPolicy.js.map +1 -1
  1092. package/dist/esm/retry/index.d.ts +1 -1
  1093. package/dist/esm/retry/index.d.ts.map +1 -1
  1094. package/dist/esm/retry/index.js +0 -3
  1095. package/dist/esm/retry/index.js.map +1 -1
  1096. package/dist/esm/retry/timeoutFailoverRetryPolicy.d.ts +1 -1
  1097. package/dist/esm/retry/timeoutFailoverRetryPolicy.d.ts.map +1 -1
  1098. package/dist/esm/retry/timeoutFailoverRetryPolicy.js.map +1 -1
  1099. package/dist/esm/utils/hashing/hash.d.ts +1 -1
  1100. package/dist/esm/utils/hashing/hash.d.ts.map +1 -1
  1101. package/dist/esm/utils/hashing/hash.js.map +1 -1
  1102. package/dist/react-native/PartitionKeyRangeFailoverInfo.d.ts +1 -1
  1103. package/dist/react-native/PartitionKeyRangeFailoverInfo.d.ts.map +1 -1
  1104. package/dist/react-native/PartitionKeyRangeFailoverInfo.js +0 -2
  1105. package/dist/react-native/PartitionKeyRangeFailoverInfo.js.map +1 -1
  1106. package/dist/react-native/bulk/index.d.ts +1 -1
  1107. package/dist/react-native/bulk/index.d.ts.map +1 -1
  1108. package/dist/react-native/bulk/index.js.map +1 -1
  1109. package/dist/react-native/client/ChangeFeed/ChangeFeedForPartitionKey.d.ts +2 -2
  1110. package/dist/react-native/client/ChangeFeed/ChangeFeedForPartitionKey.d.ts.map +1 -1
  1111. package/dist/react-native/client/ChangeFeed/ChangeFeedForPartitionKey.js.map +1 -1
  1112. package/dist/react-native/client/ChangeFeed/buildChangeFeedIterator.js.map +1 -1
  1113. package/dist/react-native/client/ChangeFeed/changeFeedUtils.d.ts +4 -4
  1114. package/dist/react-native/client/ChangeFeed/changeFeedUtils.d.ts.map +1 -1
  1115. package/dist/react-native/client/ChangeFeed/changeFeedUtils.js.map +1 -1
  1116. package/dist/react-native/client/ChangeFeed/index.d.ts +2 -2
  1117. package/dist/react-native/client/ChangeFeed/index.d.ts.map +1 -1
  1118. package/dist/react-native/client/ChangeFeed/index.js.map +1 -1
  1119. package/dist/react-native/client/ClientUtils.d.ts +1 -1
  1120. package/dist/react-native/client/ClientUtils.d.ts.map +1 -1
  1121. package/dist/react-native/client/ClientUtils.js.map +1 -1
  1122. package/dist/react-native/client/Conflict/index.d.ts +2 -2
  1123. package/dist/react-native/client/Conflict/index.d.ts.map +1 -1
  1124. package/dist/react-native/client/Conflict/index.js.map +1 -1
  1125. package/dist/react-native/client/Container/ContainerDefinition.d.ts +1 -1
  1126. package/dist/react-native/client/Container/ContainerDefinition.d.ts.map +1 -1
  1127. package/dist/react-native/client/Container/ContainerDefinition.js.map +1 -1
  1128. package/dist/react-native/client/Container/index.d.ts +4 -4
  1129. package/dist/react-native/client/Container/index.d.ts.map +1 -1
  1130. package/dist/react-native/client/Container/index.js.map +1 -1
  1131. package/dist/react-native/client/Database/index.d.ts +2 -2
  1132. package/dist/react-native/client/Database/index.d.ts.map +1 -1
  1133. package/dist/react-native/client/Database/index.js.map +1 -1
  1134. package/dist/react-native/client/Item/Items.d.ts.map +1 -1
  1135. package/dist/react-native/client/Item/Items.js.map +1 -1
  1136. package/dist/react-native/client/Item/index.d.ts +1 -1
  1137. package/dist/react-native/client/Item/index.d.ts.map +1 -1
  1138. package/dist/react-native/client/Item/index.js.map +1 -1
  1139. package/dist/react-native/client/Offer/index.d.ts +1 -1
  1140. package/dist/react-native/client/Offer/index.d.ts.map +1 -1
  1141. package/dist/react-native/client/Offer/index.js.map +1 -1
  1142. package/dist/react-native/client/Permission/index.d.ts +2 -2
  1143. package/dist/react-native/client/Permission/index.d.ts.map +1 -1
  1144. package/dist/react-native/client/Permission/index.js.map +1 -1
  1145. package/dist/react-native/client/StoredProcedure/index.d.ts +1 -1
  1146. package/dist/react-native/client/StoredProcedure/index.d.ts.map +1 -1
  1147. package/dist/react-native/client/StoredProcedure/index.js.map +1 -1
  1148. package/dist/react-native/client/Trigger/index.d.ts +1 -1
  1149. package/dist/react-native/client/Trigger/index.d.ts.map +1 -1
  1150. package/dist/react-native/client/Trigger/index.js.map +1 -1
  1151. package/dist/react-native/client/User/index.d.ts +1 -1
  1152. package/dist/react-native/client/User/index.d.ts.map +1 -1
  1153. package/dist/react-native/client/User/index.js.map +1 -1
  1154. package/dist/react-native/client/UserDefinedFunction/index.d.ts +1 -1
  1155. package/dist/react-native/client/UserDefinedFunction/index.d.ts.map +1 -1
  1156. package/dist/react-native/client/UserDefinedFunction/index.js.map +1 -1
  1157. package/dist/react-native/client/index.d.ts +1 -1
  1158. package/dist/react-native/client/index.d.ts.map +1 -1
  1159. package/dist/react-native/client/index.js +0 -1
  1160. package/dist/react-native/client/index.js.map +1 -1
  1161. package/dist/react-native/common/constants.js +1 -1
  1162. package/dist/react-native/common/constants.js.map +1 -1
  1163. package/dist/react-native/common/helper.d.ts +4 -4
  1164. package/dist/react-native/common/helper.d.ts.map +1 -1
  1165. package/dist/react-native/common/helper.js.map +1 -1
  1166. package/dist/react-native/common/platform.d.ts +1 -1
  1167. package/dist/react-native/common/platform.d.ts.map +1 -1
  1168. package/dist/react-native/common/platform.js.map +1 -1
  1169. package/dist/react-native/diagnostics/DiagnosticNodeInternal.d.ts +1 -1
  1170. package/dist/react-native/diagnostics/DiagnosticNodeInternal.d.ts.map +1 -1
  1171. package/dist/react-native/diagnostics/DiagnosticNodeInternal.js.map +1 -1
  1172. package/dist/react-native/documents/index.d.ts +4 -4
  1173. package/dist/react-native/documents/index.d.ts.map +1 -1
  1174. package/dist/react-native/documents/index.js +0 -4
  1175. package/dist/react-native/documents/index.js.map +1 -1
  1176. package/dist/react-native/encryption/AeadAes256CbcHmacSha256Algorithm/AeadAes256CbcHmacSha256Algorithm.d.ts +1 -1
  1177. package/dist/react-native/encryption/AeadAes256CbcHmacSha256Algorithm/AeadAes256CbcHmacSha256Algorithm.d.ts.map +1 -1
  1178. package/dist/react-native/encryption/AeadAes256CbcHmacSha256Algorithm/AeadAes256CbcHmacSha256Algorithm.js.map +1 -1
  1179. package/dist/react-native/encryption/ClientEncryptionIncludedPath.d.ts +1 -1
  1180. package/dist/react-native/encryption/ClientEncryptionIncludedPath.d.ts.map +1 -1
  1181. package/dist/react-native/encryption/ClientEncryptionIncludedPath.js.map +1 -1
  1182. package/dist/react-native/encryption/ClientEncryptionKey/ClientEncryptionKeyResponse.d.ts +4 -4
  1183. package/dist/react-native/encryption/ClientEncryptionKey/ClientEncryptionKeyResponse.d.ts.map +1 -1
  1184. package/dist/react-native/encryption/ClientEncryptionKey/ClientEncryptionKeyResponse.js.map +1 -1
  1185. package/dist/react-native/encryption/ClientEncryptionKey/index.d.ts +2 -2
  1186. package/dist/react-native/encryption/ClientEncryptionKey/index.d.ts.map +1 -1
  1187. package/dist/react-native/encryption/ClientEncryptionKey/index.js.map +1 -1
  1188. package/dist/react-native/encryption/EncryptionKeyResolver/index.d.ts +1 -1
  1189. package/dist/react-native/encryption/EncryptionKeyResolver/index.d.ts.map +1 -1
  1190. package/dist/react-native/encryption/EncryptionKeyResolver/index.js.map +1 -1
  1191. package/dist/react-native/encryption/EncryptionQueryBuilder.d.ts +2 -2
  1192. package/dist/react-native/encryption/EncryptionQueryBuilder.d.ts.map +1 -1
  1193. package/dist/react-native/encryption/EncryptionQueryBuilder.js.map +1 -1
  1194. package/dist/react-native/encryption/Serializers/BooleanSerializer.d.ts +1 -1
  1195. package/dist/react-native/encryption/Serializers/BooleanSerializer.d.ts.map +1 -1
  1196. package/dist/react-native/encryption/Serializers/BooleanSerializer.js.map +1 -1
  1197. package/dist/react-native/encryption/Serializers/FloatSerializer.d.ts +1 -1
  1198. package/dist/react-native/encryption/Serializers/FloatSerializer.d.ts.map +1 -1
  1199. package/dist/react-native/encryption/Serializers/FloatSerializer.js.map +1 -1
  1200. package/dist/react-native/encryption/Serializers/StringSerializer.d.ts +1 -1
  1201. package/dist/react-native/encryption/Serializers/StringSerializer.d.ts.map +1 -1
  1202. package/dist/react-native/encryption/Serializers/StringSerializer.js.map +1 -1
  1203. package/dist/react-native/encryption/Serializers/index.d.ts +1 -1
  1204. package/dist/react-native/encryption/Serializers/index.d.ts.map +1 -1
  1205. package/dist/react-native/encryption/Serializers/index.js.map +1 -1
  1206. package/dist/react-native/encryption/index.d.ts +5 -5
  1207. package/dist/react-native/encryption/index.d.ts.map +1 -1
  1208. package/dist/react-native/encryption/index.js.map +1 -1
  1209. package/dist/react-native/globalPartitionEndpointManager.d.ts +2 -1
  1210. package/dist/react-native/globalPartitionEndpointManager.d.ts.map +1 -1
  1211. package/dist/react-native/globalPartitionEndpointManager.js.map +1 -1
  1212. package/dist/react-native/index.d.ts +16 -16
  1213. package/dist/react-native/index.d.ts.map +1 -1
  1214. package/dist/react-native/index.js +1 -1
  1215. package/dist/react-native/index.js.map +1 -1
  1216. package/dist/react-native/queryExecutionContext/Aggregators/index.d.ts +1 -1
  1217. package/dist/react-native/queryExecutionContext/Aggregators/index.d.ts.map +1 -1
  1218. package/dist/react-native/queryExecutionContext/Aggregators/index.js.map +1 -1
  1219. package/dist/react-native/queryExecutionContext/ContinuationTokenManager/BaseContinuationTokenManager.js +26 -18
  1220. package/dist/react-native/queryExecutionContext/ContinuationTokenManager/BaseContinuationTokenManager.js.map +1 -1
  1221. package/dist/react-native/queryExecutionContext/ContinuationTokenManager/OrderByQueryContinuationTokenManager.js +48 -25
  1222. package/dist/react-native/queryExecutionContext/ContinuationTokenManager/OrderByQueryContinuationTokenManager.js.map +1 -1
  1223. package/dist/react-native/queryExecutionContext/ContinuationTokenManager/ParallelQueryContinuationTokenManager.js +17 -26
  1224. package/dist/react-native/queryExecutionContext/ContinuationTokenManager/ParallelQueryContinuationTokenManager.js.map +1 -1
  1225. package/dist/react-native/queryExecutionContext/PartitionRangeManager.d.ts +8 -7
  1226. package/dist/react-native/queryExecutionContext/PartitionRangeManager.d.ts.map +1 -1
  1227. package/dist/react-native/queryExecutionContext/PartitionRangeManager.js +13 -12
  1228. package/dist/react-native/queryExecutionContext/PartitionRangeManager.js.map +1 -1
  1229. package/dist/react-native/queryExecutionContext/index.d.ts +2 -2
  1230. package/dist/react-native/queryExecutionContext/index.d.ts.map +1 -1
  1231. package/dist/react-native/queryExecutionContext/index.js +0 -2
  1232. package/dist/react-native/queryExecutionContext/index.js.map +1 -1
  1233. package/dist/react-native/queryExecutionContext/parallelQueryExecutionContextBase.d.ts +1 -1
  1234. package/dist/react-native/queryExecutionContext/parallelQueryExecutionContextBase.d.ts.map +1 -1
  1235. package/dist/react-native/queryExecutionContext/parallelQueryExecutionContextBase.js.map +1 -1
  1236. package/dist/react-native/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.d.ts +0 -4
  1237. package/dist/react-native/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.d.ts.map +1 -1
  1238. package/dist/react-native/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.js +2 -10
  1239. package/dist/react-native/queryExecutionContext/queryFilteringStrategy/ParallelQueryRangeStrategy.js.map +1 -1
  1240. package/dist/react-native/request/hybridSearchQueryResult.d.ts +1 -1
  1241. package/dist/react-native/request/hybridSearchQueryResult.d.ts.map +1 -1
  1242. package/dist/react-native/request/hybridSearchQueryResult.js.map +1 -1
  1243. package/dist/react-native/request/index.d.ts +8 -8
  1244. package/dist/react-native/request/index.d.ts.map +1 -1
  1245. package/dist/react-native/request/index.js +0 -1
  1246. package/dist/react-native/request/index.js.map +1 -1
  1247. package/dist/react-native/retry/endpointDiscoveryRetryPolicy.d.ts +1 -1
  1248. package/dist/react-native/retry/endpointDiscoveryRetryPolicy.d.ts.map +1 -1
  1249. package/dist/react-native/retry/endpointDiscoveryRetryPolicy.js.map +1 -1
  1250. package/dist/react-native/retry/index.d.ts +1 -1
  1251. package/dist/react-native/retry/index.d.ts.map +1 -1
  1252. package/dist/react-native/retry/index.js +0 -3
  1253. package/dist/react-native/retry/index.js.map +1 -1
  1254. package/dist/react-native/retry/timeoutFailoverRetryPolicy.d.ts +1 -1
  1255. package/dist/react-native/retry/timeoutFailoverRetryPolicy.d.ts.map +1 -1
  1256. package/dist/react-native/retry/timeoutFailoverRetryPolicy.js.map +1 -1
  1257. package/dist/react-native/utils/globalCrypto.d.ts +1 -1
  1258. package/dist/react-native/utils/globalCrypto.d.ts.map +1 -0
  1259. package/dist/react-native/utils/globalCrypto.js +1 -1
  1260. package/dist/react-native/utils/globalCrypto.js.map +1 -0
  1261. package/dist/react-native/utils/hashing/hash.d.ts +1 -1
  1262. package/dist/react-native/utils/hashing/hash.d.ts.map +1 -1
  1263. package/dist/react-native/utils/hashing/hash.js.map +1 -1
  1264. package/package.json +3 -20
  1265. package/dist/browser/encryption/AeadAes256CbcHmacSha256Algorithm/AeadAes256CbcHmacSha256Algorithm-browser.d.mts.map +0 -1
  1266. package/dist/browser/encryption/AeadAes256CbcHmacSha256Algorithm/AeadAes256CbcHmacSha256Algorithm-browser.mjs.map +0 -1
  1267. package/dist/browser/encryption/Cache/ProtectedDataEncryptionKeyCache-browser.d.mts.map +0 -1
  1268. package/dist/browser/encryption/Cache/ProtectedDataEncryptionKeyCache-browser.mjs.map +0 -1
  1269. package/dist/browser/encryption/EncryptionKey/DataEncryptionKey-browser.d.mts.map +0 -1
  1270. package/dist/browser/encryption/EncryptionKey/DataEncryptionKey-browser.mjs.map +0 -1
  1271. package/dist/browser/request/defaultAgent-browser.d.mts.map +0 -1
  1272. package/dist/browser/request/defaultAgent-browser.mjs.map +0 -1
  1273. package/dist/browser/utils/atob-browser.d.mts.map +0 -1
  1274. package/dist/browser/utils/atob-browser.mjs.map +0 -1
  1275. package/dist/browser/utils/digest-browser.d.mts.map +0 -1
  1276. package/dist/browser/utils/digest-browser.mjs.map +0 -1
  1277. package/dist/browser/utils/envUtils-browser.d.mts.map +0 -1
  1278. package/dist/browser/utils/envUtils-browser.mjs.map +0 -1
  1279. package/dist/browser/utils/hmac-browser.d.mts.map +0 -1
  1280. package/dist/browser/utils/hmac-browser.mjs.map +0 -1
  1281. package/dist/react-native/utils/globalCrypto-react-native.d.mts.map +0 -1
  1282. package/dist/react-native/utils/globalCrypto-react-native.mjs.map +0 -1
@@ -1,138 +1,152 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PartitionKeyRangeFailoverInfo = void 0;
4
- const tslib_1 = require("tslib");
5
- // Copyright (c) Microsoft Corporation.
6
- // Licensed under the MIT License.
7
- const index_js_1 = require("./index.js");
8
- const semaphore_1 = tslib_1.__importDefault(require("semaphore"));
9
- /**
10
- * @hidden
11
- * This class manages the failover information for partition key ranges in Cosmos DB.
12
- * It tracks the current endpoint, failed endpoints, and the number of consecutive read/write request failures.
13
- */
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
+ // If the importer is in node compatibility mode or this is not an ESM
21
+ // file that has been converted to a CommonJS file using a Babel-
22
+ // compatible transform (i.e. "__esModule" has not been set), then set
23
+ // "default" to the CommonJS "module.exports" for node compatibility.
24
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
+ mod
26
+ ));
27
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
+ var PartitionKeyRangeFailoverInfo_exports = {};
29
+ __export(PartitionKeyRangeFailoverInfo_exports, {
30
+ PartitionKeyRangeFailoverInfo: () => PartitionKeyRangeFailoverInfo
31
+ });
32
+ module.exports = __toCommonJS(PartitionKeyRangeFailoverInfo_exports);
33
+ var import_index = require("./index.js");
34
+ var import_semaphore = __toESM(require("semaphore"));
14
35
  class PartitionKeyRangeFailoverInfo {
15
- failedEndPoints = [];
16
- currentEndPoint;
17
- consecutiveReadRequestFailureCount = 0;
18
- consecutiveWriteRequestFailureCount = 0;
19
- firstRequestFailureTime = Date.now();
20
- lastRequestFailureTime = Date.now();
21
- failureCountSemaphore;
22
- tryMoveNextLocationSemaphore;
23
- /**
24
- * @internal
25
- */
26
- constructor(currentEndpoint) {
27
- this.currentEndPoint = currentEndpoint;
28
- this.failureCountSemaphore = (0, semaphore_1.default)(1);
29
- this.tryMoveNextLocationSemaphore = (0, semaphore_1.default)(1);
30
- }
31
- /**
32
- * Checks if the circuit breaker can trigger a partition failover based on the failure counts.
33
- * Returns true if the number of consecutive failures exceeds the defined thresholds for read or write requests.
34
- */
35
- async canCircuitBreakerTriggerPartitionFailOver(isReadOnlyRequest) {
36
- const { consecutiveReadRequestFailureCount, consecutiveWriteRequestFailureCount } = await this.snapshotConsecutiveRequestFailureCount();
37
- return isReadOnlyRequest
38
- ? consecutiveReadRequestFailureCount > index_js_1.Constants.ReadRequestFailureCountThreshold
39
- : consecutiveWriteRequestFailureCount > index_js_1.Constants.WriteRequestFailureCountThreshold;
40
- }
41
- /**
42
- * Increments the failure counts for read or write requests and updates the timestamps.
43
- * If the time since the last failure exceeds the reset window, it resets the failure counts.
44
- */
45
- async incrementRequestFailureCounts(isReadOnlyRequest, currentTimeInMilliseconds) {
46
- return new Promise((resolve, reject) => {
47
- this.failureCountSemaphore.take(async () => {
48
- try {
49
- const { lastRequestFailureTime } = await this.snapshotPartitionFailoverTimestamps();
50
- if (currentTimeInMilliseconds - lastRequestFailureTime >
51
- index_js_1.Constants.ConsecutiveFailureCountResetIntervalInMS) {
52
- this.consecutiveReadRequestFailureCount = 0;
53
- this.consecutiveWriteRequestFailureCount = 0;
54
- }
55
- if (isReadOnlyRequest) {
56
- this.consecutiveReadRequestFailureCount++;
57
- }
58
- else {
59
- this.consecutiveWriteRequestFailureCount++;
60
- }
61
- this.lastRequestFailureTime = currentTimeInMilliseconds;
62
- return resolve();
63
- }
64
- catch (error) {
65
- reject(error);
66
- }
67
- finally {
68
- // Release the semaphore lock
69
- this.failureCountSemaphore.leave();
70
- }
71
- });
72
- });
73
- }
74
- /**
75
- * Returns a snapshot of the first and last request failure timestamps.
76
- * This method is used to retrieve the current state of failure timestamps without modifying them.
77
- */
78
- async snapshotPartitionFailoverTimestamps() {
79
- return {
80
- firstRequestFailureTime: this.firstRequestFailureTime,
81
- lastRequestFailureTime: this.lastRequestFailureTime,
82
- };
83
- }
84
- /**
85
- * Attempts to move to the next available location for the partition key range.
86
- * If the current endpoint is the same as the failed endpoint, it tries to find a new endpoint
87
- * from the provided list of endpoints. If a new endpoint is found, it updates the current endpoint
88
- * and returns true. If no new endpoint is found, it returns false.
89
- */
90
- async tryMoveNextLocation(endPoints, failedEndPoint, diagnosticNode, partitionKeyRangeId) {
91
- if (failedEndPoint !== this.currentEndPoint) {
92
- return true;
36
+ failedEndPoints = [];
37
+ currentEndPoint;
38
+ consecutiveReadRequestFailureCount = 0;
39
+ consecutiveWriteRequestFailureCount = 0;
40
+ firstRequestFailureTime = Date.now();
41
+ lastRequestFailureTime = Date.now();
42
+ failureCountSemaphore;
43
+ tryMoveNextLocationSemaphore;
44
+ /**
45
+ * @internal
46
+ */
47
+ constructor(currentEndpoint) {
48
+ this.currentEndPoint = currentEndpoint;
49
+ this.failureCountSemaphore = (0, import_semaphore.default)(1);
50
+ this.tryMoveNextLocationSemaphore = (0, import_semaphore.default)(1);
51
+ }
52
+ /**
53
+ * Checks if the circuit breaker can trigger a partition failover based on the failure counts.
54
+ * Returns true if the number of consecutive failures exceeds the defined thresholds for read or write requests.
55
+ */
56
+ async canCircuitBreakerTriggerPartitionFailOver(isReadOnlyRequest) {
57
+ const { consecutiveReadRequestFailureCount, consecutiveWriteRequestFailureCount } = await this.snapshotConsecutiveRequestFailureCount();
58
+ return isReadOnlyRequest ? consecutiveReadRequestFailureCount > import_index.Constants.ReadRequestFailureCountThreshold : consecutiveWriteRequestFailureCount > import_index.Constants.WriteRequestFailureCountThreshold;
59
+ }
60
+ /**
61
+ * Increments the failure counts for read or write requests and updates the timestamps.
62
+ * If the time since the last failure exceeds the reset window, it resets the failure counts.
63
+ */
64
+ async incrementRequestFailureCounts(isReadOnlyRequest, currentTimeInMilliseconds) {
65
+ return new Promise((resolve, reject) => {
66
+ this.failureCountSemaphore.take(async () => {
67
+ try {
68
+ const { lastRequestFailureTime } = await this.snapshotPartitionFailoverTimestamps();
69
+ if (currentTimeInMilliseconds - lastRequestFailureTime > import_index.Constants.ConsecutiveFailureCountResetIntervalInMS) {
70
+ this.consecutiveReadRequestFailureCount = 0;
71
+ this.consecutiveWriteRequestFailureCount = 0;
72
+ }
73
+ if (isReadOnlyRequest) {
74
+ this.consecutiveReadRequestFailureCount++;
75
+ } else {
76
+ this.consecutiveWriteRequestFailureCount++;
77
+ }
78
+ this.lastRequestFailureTime = currentTimeInMilliseconds;
79
+ return resolve();
80
+ } catch (error) {
81
+ reject(error);
82
+ } finally {
83
+ this.failureCountSemaphore.leave();
93
84
  }
94
- return new Promise((resolve, reject) => {
95
- this.tryMoveNextLocationSemaphore.take(() => {
96
- try {
97
- for (const endpoint of endPoints) {
98
- if (this.currentEndPoint === endpoint) {
99
- continue;
100
- }
101
- if (this.failedEndPoints.includes(endpoint)) {
102
- continue;
103
- }
104
- this.failedEndPoints.push(failedEndPoint);
105
- this.currentEndPoint = endpoint;
106
- return resolve(true);
107
- }
108
- diagnosticNode.addData({
109
- partitionKeyRangeFailoverInfo: `PartitionKeyRangeId: ${partitionKeyRangeId}, failedLocations: ${this.failedEndPoints}, newLocation: ${this.currentEndPoint}`,
110
- });
111
- return resolve(false);
112
- }
113
- catch (err) {
114
- reject(err);
115
- }
116
- finally {
117
- this.tryMoveNextLocationSemaphore.leave();
118
- }
119
- });
120
- });
121
- }
122
- /** Returns the current endpoint being used for partition key range operations.*/
123
- getCurrentEndPoint() {
124
- return this.currentEndPoint;
125
- }
126
- /**
127
- * Returns a snapshot of the current consecutive request failure counts for read and write requests.
128
- * This method is used to retrieve the current state of failure counts without modifying them.
129
- */
130
- async snapshotConsecutiveRequestFailureCount() {
131
- return {
132
- consecutiveReadRequestFailureCount: this.consecutiveReadRequestFailureCount,
133
- consecutiveWriteRequestFailureCount: this.consecutiveWriteRequestFailureCount,
134
- };
85
+ });
86
+ });
87
+ }
88
+ /**
89
+ * Returns a snapshot of the first and last request failure timestamps.
90
+ * This method is used to retrieve the current state of failure timestamps without modifying them.
91
+ */
92
+ async snapshotPartitionFailoverTimestamps() {
93
+ return {
94
+ firstRequestFailureTime: this.firstRequestFailureTime,
95
+ lastRequestFailureTime: this.lastRequestFailureTime
96
+ };
97
+ }
98
+ /**
99
+ * Attempts to move to the next available location for the partition key range.
100
+ * If the current endpoint is the same as the failed endpoint, it tries to find a new endpoint
101
+ * from the provided list of endpoints. If a new endpoint is found, it updates the current endpoint
102
+ * and returns true. If no new endpoint is found, it returns false.
103
+ */
104
+ async tryMoveNextLocation(endPoints, failedEndPoint, diagnosticNode, partitionKeyRangeId) {
105
+ if (failedEndPoint !== this.currentEndPoint) {
106
+ return true;
135
107
  }
108
+ return new Promise((resolve, reject) => {
109
+ this.tryMoveNextLocationSemaphore.take(() => {
110
+ try {
111
+ for (const endpoint of endPoints) {
112
+ if (this.currentEndPoint === endpoint) {
113
+ continue;
114
+ }
115
+ if (this.failedEndPoints.includes(endpoint)) {
116
+ continue;
117
+ }
118
+ this.failedEndPoints.push(failedEndPoint);
119
+ this.currentEndPoint = endpoint;
120
+ return resolve(true);
121
+ }
122
+ diagnosticNode.addData({
123
+ partitionKeyRangeFailoverInfo: `PartitionKeyRangeId: ${partitionKeyRangeId}, failedLocations: ${this.failedEndPoints}, newLocation: ${this.currentEndPoint}`
124
+ });
125
+ return resolve(false);
126
+ } catch (err) {
127
+ reject(err);
128
+ } finally {
129
+ this.tryMoveNextLocationSemaphore.leave();
130
+ }
131
+ });
132
+ });
133
+ }
134
+ /** Returns the current endpoint being used for partition key range operations.*/
135
+ getCurrentEndPoint() {
136
+ return this.currentEndPoint;
137
+ }
138
+ /**
139
+ * Returns a snapshot of the current consecutive request failure counts for read and write requests.
140
+ * This method is used to retrieve the current state of failure counts without modifying them.
141
+ */
142
+ async snapshotConsecutiveRequestFailureCount() {
143
+ return {
144
+ consecutiveReadRequestFailureCount: this.consecutiveReadRequestFailureCount,
145
+ consecutiveWriteRequestFailureCount: this.consecutiveWriteRequestFailureCount
146
+ };
147
+ }
136
148
  }
137
- exports.PartitionKeyRangeFailoverInfo = PartitionKeyRangeFailoverInfo;
138
- //# sourceMappingURL=PartitionKeyRangeFailoverInfo.js.map
149
+ // Annotate the CommonJS export names for ESM import in node:
150
+ 0 && (module.exports = {
151
+ PartitionKeyRangeFailoverInfo
152
+ });
@@ -1 +1,7 @@
1
- {"version":3,"file":"PartitionKeyRangeFailoverInfo.js","sourceRoot":"","sources":["../../src/PartitionKeyRangeFailoverInfo.ts"],"names":[],"mappings":";;;;AAAA,uCAAuC;AACvC,kCAAkC;AAClC,yCAA+D;AAC/D,kEAAkC;AAElC;;;;GAIG;AACH,MAAa,6BAA6B;IAChC,eAAe,GAAa,EAAE,CAAC;IAC/B,eAAe,CAAS;IAExB,kCAAkC,GAAW,CAAC,CAAC;IAC/C,mCAAmC,GAAW,CAAC,CAAC;IAChD,uBAAuB,GAAW,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7C,sBAAsB,GAAW,IAAI,CAAC,GAAG,EAAE,CAAC;IAE5C,qBAAqB,CAAsB;IAC3C,4BAA4B,CAAsB;IAE1D;;OAEG;IACH,YAAY,eAAuB;QACjC,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,IAAI,CAAC,qBAAqB,GAAG,IAAA,mBAAS,EAAC,CAAC,CAAC,CAAC;QAC1C,IAAI,CAAC,4BAA4B,GAAG,IAAA,mBAAS,EAAC,CAAC,CAAC,CAAC;IACnD,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,yCAAyC,CACpD,iBAA0B;QAE1B,MAAM,EAAE,kCAAkC,EAAE,mCAAmC,EAAE,GAC/E,MAAM,IAAI,CAAC,sCAAsC,EAAE,CAAC;QAEtD,OAAO,iBAAiB;YACtB,CAAC,CAAC,kCAAkC,GAAG,oBAAS,CAAC,gCAAgC;YACjF,CAAC,CAAC,mCAAmC,GAAG,oBAAS,CAAC,iCAAiC,CAAC;IACxF,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,6BAA6B,CACxC,iBAA0B,EAC1B,yBAAiC;QAEjC,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC3C,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE;gBACzC,IAAI,CAAC;oBACH,MAAM,EAAE,sBAAsB,EAAE,GAAG,MAAM,IAAI,CAAC,mCAAmC,EAAE,CAAC;oBAEpF,IACE,yBAAyB,GAAG,sBAAsB;wBAClD,oBAAS,CAAC,wCAAwC,EAClD,CAAC;wBACD,IAAI,CAAC,kCAAkC,GAAG,CAAC,CAAC;wBAC5C,IAAI,CAAC,mCAAmC,GAAG,CAAC,CAAC;oBAC/C,CAAC;oBAED,IAAI,iBAAiB,EAAE,CAAC;wBACtB,IAAI,CAAC,kCAAkC,EAAE,CAAC;oBAC5C,CAAC;yBAAM,CAAC;wBACN,IAAI,CAAC,mCAAmC,EAAE,CAAC;oBAC7C,CAAC;oBACD,IAAI,CAAC,sBAAsB,GAAG,yBAAyB,CAAC;oBACxD,OAAO,OAAO,EAAE,CAAC;gBACnB,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,MAAM,CAAC,KAAK,CAAC,CAAC;gBAChB,CAAC;wBAAS,CAAC;oBACT,6BAA6B;oBAC7B,IAAI,CAAC,qBAAqB,CAAC,KAAK,EAAE,CAAC;gBACrC,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,mCAAmC;QAI9C,OAAO;YACL,uBAAuB,EAAE,IAAI,CAAC,uBAAuB;YACrD,sBAAsB,EAAE,IAAI,CAAC,sBAAsB;SACpD,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,mBAAmB,CAC9B,SAA4B,EAC5B,cAAsB,EACtB,cAAsC,EACtC,mBAA2B;QAE3B,IAAI,cAAc,KAAK,IAAI,CAAC,eAAe,EAAE,CAAC;YAC5C,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,IAAI,CAAC,4BAA4B,CAAC,IAAI,CAAC,GAAG,EAAE;gBAC1C,IAAI,CAAC;oBACH,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;wBACjC,IAAI,IAAI,CAAC,eAAe,KAAK,QAAQ,EAAE,CAAC;4BACtC,SAAS;wBACX,CAAC;wBAED,IAAI,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;4BAC5C,SAAS;wBACX,CAAC;wBAED,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;wBAC1C,IAAI,CAAC,eAAe,GAAG,QAAQ,CAAC;wBAChC,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC;oBACvB,CAAC;oBACD,cAAc,CAAC,OAAO,CAAC;wBACrB,6BAA6B,EAAE,wBAAwB,mBAAmB,sBAAsB,IAAI,CAAC,eAAe,kBAAkB,IAAI,CAAC,eAAe,EAAE;qBAC7J,CAAC,CAAC;oBACH,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC;gBACxB,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,MAAM,CAAC,GAAG,CAAC,CAAC;gBACd,CAAC;wBAAS,CAAC;oBACT,IAAI,CAAC,4BAA4B,CAAC,KAAK,EAAE,CAAC;gBAC5C,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED,iFAAiF;IAC1E,kBAAkB;QACvB,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,sCAAsC;QAIlD,OAAO;YACL,kCAAkC,EAAE,IAAI,CAAC,kCAAkC;YAC3E,mCAAmC,EAAE,IAAI,CAAC,mCAAmC;SAC9E,CAAC;IACJ,CAAC;CACF;AAtJD,sEAsJC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\nimport { Constants, DiagnosticNodeInternal } from \"./index.js\";\nimport semaphore from \"semaphore\";\n\n/**\n * @hidden\n * This class manages the failover information for partition key ranges in Cosmos DB.\n * It tracks the current endpoint, failed endpoints, and the number of consecutive read/write request failures.\n */\nexport class PartitionKeyRangeFailoverInfo {\n private failedEndPoints: string[] = [];\n private currentEndPoint: string;\n\n private consecutiveReadRequestFailureCount: number = 0;\n private consecutiveWriteRequestFailureCount: number = 0;\n private firstRequestFailureTime: number = Date.now();\n private lastRequestFailureTime: number = Date.now();\n\n private failureCountSemaphore: semaphore.Semaphore;\n private tryMoveNextLocationSemaphore: semaphore.Semaphore;\n\n /**\n * @internal\n */\n constructor(currentEndpoint: string) {\n this.currentEndPoint = currentEndpoint;\n this.failureCountSemaphore = semaphore(1);\n this.tryMoveNextLocationSemaphore = semaphore(1);\n }\n\n /**\n * Checks if the circuit breaker can trigger a partition failover based on the failure counts.\n * Returns true if the number of consecutive failures exceeds the defined thresholds for read or write requests.\n */\n public async canCircuitBreakerTriggerPartitionFailOver(\n isReadOnlyRequest: boolean,\n ): Promise<boolean> {\n const { consecutiveReadRequestFailureCount, consecutiveWriteRequestFailureCount } =\n await this.snapshotConsecutiveRequestFailureCount();\n\n return isReadOnlyRequest\n ? consecutiveReadRequestFailureCount > Constants.ReadRequestFailureCountThreshold\n : consecutiveWriteRequestFailureCount > Constants.WriteRequestFailureCountThreshold;\n }\n\n /**\n * Increments the failure counts for read or write requests and updates the timestamps.\n * If the time since the last failure exceeds the reset window, it resets the failure counts.\n */\n public async incrementRequestFailureCounts(\n isReadOnlyRequest: boolean,\n currentTimeInMilliseconds: number,\n ): Promise<void> {\n return new Promise<void>((resolve, reject) => {\n this.failureCountSemaphore.take(async () => {\n try {\n const { lastRequestFailureTime } = await this.snapshotPartitionFailoverTimestamps();\n\n if (\n currentTimeInMilliseconds - lastRequestFailureTime >\n Constants.ConsecutiveFailureCountResetIntervalInMS\n ) {\n this.consecutiveReadRequestFailureCount = 0;\n this.consecutiveWriteRequestFailureCount = 0;\n }\n\n if (isReadOnlyRequest) {\n this.consecutiveReadRequestFailureCount++;\n } else {\n this.consecutiveWriteRequestFailureCount++;\n }\n this.lastRequestFailureTime = currentTimeInMilliseconds;\n return resolve();\n } catch (error) {\n reject(error);\n } finally {\n // Release the semaphore lock\n this.failureCountSemaphore.leave();\n }\n });\n });\n }\n\n /**\n * Returns a snapshot of the first and last request failure timestamps.\n * This method is used to retrieve the current state of failure timestamps without modifying them.\n */\n public async snapshotPartitionFailoverTimestamps(): Promise<{\n firstRequestFailureTime: number;\n lastRequestFailureTime: number;\n }> {\n return {\n firstRequestFailureTime: this.firstRequestFailureTime,\n lastRequestFailureTime: this.lastRequestFailureTime,\n };\n }\n\n /**\n * Attempts to move to the next available location for the partition key range.\n * If the current endpoint is the same as the failed endpoint, it tries to find a new endpoint\n * from the provided list of endpoints. If a new endpoint is found, it updates the current endpoint\n * and returns true. If no new endpoint is found, it returns false.\n */\n public async tryMoveNextLocation(\n endPoints: readonly string[],\n failedEndPoint: string,\n diagnosticNode: DiagnosticNodeInternal,\n partitionKeyRangeId: string,\n ): Promise<boolean> {\n if (failedEndPoint !== this.currentEndPoint) {\n return true;\n }\n return new Promise((resolve, reject) => {\n this.tryMoveNextLocationSemaphore.take(() => {\n try {\n for (const endpoint of endPoints) {\n if (this.currentEndPoint === endpoint) {\n continue;\n }\n\n if (this.failedEndPoints.includes(endpoint)) {\n continue;\n }\n\n this.failedEndPoints.push(failedEndPoint);\n this.currentEndPoint = endpoint;\n return resolve(true);\n }\n diagnosticNode.addData({\n partitionKeyRangeFailoverInfo: `PartitionKeyRangeId: ${partitionKeyRangeId}, failedLocations: ${this.failedEndPoints}, newLocation: ${this.currentEndPoint}`,\n });\n return resolve(false);\n } catch (err) {\n reject(err);\n } finally {\n this.tryMoveNextLocationSemaphore.leave();\n }\n });\n });\n }\n\n /** Returns the current endpoint being used for partition key range operations.*/\n public getCurrentEndPoint(): string {\n return this.currentEndPoint;\n }\n\n /**\n * Returns a snapshot of the current consecutive request failure counts for read and write requests.\n * This method is used to retrieve the current state of failure counts without modifying them.\n */\n private async snapshotConsecutiveRequestFailureCount(): Promise<{\n consecutiveReadRequestFailureCount: number;\n consecutiveWriteRequestFailureCount: number;\n }> {\n return {\n consecutiveReadRequestFailureCount: this.consecutiveReadRequestFailureCount,\n consecutiveWriteRequestFailureCount: this.consecutiveWriteRequestFailureCount,\n };\n }\n}\n"]}
1
+ {
2
+ "version": 3,
3
+ "sources": ["/mnt/vss/_work/1/s/sdk/cosmosdb/cosmos/src/PartitionKeyRangeFailoverInfo.ts"],
4
+ "sourcesContent": ["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\nimport type { DiagnosticNodeInternal } from \"./index.js\";\nimport { Constants } from \"./index.js\";\nimport semaphore from \"semaphore\";\n\n/**\n * @hidden\n * This class manages the failover information for partition key ranges in Cosmos DB.\n * It tracks the current endpoint, failed endpoints, and the number of consecutive read/write request failures.\n */\nexport class PartitionKeyRangeFailoverInfo {\n private failedEndPoints: string[] = [];\n private currentEndPoint: string;\n\n private consecutiveReadRequestFailureCount: number = 0;\n private consecutiveWriteRequestFailureCount: number = 0;\n private firstRequestFailureTime: number = Date.now();\n private lastRequestFailureTime: number = Date.now();\n\n private failureCountSemaphore: semaphore.Semaphore;\n private tryMoveNextLocationSemaphore: semaphore.Semaphore;\n\n /**\n * @internal\n */\n constructor(currentEndpoint: string) {\n this.currentEndPoint = currentEndpoint;\n this.failureCountSemaphore = semaphore(1);\n this.tryMoveNextLocationSemaphore = semaphore(1);\n }\n\n /**\n * Checks if the circuit breaker can trigger a partition failover based on the failure counts.\n * Returns true if the number of consecutive failures exceeds the defined thresholds for read or write requests.\n */\n public async canCircuitBreakerTriggerPartitionFailOver(\n isReadOnlyRequest: boolean,\n ): Promise<boolean> {\n const { consecutiveReadRequestFailureCount, consecutiveWriteRequestFailureCount } =\n await this.snapshotConsecutiveRequestFailureCount();\n\n return isReadOnlyRequest\n ? consecutiveReadRequestFailureCount > Constants.ReadRequestFailureCountThreshold\n : consecutiveWriteRequestFailureCount > Constants.WriteRequestFailureCountThreshold;\n }\n\n /**\n * Increments the failure counts for read or write requests and updates the timestamps.\n * If the time since the last failure exceeds the reset window, it resets the failure counts.\n */\n public async incrementRequestFailureCounts(\n isReadOnlyRequest: boolean,\n currentTimeInMilliseconds: number,\n ): Promise<void> {\n return new Promise<void>((resolve, reject) => {\n this.failureCountSemaphore.take(async () => {\n try {\n const { lastRequestFailureTime } = await this.snapshotPartitionFailoverTimestamps();\n\n if (\n currentTimeInMilliseconds - lastRequestFailureTime >\n Constants.ConsecutiveFailureCountResetIntervalInMS\n ) {\n this.consecutiveReadRequestFailureCount = 0;\n this.consecutiveWriteRequestFailureCount = 0;\n }\n\n if (isReadOnlyRequest) {\n this.consecutiveReadRequestFailureCount++;\n } else {\n this.consecutiveWriteRequestFailureCount++;\n }\n this.lastRequestFailureTime = currentTimeInMilliseconds;\n return resolve();\n } catch (error) {\n reject(error);\n } finally {\n // Release the semaphore lock\n this.failureCountSemaphore.leave();\n }\n });\n });\n }\n\n /**\n * Returns a snapshot of the first and last request failure timestamps.\n * This method is used to retrieve the current state of failure timestamps without modifying them.\n */\n public async snapshotPartitionFailoverTimestamps(): Promise<{\n firstRequestFailureTime: number;\n lastRequestFailureTime: number;\n }> {\n return {\n firstRequestFailureTime: this.firstRequestFailureTime,\n lastRequestFailureTime: this.lastRequestFailureTime,\n };\n }\n\n /**\n * Attempts to move to the next available location for the partition key range.\n * If the current endpoint is the same as the failed endpoint, it tries to find a new endpoint\n * from the provided list of endpoints. If a new endpoint is found, it updates the current endpoint\n * and returns true. If no new endpoint is found, it returns false.\n */\n public async tryMoveNextLocation(\n endPoints: readonly string[],\n failedEndPoint: string,\n diagnosticNode: DiagnosticNodeInternal,\n partitionKeyRangeId: string,\n ): Promise<boolean> {\n if (failedEndPoint !== this.currentEndPoint) {\n return true;\n }\n return new Promise((resolve, reject) => {\n this.tryMoveNextLocationSemaphore.take(() => {\n try {\n for (const endpoint of endPoints) {\n if (this.currentEndPoint === endpoint) {\n continue;\n }\n\n if (this.failedEndPoints.includes(endpoint)) {\n continue;\n }\n\n this.failedEndPoints.push(failedEndPoint);\n this.currentEndPoint = endpoint;\n return resolve(true);\n }\n diagnosticNode.addData({\n partitionKeyRangeFailoverInfo: `PartitionKeyRangeId: ${partitionKeyRangeId}, failedLocations: ${this.failedEndPoints}, newLocation: ${this.currentEndPoint}`,\n });\n return resolve(false);\n } catch (err) {\n reject(err);\n } finally {\n this.tryMoveNextLocationSemaphore.leave();\n }\n });\n });\n }\n\n /** Returns the current endpoint being used for partition key range operations.*/\n public getCurrentEndPoint(): string {\n return this.currentEndPoint;\n }\n\n /**\n * Returns a snapshot of the current consecutive request failure counts for read and write requests.\n * This method is used to retrieve the current state of failure counts without modifying them.\n */\n private async snapshotConsecutiveRequestFailureCount(): Promise<{\n consecutiveReadRequestFailureCount: number;\n consecutiveWriteRequestFailureCount: number;\n }> {\n return {\n consecutiveReadRequestFailureCount: this.consecutiveReadRequestFailureCount,\n consecutiveWriteRequestFailureCount: this.consecutiveWriteRequestFailureCount,\n };\n }\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,mBAA0B;AAC1B,uBAAsB;AAOf,MAAM,8BAA8B;AAAA,EACjC,kBAA4B,CAAC;AAAA,EAC7B;AAAA,EAEA,qCAA6C;AAAA,EAC7C,sCAA8C;AAAA,EAC9C,0BAAkC,KAAK,IAAI;AAAA,EAC3C,yBAAiC,KAAK,IAAI;AAAA,EAE1C;AAAA,EACA;AAAA;AAAA;AAAA;AAAA,EAKR,YAAY,iBAAyB;AACnC,SAAK,kBAAkB;AACvB,SAAK,4BAAwB,iBAAAA,SAAU,CAAC;AACxC,SAAK,mCAA+B,iBAAAA,SAAU,CAAC;AAAA,EACjD;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAa,0CACX,mBACkB;AAClB,UAAM,EAAE,oCAAoC,oCAAoC,IAC9E,MAAM,KAAK,uCAAuC;AAEpD,WAAO,oBACH,qCAAqC,uBAAU,mCAC/C,sCAAsC,uBAAU;AAAA,EACtD;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAa,8BACX,mBACA,2BACe;AACf,WAAO,IAAI,QAAc,CAAC,SAAS,WAAW;AAC5C,WAAK,sBAAsB,KAAK,YAAY;AAC1C,YAAI;AACF,gBAAM,EAAE,uBAAuB,IAAI,MAAM,KAAK,oCAAoC;AAElF,cACE,4BAA4B,yBAC5B,uBAAU,0CACV;AACA,iBAAK,qCAAqC;AAC1C,iBAAK,sCAAsC;AAAA,UAC7C;AAEA,cAAI,mBAAmB;AACrB,iBAAK;AAAA,UACP,OAAO;AACL,iBAAK;AAAA,UACP;AACA,eAAK,yBAAyB;AAC9B,iBAAO,QAAQ;AAAA,QACjB,SAAS,OAAO;AACd,iBAAO,KAAK;AAAA,QACd,UAAE;AAEA,eAAK,sBAAsB,MAAM;AAAA,QACnC;AAAA,MACF,CAAC;AAAA,IACH,CAAC;AAAA,EACH;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAa,sCAGV;AACD,WAAO;AAAA,MACL,yBAAyB,KAAK;AAAA,MAC9B,wBAAwB,KAAK;AAAA,IAC/B;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,MAAa,oBACX,WACA,gBACA,gBACA,qBACkB;AAClB,QAAI,mBAAmB,KAAK,iBAAiB;AAC3C,aAAO;AAAA,IACT;AACA,WAAO,IAAI,QAAQ,CAAC,SAAS,WAAW;AACtC,WAAK,6BAA6B,KAAK,MAAM;AAC3C,YAAI;AACF,qBAAW,YAAY,WAAW;AAChC,gBAAI,KAAK,oBAAoB,UAAU;AACrC;AAAA,YACF;AAEA,gBAAI,KAAK,gBAAgB,SAAS,QAAQ,GAAG;AAC3C;AAAA,YACF;AAEA,iBAAK,gBAAgB,KAAK,cAAc;AACxC,iBAAK,kBAAkB;AACvB,mBAAO,QAAQ,IAAI;AAAA,UACrB;AACA,yBAAe,QAAQ;AAAA,YACrB,+BAA+B,wBAAwB,mBAAmB,sBAAsB,KAAK,eAAe,kBAAkB,KAAK,eAAe;AAAA,UAC5J,CAAC;AACD,iBAAO,QAAQ,KAAK;AAAA,QACtB,SAAS,KAAK;AACZ,iBAAO,GAAG;AAAA,QACZ,UAAE;AACA,eAAK,6BAA6B,MAAM;AAAA,QAC1C;AAAA,MACF,CAAC;AAAA,IACH,CAAC;AAAA,EACH;AAAA;AAAA,EAGO,qBAA6B;AAClC,WAAO,KAAK;AAAA,EACd;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAc,yCAGX;AACD,WAAO;AAAA,MACL,oCAAoC,KAAK;AAAA,MACzC,qCAAqC,KAAK;AAAA,IAC5C;AAAA,EACF;AACF;",
6
+ "names": ["semaphore"]
7
+ }
@@ -1,92 +1,99 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.setAuthorizationHeader = setAuthorizationHeader;
4
- exports.setAuthorizationTokenHeaderUsingMasterKey = setAuthorizationTokenHeaderUsingMasterKey;
5
- exports.getAuthorizationTokenUsingResourceTokens = getAuthorizationTokenUsingResourceTokens;
6
- // Copyright (c) Microsoft Corporation.
7
- // Licensed under the MIT License.
8
- const headers_js_1 = require("./utils/headers.js");
9
- const index_js_1 = require("./common/index.js");
10
- /**
11
- * @hidden
12
- */
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 auth_exports = {};
19
+ __export(auth_exports, {
20
+ getAuthorizationTokenUsingResourceTokens: () => getAuthorizationTokenUsingResourceTokens,
21
+ setAuthorizationHeader: () => setAuthorizationHeader,
22
+ setAuthorizationTokenHeaderUsingMasterKey: () => setAuthorizationTokenHeaderUsingMasterKey
23
+ });
24
+ module.exports = __toCommonJS(auth_exports);
25
+ var import_headers = require("./utils/headers.js");
26
+ var import_common = require("./common/index.js");
13
27
  async function setAuthorizationHeader(clientOptions, verb, path, resourceId, resourceType, headers) {
14
- if (clientOptions.permissionFeed) {
15
- clientOptions.resourceTokens = {};
16
- for (const permission of clientOptions.permissionFeed) {
17
- const id = (0, index_js_1.getResourceIdFromPath)(permission.resource);
18
- if (!id) {
19
- throw new Error(`authorization error: ${id} \
20
- is an invalid resourceId in permissionFeed`);
21
- }
22
- clientOptions.resourceTokens[id] = permission._token; // TODO: any
23
- }
24
- }
25
- if (clientOptions.key) {
26
- await setAuthorizationTokenHeaderUsingMasterKey(verb, resourceId, resourceType, headers, clientOptions.key);
27
- }
28
- else if (clientOptions.resourceTokens) {
29
- headers[index_js_1.Constants.HttpHeaders.Authorization] = encodeURIComponent(getAuthorizationTokenUsingResourceTokens(clientOptions.resourceTokens, path, resourceId));
30
- }
31
- else if (clientOptions.tokenProvider) {
32
- headers[index_js_1.Constants.HttpHeaders.Authorization] = encodeURIComponent(await clientOptions.tokenProvider({ verb, path, resourceId, resourceType, headers }));
28
+ if (clientOptions.permissionFeed) {
29
+ clientOptions.resourceTokens = {};
30
+ for (const permission of clientOptions.permissionFeed) {
31
+ const id = (0, import_common.getResourceIdFromPath)(permission.resource);
32
+ if (!id) {
33
+ throw new Error(`authorization error: ${id} is an invalid resourceId in permissionFeed`);
34
+ }
35
+ clientOptions.resourceTokens[id] = permission._token;
33
36
  }
37
+ }
38
+ if (clientOptions.key) {
39
+ await setAuthorizationTokenHeaderUsingMasterKey(
40
+ verb,
41
+ resourceId,
42
+ resourceType,
43
+ headers,
44
+ clientOptions.key
45
+ );
46
+ } else if (clientOptions.resourceTokens) {
47
+ headers[import_common.Constants.HttpHeaders.Authorization] = encodeURIComponent(
48
+ getAuthorizationTokenUsingResourceTokens(clientOptions.resourceTokens, path, resourceId)
49
+ );
50
+ } else if (clientOptions.tokenProvider) {
51
+ headers[import_common.Constants.HttpHeaders.Authorization] = encodeURIComponent(
52
+ await clientOptions.tokenProvider({ verb, path, resourceId, resourceType, headers })
53
+ );
54
+ }
34
55
  }
35
- /**
36
- * The default function for setting header token using the masterKey
37
- * @hidden
38
- */
39
56
  async function setAuthorizationTokenHeaderUsingMasterKey(verb, resourceId, resourceType, headers, masterKey) {
40
- // TODO This should live in cosmos-sign
41
- if (resourceType === index_js_1.ResourceType.offer) {
42
- resourceId = resourceId && resourceId.toLowerCase();
43
- }
44
- headers = Object.assign(headers, await (0, headers_js_1.generateHeaders)(masterKey, verb, resourceType, resourceId));
57
+ if (resourceType === import_common.ResourceType.offer) {
58
+ resourceId = resourceId && resourceId.toLowerCase();
59
+ }
60
+ headers = Object.assign(
61
+ headers,
62
+ await (0, import_headers.generateHeaders)(masterKey, verb, resourceType, resourceId)
63
+ );
45
64
  }
46
- /**
47
- * @hidden
48
- */
49
- // TODO: Resource tokens
50
65
  function getAuthorizationTokenUsingResourceTokens(resourceTokens, path, resourceId) {
51
- if (resourceTokens && Object.keys(resourceTokens).length > 0) {
52
- // For database account access(through getDatabaseAccount API), path and resourceId are "",
53
- // so in this case we return the first token to be used for creating the auth header as the
54
- // service will accept any token in this case
55
- if (!path && !resourceId) {
56
- return resourceTokens[Object.keys(resourceTokens)[0]];
57
- }
58
- // If we have exact resource token for the path use it
59
- if (resourceId && resourceTokens[resourceId]) {
60
- return resourceTokens[resourceId];
61
- }
62
- // minimum valid path /dbs
63
- if (!path || path.length < 4) {
64
- // TODO: This should throw an error
65
- return null;
66
- }
67
- path = (0, index_js_1.trimSlashFromLeftAndRight)(path);
68
- const pathSegments = (path && path.split("/")) || [];
69
- // Item path
70
- if (pathSegments.length === 6) {
71
- // Look for a container token matching the item path
72
- const containerPath = pathSegments.slice(0, 4).map(decodeURIComponent).join("/");
73
- if (resourceTokens[containerPath]) {
74
- return resourceTokens[containerPath];
75
- }
76
- }
77
- // TODO remove in v4: This is legacy behavior that lets someone use a resource token pointing ONLY at an ID
78
- // It was used when _rid was exposed by the SDK, but now that we are using user provided ids it is not needed
79
- // However removing it now would be a breaking change
80
- // if it's an incomplete path like /dbs/db1/colls/, start from the parent resource
81
- let index = pathSegments.length % 2 === 0 ? pathSegments.length - 1 : pathSegments.length - 2;
82
- for (; index > 0; index -= 2) {
83
- const id = decodeURI(pathSegments[index]);
84
- if (resourceTokens[id]) {
85
- return resourceTokens[id];
86
- }
87
- }
66
+ if (resourceTokens && Object.keys(resourceTokens).length > 0) {
67
+ if (!path && !resourceId) {
68
+ return resourceTokens[Object.keys(resourceTokens)[0]];
69
+ }
70
+ if (resourceId && resourceTokens[resourceId]) {
71
+ return resourceTokens[resourceId];
72
+ }
73
+ if (!path || path.length < 4) {
74
+ return null;
75
+ }
76
+ path = (0, import_common.trimSlashFromLeftAndRight)(path);
77
+ const pathSegments = path && path.split("/") || [];
78
+ if (pathSegments.length === 6) {
79
+ const containerPath = pathSegments.slice(0, 4).map(decodeURIComponent).join("/");
80
+ if (resourceTokens[containerPath]) {
81
+ return resourceTokens[containerPath];
82
+ }
83
+ }
84
+ let index = pathSegments.length % 2 === 0 ? pathSegments.length - 1 : pathSegments.length - 2;
85
+ for (; index > 0; index -= 2) {
86
+ const id = decodeURI(pathSegments[index]);
87
+ if (resourceTokens[id]) {
88
+ return resourceTokens[id];
89
+ }
88
90
  }
89
- // TODO: This should throw an error
90
- return null;
91
+ }
92
+ return null;
91
93
  }
92
- //# sourceMappingURL=auth.js.map
94
+ // Annotate the CommonJS export names for ESM import in node:
95
+ 0 && (module.exports = {
96
+ getAuthorizationTokenUsingResourceTokens,
97
+ setAuthorizationHeader,
98
+ setAuthorizationTokenHeaderUsingMasterKey
99
+ });
@@ -1 +1,7 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/auth.ts"],"names":[],"mappings":";;AA2BA,wDAsCC;AAMD,8FAeC;AAMD,4FAmDC;AA/ID,uCAAuC;AACvC,kCAAkC;AAClC,mDAAqD;AAErD,gDAK2B;AAe3B;;GAEG;AACI,KAAK,UAAU,sBAAsB,CAC1C,aAAkC,EAClC,IAAgB,EAChB,IAAY,EACZ,UAAkB,EAClB,YAA0B,EAC1B,OAAsB;IAEtB,IAAI,aAAa,CAAC,cAAc,EAAE,CAAC;QACjC,aAAa,CAAC,cAAc,GAAG,EAAE,CAAC;QAClC,KAAK,MAAM,UAAU,IAAI,aAAa,CAAC,cAAc,EAAE,CAAC;YACtD,MAAM,EAAE,GAAG,IAAA,gCAAqB,EAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;YACtD,IAAI,CAAC,EAAE,EAAE,CAAC;gBACR,MAAM,IAAI,KAAK,CAAC,wBAAwB,EAAE;qEACmB,CAAC,CAAC;YACjE,CAAC;YAED,aAAa,CAAC,cAAc,CAAC,EAAE,CAAC,GAAI,UAAkB,CAAC,MAAM,CAAC,CAAC,YAAY;QAC7E,CAAC;IACH,CAAC;IAED,IAAI,aAAa,CAAC,GAAG,EAAE,CAAC;QACtB,MAAM,yCAAyC,CAC7C,IAAI,EACJ,UAAU,EACV,YAAY,EACZ,OAAO,EACP,aAAa,CAAC,GAAG,CAClB,CAAC;IACJ,CAAC;SAAM,IAAI,aAAa,CAAC,cAAc,EAAE,CAAC;QACxC,OAAO,CAAC,oBAAS,CAAC,WAAW,CAAC,aAAa,CAAC,GAAG,kBAAkB,CAC/D,wCAAwC,CAAC,aAAa,CAAC,cAAc,EAAE,IAAI,EAAE,UAAU,CAAC,CACzF,CAAC;IACJ,CAAC;SAAM,IAAI,aAAa,CAAC,aAAa,EAAE,CAAC;QACvC,OAAO,CAAC,oBAAS,CAAC,WAAW,CAAC,aAAa,CAAC,GAAG,kBAAkB,CAC/D,MAAM,aAAa,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC,CACrF,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;GAGG;AACI,KAAK,UAAU,yCAAyC,CAC7D,IAAgB,EAChB,UAAkB,EAClB,YAA0B,EAC1B,OAAsB,EACtB,SAAiB;IAEjB,uCAAuC;IACvC,IAAI,YAAY,KAAK,uBAAY,CAAC,KAAK,EAAE,CAAC;QACxC,UAAU,GAAG,UAAU,IAAI,UAAU,CAAC,WAAW,EAAE,CAAC;IACtD,CAAC;IACD,OAAO,GAAG,MAAM,CAAC,MAAM,CACrB,OAAO,EACP,MAAM,IAAA,4BAAe,EAAC,SAAS,EAAE,IAAI,EAAE,YAAY,EAAE,UAAU,CAAC,CACjE,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,wBAAwB;AACxB,SAAgB,wCAAwC,CACtD,cAAgD,EAChD,IAAY,EACZ,UAAkB;IAElB,IAAI,cAAc,IAAI,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7D,2FAA2F;QAC3F,2FAA2F;QAC3F,6CAA6C;QAC7C,IAAI,CAAC,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACzB,OAAO,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACxD,CAAC;QAED,sDAAsD;QACtD,IAAI,UAAU,IAAI,cAAc,CAAC,UAAU,CAAC,EAAE,CAAC;YAC7C,OAAO,cAAc,CAAC,UAAU,CAAC,CAAC;QACpC,CAAC;QAED,0BAA0B;QAC1B,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,mCAAmC;YACnC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,GAAG,IAAA,oCAAyB,EAAC,IAAI,CAAC,CAAC;QACvC,MAAM,YAAY,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;QAErD,YAAY;QACZ,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9B,oDAAoD;YACpD,MAAM,aAAa,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACjF,IAAI,cAAc,CAAC,aAAa,CAAC,EAAE,CAAC;gBAClC,OAAO,cAAc,CAAC,aAAa,CAAC,CAAC;YACvC,CAAC;QACH,CAAC;QAED,2GAA2G;QAC3G,6GAA6G;QAC7G,qDAAqD;QACrD,kFAAkF;QAClF,IAAI,KAAK,GAAG,YAAY,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC;QAC9F,OAAO,KAAK,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;YAC7B,MAAM,EAAE,GAAG,SAAS,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;YAC1C,IAAI,cAAc,CAAC,EAAE,CAAC,EAAE,CAAC;gBACvB,OAAO,cAAc,CAAC,EAAE,CAAC,CAAC;YAC5B,CAAC;QACH,CAAC;IACH,CAAC;IAED,mCAAmC;IACnC,OAAO,IAAI,CAAC;AACd,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\nimport { generateHeaders } from \"./utils/headers.js\";\nimport type { HTTPMethod } from \"./common/index.js\";\nimport {\n Constants,\n getResourceIdFromPath,\n ResourceType,\n trimSlashFromLeftAndRight,\n} from \"./common/index.js\";\nimport type { CosmosClientOptions } from \"./CosmosClientOptions.js\";\nimport type { CosmosHeaders } from \"./queryExecutionContext/index.js\";\n\n/** @hidden */\nexport interface RequestInfo {\n verb: HTTPMethod;\n path: string;\n resourceId: string;\n resourceType: ResourceType;\n headers: CosmosHeaders;\n}\n\nexport type TokenProvider = (requestInfo: RequestInfo) => Promise<string>;\n\n/**\n * @hidden\n */\nexport async function setAuthorizationHeader(\n clientOptions: CosmosClientOptions,\n verb: HTTPMethod,\n path: string,\n resourceId: string,\n resourceType: ResourceType,\n headers: CosmosHeaders,\n): Promise<void> {\n if (clientOptions.permissionFeed) {\n clientOptions.resourceTokens = {};\n for (const permission of clientOptions.permissionFeed) {\n const id = getResourceIdFromPath(permission.resource);\n if (!id) {\n throw new Error(`authorization error: ${id} \\\n is an invalid resourceId in permissionFeed`);\n }\n\n clientOptions.resourceTokens[id] = (permission as any)._token; // TODO: any\n }\n }\n\n if (clientOptions.key) {\n await setAuthorizationTokenHeaderUsingMasterKey(\n verb,\n resourceId,\n resourceType,\n headers,\n clientOptions.key,\n );\n } else if (clientOptions.resourceTokens) {\n headers[Constants.HttpHeaders.Authorization] = encodeURIComponent(\n getAuthorizationTokenUsingResourceTokens(clientOptions.resourceTokens, path, resourceId),\n );\n } else if (clientOptions.tokenProvider) {\n headers[Constants.HttpHeaders.Authorization] = encodeURIComponent(\n await clientOptions.tokenProvider({ verb, path, resourceId, resourceType, headers }),\n );\n }\n}\n\n/**\n * The default function for setting header token using the masterKey\n * @hidden\n */\nexport async function setAuthorizationTokenHeaderUsingMasterKey(\n verb: HTTPMethod,\n resourceId: string,\n resourceType: ResourceType,\n headers: CosmosHeaders,\n masterKey: string,\n): Promise<void> {\n // TODO This should live in cosmos-sign\n if (resourceType === ResourceType.offer) {\n resourceId = resourceId && resourceId.toLowerCase();\n }\n headers = Object.assign(\n headers,\n await generateHeaders(masterKey, verb, resourceType, resourceId),\n );\n}\n\n/**\n * @hidden\n */\n// TODO: Resource tokens\nexport function getAuthorizationTokenUsingResourceTokens(\n resourceTokens: { [resourceId: string]: string },\n path: string,\n resourceId: string,\n): string {\n if (resourceTokens && Object.keys(resourceTokens).length > 0) {\n // For database account access(through getDatabaseAccount API), path and resourceId are \"\",\n // so in this case we return the first token to be used for creating the auth header as the\n // service will accept any token in this case\n if (!path && !resourceId) {\n return resourceTokens[Object.keys(resourceTokens)[0]];\n }\n\n // If we have exact resource token for the path use it\n if (resourceId && resourceTokens[resourceId]) {\n return resourceTokens[resourceId];\n }\n\n // minimum valid path /dbs\n if (!path || path.length < 4) {\n // TODO: This should throw an error\n return null;\n }\n\n path = trimSlashFromLeftAndRight(path);\n const pathSegments = (path && path.split(\"/\")) || [];\n\n // Item path\n if (pathSegments.length === 6) {\n // Look for a container token matching the item path\n const containerPath = pathSegments.slice(0, 4).map(decodeURIComponent).join(\"/\");\n if (resourceTokens[containerPath]) {\n return resourceTokens[containerPath];\n }\n }\n\n // TODO remove in v4: This is legacy behavior that lets someone use a resource token pointing ONLY at an ID\n // It was used when _rid was exposed by the SDK, but now that we are using user provided ids it is not needed\n // However removing it now would be a breaking change\n // if it's an incomplete path like /dbs/db1/colls/, start from the parent resource\n let index = pathSegments.length % 2 === 0 ? pathSegments.length - 1 : pathSegments.length - 2;\n for (; index > 0; index -= 2) {\n const id = decodeURI(pathSegments[index]);\n if (resourceTokens[id]) {\n return resourceTokens[id];\n }\n }\n }\n\n // TODO: This should throw an error\n return null;\n}\n"]}
1
+ {
2
+ "version": 3,
3
+ "sources": ["/mnt/vss/_work/1/s/sdk/cosmosdb/cosmos/src/auth.ts"],
4
+ "sourcesContent": ["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\nimport { generateHeaders } from \"./utils/headers.js\";\nimport type { HTTPMethod } from \"./common/index.js\";\nimport {\n Constants,\n getResourceIdFromPath,\n ResourceType,\n trimSlashFromLeftAndRight,\n} from \"./common/index.js\";\nimport type { CosmosClientOptions } from \"./CosmosClientOptions.js\";\nimport type { CosmosHeaders } from \"./queryExecutionContext/index.js\";\n\n/** @hidden */\nexport interface RequestInfo {\n verb: HTTPMethod;\n path: string;\n resourceId: string;\n resourceType: ResourceType;\n headers: CosmosHeaders;\n}\n\nexport type TokenProvider = (requestInfo: RequestInfo) => Promise<string>;\n\n/**\n * @hidden\n */\nexport async function setAuthorizationHeader(\n clientOptions: CosmosClientOptions,\n verb: HTTPMethod,\n path: string,\n resourceId: string,\n resourceType: ResourceType,\n headers: CosmosHeaders,\n): Promise<void> {\n if (clientOptions.permissionFeed) {\n clientOptions.resourceTokens = {};\n for (const permission of clientOptions.permissionFeed) {\n const id = getResourceIdFromPath(permission.resource);\n if (!id) {\n throw new Error(`authorization error: ${id} \\\n is an invalid resourceId in permissionFeed`);\n }\n\n clientOptions.resourceTokens[id] = (permission as any)._token; // TODO: any\n }\n }\n\n if (clientOptions.key) {\n await setAuthorizationTokenHeaderUsingMasterKey(\n verb,\n resourceId,\n resourceType,\n headers,\n clientOptions.key,\n );\n } else if (clientOptions.resourceTokens) {\n headers[Constants.HttpHeaders.Authorization] = encodeURIComponent(\n getAuthorizationTokenUsingResourceTokens(clientOptions.resourceTokens, path, resourceId),\n );\n } else if (clientOptions.tokenProvider) {\n headers[Constants.HttpHeaders.Authorization] = encodeURIComponent(\n await clientOptions.tokenProvider({ verb, path, resourceId, resourceType, headers }),\n );\n }\n}\n\n/**\n * The default function for setting header token using the masterKey\n * @hidden\n */\nexport async function setAuthorizationTokenHeaderUsingMasterKey(\n verb: HTTPMethod,\n resourceId: string,\n resourceType: ResourceType,\n headers: CosmosHeaders,\n masterKey: string,\n): Promise<void> {\n // TODO This should live in cosmos-sign\n if (resourceType === ResourceType.offer) {\n resourceId = resourceId && resourceId.toLowerCase();\n }\n headers = Object.assign(\n headers,\n await generateHeaders(masterKey, verb, resourceType, resourceId),\n );\n}\n\n/**\n * @hidden\n */\n// TODO: Resource tokens\nexport function getAuthorizationTokenUsingResourceTokens(\n resourceTokens: { [resourceId: string]: string },\n path: string,\n resourceId: string,\n): string {\n if (resourceTokens && Object.keys(resourceTokens).length > 0) {\n // For database account access(through getDatabaseAccount API), path and resourceId are \"\",\n // so in this case we return the first token to be used for creating the auth header as the\n // service will accept any token in this case\n if (!path && !resourceId) {\n return resourceTokens[Object.keys(resourceTokens)[0]];\n }\n\n // If we have exact resource token for the path use it\n if (resourceId && resourceTokens[resourceId]) {\n return resourceTokens[resourceId];\n }\n\n // minimum valid path /dbs\n if (!path || path.length < 4) {\n // TODO: This should throw an error\n return null;\n }\n\n path = trimSlashFromLeftAndRight(path);\n const pathSegments = (path && path.split(\"/\")) || [];\n\n // Item path\n if (pathSegments.length === 6) {\n // Look for a container token matching the item path\n const containerPath = pathSegments.slice(0, 4).map(decodeURIComponent).join(\"/\");\n if (resourceTokens[containerPath]) {\n return resourceTokens[containerPath];\n }\n }\n\n // TODO remove in v4: This is legacy behavior that lets someone use a resource token pointing ONLY at an ID\n // It was used when _rid was exposed by the SDK, but now that we are using user provided ids it is not needed\n // However removing it now would be a breaking change\n // if it's an incomplete path like /dbs/db1/colls/, start from the parent resource\n let index = pathSegments.length % 2 === 0 ? pathSegments.length - 1 : pathSegments.length - 2;\n for (; index > 0; index -= 2) {\n const id = decodeURI(pathSegments[index]);\n if (resourceTokens[id]) {\n return resourceTokens[id];\n }\n }\n }\n\n // TODO: This should throw an error\n return null;\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,qBAAgC;AAEhC,oBAKO;AAkBP,eAAsB,uBACpB,eACA,MACA,MACA,YACA,cACA,SACe;AACf,MAAI,cAAc,gBAAgB;AAChC,kBAAc,iBAAiB,CAAC;AAChC,eAAW,cAAc,cAAc,gBAAgB;AACrD,YAAM,SAAK,qCAAsB,WAAW,QAAQ;AACpD,UAAI,CAAC,IAAI;AACP,cAAM,IAAI,MAAM,wBAAwB,EAAE,uEACmB;AAAA,MAC/D;AAEA,oBAAc,eAAe,EAAE,IAAK,WAAmB;AAAA,IACzD;AAAA,EACF;AAEA,MAAI,cAAc,KAAK;AACrB,UAAM;AAAA,MACJ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,cAAc;AAAA,IAChB;AAAA,EACF,WAAW,cAAc,gBAAgB;AACvC,YAAQ,wBAAU,YAAY,aAAa,IAAI;AAAA,MAC7C,yCAAyC,cAAc,gBAAgB,MAAM,UAAU;AAAA,IACzF;AAAA,EACF,WAAW,cAAc,eAAe;AACtC,YAAQ,wBAAU,YAAY,aAAa,IAAI;AAAA,MAC7C,MAAM,cAAc,cAAc,EAAE,MAAM,MAAM,YAAY,cAAc,QAAQ,CAAC;AAAA,IACrF;AAAA,EACF;AACF;AAMA,eAAsB,0CACpB,MACA,YACA,cACA,SACA,WACe;AAEf,MAAI,iBAAiB,2BAAa,OAAO;AACvC,iBAAa,cAAc,WAAW,YAAY;AAAA,EACpD;AACA,YAAU,OAAO;AAAA,IACf;AAAA,IACA,UAAM,gCAAgB,WAAW,MAAM,cAAc,UAAU;AAAA,EACjE;AACF;AAMO,SAAS,yCACd,gBACA,MACA,YACQ;AACR,MAAI,kBAAkB,OAAO,KAAK,cAAc,EAAE,SAAS,GAAG;AAI5D,QAAI,CAAC,QAAQ,CAAC,YAAY;AACxB,aAAO,eAAe,OAAO,KAAK,cAAc,EAAE,CAAC,CAAC;AAAA,IACtD;AAGA,QAAI,cAAc,eAAe,UAAU,GAAG;AAC5C,aAAO,eAAe,UAAU;AAAA,IAClC;AAGA,QAAI,CAAC,QAAQ,KAAK,SAAS,GAAG;AAE5B,aAAO;AAAA,IACT;AAEA,eAAO,yCAA0B,IAAI;AACrC,UAAM,eAAgB,QAAQ,KAAK,MAAM,GAAG,KAAM,CAAC;AAGnD,QAAI,aAAa,WAAW,GAAG;AAE7B,YAAM,gBAAgB,aAAa,MAAM,GAAG,CAAC,EAAE,IAAI,kBAAkB,EAAE,KAAK,GAAG;AAC/E,UAAI,eAAe,aAAa,GAAG;AACjC,eAAO,eAAe,aAAa;AAAA,MACrC;AAAA,IACF;AAMA,QAAI,QAAQ,aAAa,SAAS,MAAM,IAAI,aAAa,SAAS,IAAI,aAAa,SAAS;AAC5F,WAAO,QAAQ,GAAG,SAAS,GAAG;AAC5B,YAAM,KAAK,UAAU,aAAa,KAAK,CAAC;AACxC,UAAI,eAAe,EAAE,GAAG;AACtB,eAAO,eAAe,EAAE;AAAA,MAC1B;AAAA,IACF;AAAA,EACF;AAGA,SAAO;AACT;",
6
+ "names": []
7
+ }