@azure/cosmos 4.5.0 → 4.6.0

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 (1401) hide show
  1. package/README.md +32 -0
  2. package/dist/browser/ChangeFeedIterator.js +17 -11
  3. package/dist/browser/ChangeFeedIterator.js.map +1 -1
  4. package/dist/browser/ChangeFeedResponse.js +8 -0
  5. package/dist/browser/ChangeFeedResponse.js.map +1 -1
  6. package/dist/browser/ClientContext.d.ts.map +1 -1
  7. package/dist/browser/ClientContext.js +232 -48
  8. package/dist/browser/ClientContext.js.map +1 -1
  9. package/dist/browser/CosmosClient.d.ts +13 -0
  10. package/dist/browser/CosmosClient.d.ts.map +1 -1
  11. package/dist/browser/CosmosClient.js +53 -6
  12. package/dist/browser/CosmosClient.js.map +1 -1
  13. package/dist/browser/CosmosClientOptions.d.ts.map +1 -1
  14. package/dist/browser/CosmosClientOptions.js.map +1 -1
  15. package/dist/browser/CosmosDiagnostics.d.ts +4 -0
  16. package/dist/browser/CosmosDiagnostics.d.ts.map +1 -1
  17. package/dist/browser/CosmosDiagnostics.js +3 -0
  18. package/dist/browser/CosmosDiagnostics.js.map +1 -1
  19. package/dist/browser/GlobalEndpointManagerOptions.d.ts +2 -0
  20. package/dist/browser/GlobalEndpointManagerOptions.d.ts.map +1 -0
  21. package/dist/browser/GlobalEndpointManagerOptions.js +2 -0
  22. package/dist/browser/GlobalEndpointManagerOptions.js.map +1 -0
  23. package/dist/browser/PartitionKeyRangeFailoverInfo.js +8 -5
  24. package/dist/browser/PartitionKeyRangeFailoverInfo.js.map +1 -1
  25. package/dist/browser/bulk/Batcher.js +13 -3
  26. package/dist/browser/bulk/Batcher.js.map +1 -1
  27. package/dist/browser/bulk/BulkHelper.js +26 -11
  28. package/dist/browser/bulk/BulkHelper.js.map +1 -1
  29. package/dist/browser/bulk/BulkResponse.js +22 -20
  30. package/dist/browser/bulk/BulkResponse.js.map +1 -1
  31. package/dist/browser/bulk/CongestionAlgorithm.js +11 -4
  32. package/dist/browser/bulk/CongestionAlgorithm.js.map +1 -1
  33. package/dist/browser/bulk/HelperPerPartition.js +14 -1
  34. package/dist/browser/bulk/HelperPerPartition.js.map +1 -1
  35. package/dist/browser/bulk/ItemOperationContext.js +4 -0
  36. package/dist/browser/bulk/ItemOperationContext.js.map +1 -1
  37. package/dist/browser/bulk/Limiter.js +27 -18
  38. package/dist/browser/bulk/Limiter.js.map +1 -1
  39. package/dist/browser/bulk/PartitionMetric.js +4 -0
  40. package/dist/browser/bulk/PartitionMetric.js.map +1 -1
  41. package/dist/browser/client/ChangeFeed/ChangeFeedForEpkRange.d.ts.map +1 -1
  42. package/dist/browser/client/ChangeFeed/ChangeFeedForEpkRange.js +29 -15
  43. package/dist/browser/client/ChangeFeed/ChangeFeedForEpkRange.js.map +1 -1
  44. package/dist/browser/client/ChangeFeed/ChangeFeedForPartitionKey.d.ts.map +1 -1
  45. package/dist/browser/client/ChangeFeed/ChangeFeedForPartitionKey.js +19 -8
  46. package/dist/browser/client/ChangeFeed/ChangeFeedForPartitionKey.js.map +1 -1
  47. package/dist/browser/client/ChangeFeed/ChangeFeedIteratorBuilder.js +12 -9
  48. package/dist/browser/client/ChangeFeed/ChangeFeedIteratorBuilder.js.map +1 -1
  49. package/dist/browser/client/ChangeFeed/ChangeFeedIteratorOptions.d.ts +5 -0
  50. package/dist/browser/client/ChangeFeed/ChangeFeedIteratorOptions.d.ts.map +1 -1
  51. package/dist/browser/client/ChangeFeed/ChangeFeedIteratorOptions.js.map +1 -1
  52. package/dist/browser/client/ChangeFeed/ChangeFeedIteratorResponse.js +9 -0
  53. package/dist/browser/client/ChangeFeed/ChangeFeedIteratorResponse.js.map +1 -1
  54. package/dist/browser/client/ChangeFeed/ChangeFeedPolicy.js +1 -0
  55. package/dist/browser/client/ChangeFeed/ChangeFeedPolicy.js.map +1 -1
  56. package/dist/browser/client/ChangeFeed/ChangeFeedRange.js +20 -0
  57. package/dist/browser/client/ChangeFeed/ChangeFeedRange.js.map +1 -1
  58. package/dist/browser/client/ChangeFeed/ChangeFeedRetentionTimeSpan.js +1 -0
  59. package/dist/browser/client/ChangeFeed/ChangeFeedRetentionTimeSpan.js.map +1 -1
  60. package/dist/browser/client/ChangeFeed/ChangeFeedStartFromBeginning.js +1 -0
  61. package/dist/browser/client/ChangeFeed/ChangeFeedStartFromBeginning.js.map +1 -1
  62. package/dist/browser/client/ChangeFeed/ChangeFeedStartFromContinuation.js +1 -0
  63. package/dist/browser/client/ChangeFeed/ChangeFeedStartFromContinuation.js.map +1 -1
  64. package/dist/browser/client/ChangeFeed/ChangeFeedStartFromNow.js +1 -0
  65. package/dist/browser/client/ChangeFeed/ChangeFeedStartFromNow.js.map +1 -1
  66. package/dist/browser/client/ChangeFeed/ChangeFeedStartFromTime.js +2 -0
  67. package/dist/browser/client/ChangeFeed/ChangeFeedStartFromTime.js.map +1 -1
  68. package/dist/browser/client/ChangeFeed/CompositeContinuationToken.js +8 -0
  69. package/dist/browser/client/ChangeFeed/CompositeContinuationToken.js.map +1 -1
  70. package/dist/browser/client/ChangeFeed/ContinuationTokenForPartitionKey.js +12 -0
  71. package/dist/browser/client/ChangeFeed/ContinuationTokenForPartitionKey.js.map +1 -1
  72. package/dist/browser/client/ChangeFeed/FeedRange.js +8 -0
  73. package/dist/browser/client/ChangeFeed/FeedRange.js.map +1 -1
  74. package/dist/browser/client/ChangeFeed/FeedRangeQueue.js +1 -0
  75. package/dist/browser/client/ChangeFeed/FeedRangeQueue.js.map +1 -1
  76. package/dist/browser/client/ChangeFeed/InternalChangeFeedOptions.d.ts +1 -0
  77. package/dist/browser/client/ChangeFeed/InternalChangeFeedOptions.d.ts.map +1 -1
  78. package/dist/browser/client/ChangeFeed/InternalChangeFeedOptions.js.map +1 -1
  79. package/dist/browser/client/ChangeFeed/changeFeedUtils.d.ts.map +1 -1
  80. package/dist/browser/client/ChangeFeed/changeFeedUtils.js +6 -5
  81. package/dist/browser/client/ChangeFeed/changeFeedUtils.js.map +1 -1
  82. package/dist/browser/client/ClientUtils.js +1 -1
  83. package/dist/browser/client/ClientUtils.js.map +1 -1
  84. package/dist/browser/client/Conflict/Conflict.js +4 -0
  85. package/dist/browser/client/Conflict/Conflict.js.map +1 -1
  86. package/dist/browser/client/Conflict/ConflictResponse.js +2 -0
  87. package/dist/browser/client/Conflict/ConflictResponse.js.map +1 -1
  88. package/dist/browser/client/Conflict/Conflicts.js +2 -0
  89. package/dist/browser/client/Conflict/Conflicts.js.map +1 -1
  90. package/dist/browser/client/Container/Container.js +18 -3
  91. package/dist/browser/client/Container/Container.js.map +1 -1
  92. package/dist/browser/client/Container/ContainerResponse.js +2 -0
  93. package/dist/browser/client/Container/ContainerResponse.js.map +1 -1
  94. package/dist/browser/client/Container/Containers.js +4 -2
  95. package/dist/browser/client/Container/Containers.js.map +1 -1
  96. package/dist/browser/client/Database/Database.js +33 -0
  97. package/dist/browser/client/Database/Database.js.map +1 -1
  98. package/dist/browser/client/Database/DatabaseResponse.js +2 -0
  99. package/dist/browser/client/Database/DatabaseResponse.js.map +1 -1
  100. package/dist/browser/client/Database/Databases.js +3 -0
  101. package/dist/browser/client/Database/Databases.js.map +1 -1
  102. package/dist/browser/client/Item/Item.js +4 -0
  103. package/dist/browser/client/Item/Item.js.map +1 -1
  104. package/dist/browser/client/Item/ItemResponse.js +2 -0
  105. package/dist/browser/client/Item/ItemResponse.js.map +1 -1
  106. package/dist/browser/client/Item/Items.d.ts.map +1 -1
  107. package/dist/browser/client/Item/Items.js +8 -0
  108. package/dist/browser/client/Item/Items.js.map +1 -1
  109. package/dist/browser/client/Offer/Offer.js +3 -0
  110. package/dist/browser/client/Offer/Offer.js.map +1 -1
  111. package/dist/browser/client/Offer/OfferResponse.js +2 -0
  112. package/dist/browser/client/Offer/OfferResponse.js.map +1 -1
  113. package/dist/browser/client/Offer/Offers.js +2 -0
  114. package/dist/browser/client/Offer/Offers.js.map +1 -1
  115. package/dist/browser/client/Permission/Permission.js +3 -0
  116. package/dist/browser/client/Permission/Permission.js.map +1 -1
  117. package/dist/browser/client/Permission/PermissionResponse.js +2 -0
  118. package/dist/browser/client/Permission/PermissionResponse.js.map +1 -1
  119. package/dist/browser/client/Permission/Permissions.js +2 -0
  120. package/dist/browser/client/Permission/Permissions.js.map +1 -1
  121. package/dist/browser/client/SasToken/SasTokenProperties.js +17 -0
  122. package/dist/browser/client/SasToken/SasTokenProperties.js.map +1 -1
  123. package/dist/browser/client/Script/Scripts.js +5 -0
  124. package/dist/browser/client/Script/Scripts.js.map +1 -1
  125. package/dist/browser/client/StoredProcedure/StoredProcedure.js +3 -0
  126. package/dist/browser/client/StoredProcedure/StoredProcedure.js.map +1 -1
  127. package/dist/browser/client/StoredProcedure/StoredProcedureResponse.js +4 -0
  128. package/dist/browser/client/StoredProcedure/StoredProcedureResponse.js.map +1 -1
  129. package/dist/browser/client/StoredProcedure/StoredProcedures.js +2 -0
  130. package/dist/browser/client/StoredProcedure/StoredProcedures.js.map +1 -1
  131. package/dist/browser/client/Trigger/Trigger.js +3 -0
  132. package/dist/browser/client/Trigger/Trigger.js.map +1 -1
  133. package/dist/browser/client/Trigger/TriggerResponse.js +2 -0
  134. package/dist/browser/client/Trigger/TriggerResponse.js.map +1 -1
  135. package/dist/browser/client/Trigger/Triggers.js +2 -0
  136. package/dist/browser/client/Trigger/Triggers.js.map +1 -1
  137. package/dist/browser/client/User/User.js +9 -0
  138. package/dist/browser/client/User/User.js.map +1 -1
  139. package/dist/browser/client/User/UserResponse.js +2 -0
  140. package/dist/browser/client/User/UserResponse.js.map +1 -1
  141. package/dist/browser/client/User/Users.js +2 -0
  142. package/dist/browser/client/User/Users.js.map +1 -1
  143. package/dist/browser/client/UserDefinedFunction/UserDefinedFunction.js +3 -0
  144. package/dist/browser/client/UserDefinedFunction/UserDefinedFunction.js.map +1 -1
  145. package/dist/browser/client/UserDefinedFunction/UserDefinedFunctionResponse.js +2 -0
  146. package/dist/browser/client/UserDefinedFunction/UserDefinedFunctionResponse.js.map +1 -1
  147. package/dist/browser/client/UserDefinedFunction/UserDefinedFunctions.js +2 -0
  148. package/dist/browser/client/UserDefinedFunction/UserDefinedFunctions.js.map +1 -1
  149. package/dist/browser/common/constants.d.ts +4 -0
  150. package/dist/browser/common/constants.d.ts.map +1 -1
  151. package/dist/browser/common/constants.js +5 -1
  152. package/dist/browser/common/constants.js.map +1 -1
  153. package/dist/browser/common/helper.d.ts +6 -0
  154. package/dist/browser/common/helper.d.ts.map +1 -1
  155. package/dist/browser/common/helper.js +9 -1
  156. package/dist/browser/common/helper.js.map +1 -1
  157. package/dist/browser/common/platform.d.ts +1 -0
  158. package/dist/browser/common/platform.d.ts.map +1 -1
  159. package/dist/browser/common/platform.js +1 -3
  160. package/dist/browser/common/platform.js.map +1 -1
  161. package/dist/browser/diagnostics/CosmosDiagnosticsContext.js +8 -7
  162. package/dist/browser/diagnostics/CosmosDiagnosticsContext.js.map +1 -1
  163. package/dist/browser/diagnostics/DiagnosticNodeInternal.d.ts +1 -0
  164. package/dist/browser/diagnostics/DiagnosticNodeInternal.d.ts.map +1 -1
  165. package/dist/browser/diagnostics/DiagnosticNodeInternal.js +26 -7
  166. package/dist/browser/diagnostics/DiagnosticNodeInternal.js.map +1 -1
  167. package/dist/browser/diagnostics/DiagnosticWriter.js +1 -3
  168. package/dist/browser/diagnostics/DiagnosticWriter.js.map +1 -1
  169. package/dist/browser/diagnostics/index.js +2 -2
  170. package/dist/browser/diagnostics/index.js.map +1 -1
  171. package/dist/browser/documents/ConnectionPolicy.d.ts +10 -4
  172. package/dist/browser/documents/ConnectionPolicy.d.ts.map +1 -1
  173. package/dist/browser/documents/ConnectionPolicy.js +2 -2
  174. package/dist/browser/documents/ConnectionPolicy.js.map +1 -1
  175. package/dist/browser/documents/DatabaseAccount.d.ts +4 -0
  176. package/dist/browser/documents/DatabaseAccount.d.ts.map +1 -1
  177. package/dist/browser/documents/DatabaseAccount.js +29 -4
  178. package/dist/browser/documents/DatabaseAccount.js.map +1 -1
  179. package/dist/browser/documents/PartitionKey.js +1 -3
  180. package/dist/browser/documents/PartitionKey.js.map +1 -1
  181. package/dist/browser/encryption/Cache/ClientEncryptionKeyPropertiesCache.js +2 -0
  182. package/dist/browser/encryption/Cache/ClientEncryptionKeyPropertiesCache.js.map +1 -1
  183. package/dist/browser/encryption/Cache/EncryptionSettingsCache.js +2 -0
  184. package/dist/browser/encryption/Cache/EncryptionSettingsCache.js.map +1 -1
  185. package/dist/browser/encryption/Cache/KeyEncryptionKeyCache.js +2 -0
  186. package/dist/browser/encryption/Cache/KeyEncryptionKeyCache.js.map +1 -1
  187. package/dist/browser/encryption/ClientEncryptionKey/ClientEncryptionKeyResponse.js +2 -0
  188. package/dist/browser/encryption/ClientEncryptionKey/ClientEncryptionKeyResponse.js.map +1 -1
  189. package/dist/browser/encryption/EncryptionItemQueryIterator.js +24 -27
  190. package/dist/browser/encryption/EncryptionItemQueryIterator.js.map +1 -1
  191. package/dist/browser/encryption/EncryptionKey/ProtectedDataEncryptionKey.d.ts +0 -1
  192. package/dist/browser/encryption/EncryptionKey/ProtectedDataEncryptionKey.d.ts.map +1 -1
  193. package/dist/browser/encryption/EncryptionKey/ProtectedDataEncryptionKey.js +2 -0
  194. package/dist/browser/encryption/EncryptionKey/ProtectedDataEncryptionKey.js.map +1 -1
  195. package/dist/browser/encryption/EncryptionKeyResolver/AzureKeyVaultEncryptionKeyResolver.js +6 -5
  196. package/dist/browser/encryption/EncryptionKeyResolver/AzureKeyVaultEncryptionKeyResolver.js.map +1 -1
  197. package/dist/browser/encryption/EncryptionKeyStoreProvider.js +8 -1
  198. package/dist/browser/encryption/EncryptionKeyStoreProvider.js.map +1 -1
  199. package/dist/browser/encryption/EncryptionManager.js +6 -0
  200. package/dist/browser/encryption/EncryptionManager.js.map +1 -1
  201. package/dist/browser/encryption/EncryptionProcessor.js +5 -0
  202. package/dist/browser/encryption/EncryptionProcessor.js.map +1 -1
  203. package/dist/browser/encryption/EncryptionQueryBuilder.js +2 -0
  204. package/dist/browser/encryption/EncryptionQueryBuilder.js.map +1 -1
  205. package/dist/browser/encryption/EncryptionSettingForProperty.js +6 -0
  206. package/dist/browser/encryption/EncryptionSettingForProperty.js.map +1 -1
  207. package/dist/browser/encryption/EncryptionSettings.js +6 -3
  208. package/dist/browser/encryption/EncryptionSettings.js.map +1 -1
  209. package/dist/browser/encryption/KeyEncryptionKey.js +4 -0
  210. package/dist/browser/encryption/KeyEncryptionKey.js.map +1 -1
  211. package/dist/browser/encryption/Serializers/StringSerializer.js +1 -1
  212. package/dist/browser/encryption/Serializers/StringSerializer.js.map +1 -1
  213. package/dist/browser/extractPartitionKey.js +2 -2
  214. package/dist/browser/extractPartitionKey.js.map +1 -1
  215. package/dist/browser/globalEndpointManager.d.ts +8 -0
  216. package/dist/browser/globalEndpointManager.d.ts.map +1 -1
  217. package/dist/browser/globalEndpointManager.js +104 -29
  218. package/dist/browser/globalEndpointManager.js.map +1 -1
  219. package/dist/browser/globalPartitionEndpointManager.d.ts +0 -2
  220. package/dist/browser/globalPartitionEndpointManager.d.ts.map +1 -1
  221. package/dist/browser/globalPartitionEndpointManager.js +19 -7
  222. package/dist/browser/globalPartitionEndpointManager.js.map +1 -1
  223. package/dist/browser/queryExecutionContext/Aggregators/AverageAggregator.js +2 -0
  224. package/dist/browser/queryExecutionContext/Aggregators/AverageAggregator.js.map +1 -1
  225. package/dist/browser/queryExecutionContext/Aggregators/CountAggregator.js +1 -0
  226. package/dist/browser/queryExecutionContext/Aggregators/CountAggregator.js.map +1 -1
  227. package/dist/browser/queryExecutionContext/Aggregators/GlobalStatisticsAggregator.js +1 -0
  228. package/dist/browser/queryExecutionContext/Aggregators/GlobalStatisticsAggregator.js.map +1 -1
  229. package/dist/browser/queryExecutionContext/Aggregators/MakeListAggregator.js +1 -0
  230. package/dist/browser/queryExecutionContext/Aggregators/MakeListAggregator.js.map +1 -1
  231. package/dist/browser/queryExecutionContext/Aggregators/MakeSetAggregator.js +1 -0
  232. package/dist/browser/queryExecutionContext/Aggregators/MakeSetAggregator.js.map +1 -1
  233. package/dist/browser/queryExecutionContext/Aggregators/MaxAggregator.js +2 -0
  234. package/dist/browser/queryExecutionContext/Aggregators/MaxAggregator.js.map +1 -1
  235. package/dist/browser/queryExecutionContext/Aggregators/MinAggregator.js +2 -0
  236. package/dist/browser/queryExecutionContext/Aggregators/MinAggregator.js.map +1 -1
  237. package/dist/browser/queryExecutionContext/Aggregators/StaticValueAggregator.js +1 -0
  238. package/dist/browser/queryExecutionContext/Aggregators/StaticValueAggregator.js.map +1 -1
  239. package/dist/browser/queryExecutionContext/Aggregators/SumAggregator.js +1 -0
  240. package/dist/browser/queryExecutionContext/Aggregators/SumAggregator.js.map +1 -1
  241. package/dist/browser/queryExecutionContext/EndpointComponent/GroupByEndpointComponent.js +5 -3
  242. package/dist/browser/queryExecutionContext/EndpointComponent/GroupByEndpointComponent.js.map +1 -1
  243. package/dist/browser/queryExecutionContext/EndpointComponent/GroupByValueEndpointComponent.js +6 -3
  244. package/dist/browser/queryExecutionContext/EndpointComponent/GroupByValueEndpointComponent.js.map +1 -1
  245. package/dist/browser/queryExecutionContext/EndpointComponent/NonStreamingOrderByDistinctEndpointComponent.js +23 -7
  246. package/dist/browser/queryExecutionContext/EndpointComponent/NonStreamingOrderByDistinctEndpointComponent.js.map +1 -1
  247. package/dist/browser/queryExecutionContext/EndpointComponent/NonStreamingOrderByEndpointComponent.js +14 -6
  248. package/dist/browser/queryExecutionContext/EndpointComponent/NonStreamingOrderByEndpointComponent.js.map +1 -1
  249. package/dist/browser/queryExecutionContext/EndpointComponent/OffsetLimitEndpointComponent.js +3 -0
  250. package/dist/browser/queryExecutionContext/EndpointComponent/OffsetLimitEndpointComponent.js.map +1 -1
  251. package/dist/browser/queryExecutionContext/EndpointComponent/OrderByEndpointComponent.js +2 -0
  252. package/dist/browser/queryExecutionContext/EndpointComponent/OrderByEndpointComponent.js.map +1 -1
  253. package/dist/browser/queryExecutionContext/EndpointComponent/OrderedDistinctEndpointComponent.js +2 -0
  254. package/dist/browser/queryExecutionContext/EndpointComponent/OrderedDistinctEndpointComponent.js.map +1 -1
  255. package/dist/browser/queryExecutionContext/EndpointComponent/UnorderedDistinctEndpointComponent.js +2 -0
  256. package/dist/browser/queryExecutionContext/EndpointComponent/UnorderedDistinctEndpointComponent.js.map +1 -1
  257. package/dist/browser/queryExecutionContext/FetchResult.js +4 -0
  258. package/dist/browser/queryExecutionContext/FetchResult.js.map +1 -1
  259. package/dist/browser/queryExecutionContext/defaultQueryExecutionContext.js +14 -2
  260. package/dist/browser/queryExecutionContext/defaultQueryExecutionContext.js.map +1 -1
  261. package/dist/browser/queryExecutionContext/documentProducer.js +34 -21
  262. package/dist/browser/queryExecutionContext/documentProducer.js.map +1 -1
  263. package/dist/browser/queryExecutionContext/hybridQueryExecutionContext.js +41 -27
  264. package/dist/browser/queryExecutionContext/hybridQueryExecutionContext.js.map +1 -1
  265. package/dist/browser/queryExecutionContext/orderByComparator.js +1 -0
  266. package/dist/browser/queryExecutionContext/orderByComparator.js.map +1 -1
  267. package/dist/browser/queryExecutionContext/orderByDocumentProducerComparator.js +1 -0
  268. package/dist/browser/queryExecutionContext/orderByDocumentProducerComparator.js.map +1 -1
  269. package/dist/browser/queryExecutionContext/orderByQueryExecutionContext.js +1 -0
  270. package/dist/browser/queryExecutionContext/orderByQueryExecutionContext.js.map +1 -1
  271. package/dist/browser/queryExecutionContext/parallelQueryExecutionContextBase.js +20 -2
  272. package/dist/browser/queryExecutionContext/parallelQueryExecutionContextBase.js.map +1 -1
  273. package/dist/browser/queryExecutionContext/pipelinedQueryExecutionContext.js +14 -4
  274. package/dist/browser/queryExecutionContext/pipelinedQueryExecutionContext.js.map +1 -1
  275. package/dist/browser/queryIterator.js +41 -33
  276. package/dist/browser/queryIterator.js.map +1 -1
  277. package/dist/browser/queryMetrics/clientSideMetrics.js +2 -1
  278. package/dist/browser/queryMetrics/clientSideMetrics.js.map +1 -1
  279. package/dist/browser/queryMetrics/queryMetrics.js +14 -1
  280. package/dist/browser/queryMetrics/queryMetrics.js.map +1 -1
  281. package/dist/browser/queryMetrics/queryPreparationTime.js +5 -1
  282. package/dist/browser/queryMetrics/queryPreparationTime.js.map +1 -1
  283. package/dist/browser/queryMetrics/runtimeExecutionTimes.js +4 -1
  284. package/dist/browser/queryMetrics/runtimeExecutionTimes.js.map +1 -1
  285. package/dist/browser/queryMetrics/timeSpan.js +4 -3
  286. package/dist/browser/queryMetrics/timeSpan.js.map +1 -1
  287. package/dist/browser/request/ErrorResponse.js +19 -0
  288. package/dist/browser/request/ErrorResponse.js.map +1 -1
  289. package/dist/browser/request/FeedResponse.js +4 -0
  290. package/dist/browser/request/FeedResponse.js.map +1 -1
  291. package/dist/browser/request/RequestHandler.js +3 -4
  292. package/dist/browser/request/RequestHandler.js.map +1 -1
  293. package/dist/browser/request/ResourceResponse.js +5 -0
  294. package/dist/browser/request/ResourceResponse.js.map +1 -1
  295. package/dist/browser/request/SharedOptions.d.ts +5 -0
  296. package/dist/browser/request/SharedOptions.d.ts.map +1 -1
  297. package/dist/browser/request/SharedOptions.js.map +1 -1
  298. package/dist/browser/request/TimeoutError.js +1 -1
  299. package/dist/browser/request/TimeoutError.js.map +1 -1
  300. package/dist/browser/request/hybridSearchQueryResult.js +5 -0
  301. package/dist/browser/request/hybridSearchQueryResult.js.map +1 -1
  302. package/dist/browser/request/request.js +5 -1
  303. package/dist/browser/request/request.js.map +1 -1
  304. package/dist/browser/retry/bulkExecutionRetryPolicy.js +5 -2
  305. package/dist/browser/retry/bulkExecutionRetryPolicy.js.map +1 -1
  306. package/dist/browser/retry/defaultRetryPolicy.d.ts.map +1 -1
  307. package/dist/browser/retry/defaultRetryPolicy.js +7 -7
  308. package/dist/browser/retry/defaultRetryPolicy.js.map +1 -1
  309. package/dist/browser/retry/endpointDiscoveryRetryPolicy.d.ts +3 -2
  310. package/dist/browser/retry/endpointDiscoveryRetryPolicy.d.ts.map +1 -1
  311. package/dist/browser/retry/endpointDiscoveryRetryPolicy.js +24 -7
  312. package/dist/browser/retry/endpointDiscoveryRetryPolicy.js.map +1 -1
  313. package/dist/browser/retry/resourceThrottleRetryPolicy.js +20 -10
  314. package/dist/browser/retry/resourceThrottleRetryPolicy.js.map +1 -1
  315. package/dist/browser/retry/retryUtility.d.ts.map +1 -1
  316. package/dist/browser/retry/retryUtility.js +22 -8
  317. package/dist/browser/retry/retryUtility.js.map +1 -1
  318. package/dist/browser/retry/sessionRetryPolicy.js +8 -4
  319. package/dist/browser/retry/sessionRetryPolicy.js.map +1 -1
  320. package/dist/browser/retry/timeoutFailoverRetryPolicy.d.ts +1 -2
  321. package/dist/browser/retry/timeoutFailoverRetryPolicy.d.ts.map +1 -1
  322. package/dist/browser/retry/timeoutFailoverRetryPolicy.js +17 -7
  323. package/dist/browser/retry/timeoutFailoverRetryPolicy.js.map +1 -1
  324. package/dist/browser/routing/QueryRange.js +4 -0
  325. package/dist/browser/routing/QueryRange.js.map +1 -1
  326. package/dist/browser/routing/inMemoryCollectionRoutingMap.js +4 -0
  327. package/dist/browser/routing/inMemoryCollectionRoutingMap.js.map +1 -1
  328. package/dist/browser/routing/partitionKeyRangeCache.js +2 -0
  329. package/dist/browser/routing/partitionKeyRangeCache.js.map +1 -1
  330. package/dist/browser/routing/smartRoutingMapProvider.js +1 -0
  331. package/dist/browser/routing/smartRoutingMapProvider.js.map +1 -1
  332. package/dist/browser/session/VectorSessionToken.js +6 -2
  333. package/dist/browser/session/VectorSessionToken.js.map +1 -1
  334. package/dist/browser/session/sessionContainer.js +5 -3
  335. package/dist/browser/session/sessionContainer.js.map +1 -1
  336. package/dist/browser/utils/batch.js +15 -4
  337. package/dist/browser/utils/batch.js.map +1 -1
  338. package/dist/browser/utils/encode.d.ts +1 -1
  339. package/dist/browser/utils/encode.d.ts.map +1 -1
  340. package/dist/browser/utils/encode.js.map +1 -1
  341. package/dist/browser/utils/fixedSizePriorityQueue.js +4 -0
  342. package/dist/browser/utils/fixedSizePriorityQueue.js.map +1 -1
  343. package/dist/browser/utils/hashing/hash.js +1 -1
  344. package/dist/browser/utils/hashing/hash.js.map +1 -1
  345. package/dist/browser/utils/nonStreamingOrderByMap.js +2 -0
  346. package/dist/browser/utils/nonStreamingOrderByMap.js.map +1 -1
  347. package/dist/commonjs/ChangeFeedIterator.js +17 -11
  348. package/dist/commonjs/ChangeFeedIterator.js.map +1 -1
  349. package/dist/commonjs/ChangeFeedResponse.js +8 -0
  350. package/dist/commonjs/ChangeFeedResponse.js.map +1 -1
  351. package/dist/commonjs/ClientContext.d.ts.map +1 -1
  352. package/dist/commonjs/ClientContext.js +232 -48
  353. package/dist/commonjs/ClientContext.js.map +1 -1
  354. package/dist/commonjs/CosmosClient.d.ts +13 -0
  355. package/dist/commonjs/CosmosClient.d.ts.map +1 -1
  356. package/dist/commonjs/CosmosClient.js +53 -6
  357. package/dist/commonjs/CosmosClient.js.map +1 -1
  358. package/dist/commonjs/CosmosClientOptions.d.ts.map +1 -1
  359. package/dist/commonjs/CosmosClientOptions.js.map +1 -1
  360. package/dist/commonjs/CosmosDiagnostics.d.ts +4 -0
  361. package/dist/commonjs/CosmosDiagnostics.d.ts.map +1 -1
  362. package/dist/commonjs/CosmosDiagnostics.js +3 -0
  363. package/dist/commonjs/CosmosDiagnostics.js.map +1 -1
  364. package/dist/commonjs/GlobalEndpointManagerOptions.d.ts +2 -0
  365. package/dist/commonjs/GlobalEndpointManagerOptions.d.ts.map +1 -0
  366. package/dist/commonjs/GlobalEndpointManagerOptions.js +3 -0
  367. package/dist/commonjs/GlobalEndpointManagerOptions.js.map +1 -0
  368. package/dist/commonjs/PartitionKeyRangeFailoverInfo.js +8 -5
  369. package/dist/commonjs/PartitionKeyRangeFailoverInfo.js.map +1 -1
  370. package/dist/commonjs/bulk/Batcher.js +13 -3
  371. package/dist/commonjs/bulk/Batcher.js.map +1 -1
  372. package/dist/commonjs/bulk/BulkHelper.js +26 -11
  373. package/dist/commonjs/bulk/BulkHelper.js.map +1 -1
  374. package/dist/commonjs/bulk/BulkResponse.js +22 -20
  375. package/dist/commonjs/bulk/BulkResponse.js.map +1 -1
  376. package/dist/commonjs/bulk/CongestionAlgorithm.js +11 -4
  377. package/dist/commonjs/bulk/CongestionAlgorithm.js.map +1 -1
  378. package/dist/commonjs/bulk/HelperPerPartition.js +14 -1
  379. package/dist/commonjs/bulk/HelperPerPartition.js.map +1 -1
  380. package/dist/commonjs/bulk/ItemOperationContext.js +4 -0
  381. package/dist/commonjs/bulk/ItemOperationContext.js.map +1 -1
  382. package/dist/commonjs/bulk/Limiter.js +27 -18
  383. package/dist/commonjs/bulk/Limiter.js.map +1 -1
  384. package/dist/commonjs/bulk/PartitionMetric.js +4 -0
  385. package/dist/commonjs/bulk/PartitionMetric.js.map +1 -1
  386. package/dist/commonjs/client/ChangeFeed/ChangeFeedForEpkRange.d.ts.map +1 -1
  387. package/dist/commonjs/client/ChangeFeed/ChangeFeedForEpkRange.js +29 -15
  388. package/dist/commonjs/client/ChangeFeed/ChangeFeedForEpkRange.js.map +1 -1
  389. package/dist/commonjs/client/ChangeFeed/ChangeFeedForPartitionKey.d.ts.map +1 -1
  390. package/dist/commonjs/client/ChangeFeed/ChangeFeedForPartitionKey.js +19 -8
  391. package/dist/commonjs/client/ChangeFeed/ChangeFeedForPartitionKey.js.map +1 -1
  392. package/dist/commonjs/client/ChangeFeed/ChangeFeedIteratorBuilder.js +12 -9
  393. package/dist/commonjs/client/ChangeFeed/ChangeFeedIteratorBuilder.js.map +1 -1
  394. package/dist/commonjs/client/ChangeFeed/ChangeFeedIteratorOptions.d.ts +5 -0
  395. package/dist/commonjs/client/ChangeFeed/ChangeFeedIteratorOptions.d.ts.map +1 -1
  396. package/dist/commonjs/client/ChangeFeed/ChangeFeedIteratorOptions.js.map +1 -1
  397. package/dist/commonjs/client/ChangeFeed/ChangeFeedIteratorResponse.js +9 -0
  398. package/dist/commonjs/client/ChangeFeed/ChangeFeedIteratorResponse.js.map +1 -1
  399. package/dist/commonjs/client/ChangeFeed/ChangeFeedPolicy.js +1 -0
  400. package/dist/commonjs/client/ChangeFeed/ChangeFeedPolicy.js.map +1 -1
  401. package/dist/commonjs/client/ChangeFeed/ChangeFeedRange.js +20 -0
  402. package/dist/commonjs/client/ChangeFeed/ChangeFeedRange.js.map +1 -1
  403. package/dist/commonjs/client/ChangeFeed/ChangeFeedRetentionTimeSpan.js +1 -0
  404. package/dist/commonjs/client/ChangeFeed/ChangeFeedRetentionTimeSpan.js.map +1 -1
  405. package/dist/commonjs/client/ChangeFeed/ChangeFeedStartFromBeginning.js +1 -0
  406. package/dist/commonjs/client/ChangeFeed/ChangeFeedStartFromBeginning.js.map +1 -1
  407. package/dist/commonjs/client/ChangeFeed/ChangeFeedStartFromContinuation.js +1 -0
  408. package/dist/commonjs/client/ChangeFeed/ChangeFeedStartFromContinuation.js.map +1 -1
  409. package/dist/commonjs/client/ChangeFeed/ChangeFeedStartFromNow.js +1 -0
  410. package/dist/commonjs/client/ChangeFeed/ChangeFeedStartFromNow.js.map +1 -1
  411. package/dist/commonjs/client/ChangeFeed/ChangeFeedStartFromTime.js +2 -0
  412. package/dist/commonjs/client/ChangeFeed/ChangeFeedStartFromTime.js.map +1 -1
  413. package/dist/commonjs/client/ChangeFeed/CompositeContinuationToken.js +8 -0
  414. package/dist/commonjs/client/ChangeFeed/CompositeContinuationToken.js.map +1 -1
  415. package/dist/commonjs/client/ChangeFeed/ContinuationTokenForPartitionKey.js +12 -0
  416. package/dist/commonjs/client/ChangeFeed/ContinuationTokenForPartitionKey.js.map +1 -1
  417. package/dist/commonjs/client/ChangeFeed/FeedRange.js +8 -0
  418. package/dist/commonjs/client/ChangeFeed/FeedRange.js.map +1 -1
  419. package/dist/commonjs/client/ChangeFeed/FeedRangeQueue.js +1 -0
  420. package/dist/commonjs/client/ChangeFeed/FeedRangeQueue.js.map +1 -1
  421. package/dist/commonjs/client/ChangeFeed/InternalChangeFeedOptions.d.ts +1 -0
  422. package/dist/commonjs/client/ChangeFeed/InternalChangeFeedOptions.d.ts.map +1 -1
  423. package/dist/commonjs/client/ChangeFeed/InternalChangeFeedOptions.js.map +1 -1
  424. package/dist/commonjs/client/ChangeFeed/changeFeedUtils.d.ts.map +1 -1
  425. package/dist/commonjs/client/ChangeFeed/changeFeedUtils.js +6 -5
  426. package/dist/commonjs/client/ChangeFeed/changeFeedUtils.js.map +1 -1
  427. package/dist/commonjs/client/ClientUtils.js +1 -1
  428. package/dist/commonjs/client/ClientUtils.js.map +1 -1
  429. package/dist/commonjs/client/Conflict/Conflict.js +4 -0
  430. package/dist/commonjs/client/Conflict/Conflict.js.map +1 -1
  431. package/dist/commonjs/client/Conflict/ConflictResponse.js +2 -0
  432. package/dist/commonjs/client/Conflict/ConflictResponse.js.map +1 -1
  433. package/dist/commonjs/client/Conflict/Conflicts.js +2 -0
  434. package/dist/commonjs/client/Conflict/Conflicts.js.map +1 -1
  435. package/dist/commonjs/client/Container/Container.js +18 -3
  436. package/dist/commonjs/client/Container/Container.js.map +1 -1
  437. package/dist/commonjs/client/Container/ContainerResponse.js +2 -0
  438. package/dist/commonjs/client/Container/ContainerResponse.js.map +1 -1
  439. package/dist/commonjs/client/Container/Containers.js +4 -2
  440. package/dist/commonjs/client/Container/Containers.js.map +1 -1
  441. package/dist/commonjs/client/Database/Database.js +33 -0
  442. package/dist/commonjs/client/Database/Database.js.map +1 -1
  443. package/dist/commonjs/client/Database/DatabaseResponse.js +2 -0
  444. package/dist/commonjs/client/Database/DatabaseResponse.js.map +1 -1
  445. package/dist/commonjs/client/Database/Databases.js +3 -0
  446. package/dist/commonjs/client/Database/Databases.js.map +1 -1
  447. package/dist/commonjs/client/Item/Item.js +4 -0
  448. package/dist/commonjs/client/Item/Item.js.map +1 -1
  449. package/dist/commonjs/client/Item/ItemResponse.js +2 -0
  450. package/dist/commonjs/client/Item/ItemResponse.js.map +1 -1
  451. package/dist/commonjs/client/Item/Items.d.ts.map +1 -1
  452. package/dist/commonjs/client/Item/Items.js +8 -0
  453. package/dist/commonjs/client/Item/Items.js.map +1 -1
  454. package/dist/commonjs/client/Offer/Offer.js +3 -0
  455. package/dist/commonjs/client/Offer/Offer.js.map +1 -1
  456. package/dist/commonjs/client/Offer/OfferResponse.js +2 -0
  457. package/dist/commonjs/client/Offer/OfferResponse.js.map +1 -1
  458. package/dist/commonjs/client/Offer/Offers.js +2 -0
  459. package/dist/commonjs/client/Offer/Offers.js.map +1 -1
  460. package/dist/commonjs/client/Permission/Permission.js +3 -0
  461. package/dist/commonjs/client/Permission/Permission.js.map +1 -1
  462. package/dist/commonjs/client/Permission/PermissionResponse.js +2 -0
  463. package/dist/commonjs/client/Permission/PermissionResponse.js.map +1 -1
  464. package/dist/commonjs/client/Permission/Permissions.js +2 -0
  465. package/dist/commonjs/client/Permission/Permissions.js.map +1 -1
  466. package/dist/commonjs/client/SasToken/SasTokenProperties.js +17 -0
  467. package/dist/commonjs/client/SasToken/SasTokenProperties.js.map +1 -1
  468. package/dist/commonjs/client/Script/Scripts.js +5 -0
  469. package/dist/commonjs/client/Script/Scripts.js.map +1 -1
  470. package/dist/commonjs/client/StoredProcedure/StoredProcedure.js +3 -0
  471. package/dist/commonjs/client/StoredProcedure/StoredProcedure.js.map +1 -1
  472. package/dist/commonjs/client/StoredProcedure/StoredProcedureResponse.js +4 -0
  473. package/dist/commonjs/client/StoredProcedure/StoredProcedureResponse.js.map +1 -1
  474. package/dist/commonjs/client/StoredProcedure/StoredProcedures.js +2 -0
  475. package/dist/commonjs/client/StoredProcedure/StoredProcedures.js.map +1 -1
  476. package/dist/commonjs/client/Trigger/Trigger.js +3 -0
  477. package/dist/commonjs/client/Trigger/Trigger.js.map +1 -1
  478. package/dist/commonjs/client/Trigger/TriggerResponse.js +2 -0
  479. package/dist/commonjs/client/Trigger/TriggerResponse.js.map +1 -1
  480. package/dist/commonjs/client/Trigger/Triggers.js +2 -0
  481. package/dist/commonjs/client/Trigger/Triggers.js.map +1 -1
  482. package/dist/commonjs/client/User/User.js +9 -0
  483. package/dist/commonjs/client/User/User.js.map +1 -1
  484. package/dist/commonjs/client/User/UserResponse.js +2 -0
  485. package/dist/commonjs/client/User/UserResponse.js.map +1 -1
  486. package/dist/commonjs/client/User/Users.js +2 -0
  487. package/dist/commonjs/client/User/Users.js.map +1 -1
  488. package/dist/commonjs/client/UserDefinedFunction/UserDefinedFunction.js +3 -0
  489. package/dist/commonjs/client/UserDefinedFunction/UserDefinedFunction.js.map +1 -1
  490. package/dist/commonjs/client/UserDefinedFunction/UserDefinedFunctionResponse.js +2 -0
  491. package/dist/commonjs/client/UserDefinedFunction/UserDefinedFunctionResponse.js.map +1 -1
  492. package/dist/commonjs/client/UserDefinedFunction/UserDefinedFunctions.js +2 -0
  493. package/dist/commonjs/client/UserDefinedFunction/UserDefinedFunctions.js.map +1 -1
  494. package/dist/commonjs/common/constants.d.ts +4 -0
  495. package/dist/commonjs/common/constants.d.ts.map +1 -1
  496. package/dist/commonjs/common/constants.js +6 -2
  497. package/dist/commonjs/common/constants.js.map +1 -1
  498. package/dist/commonjs/common/helper.d.ts +6 -0
  499. package/dist/commonjs/common/helper.d.ts.map +1 -1
  500. package/dist/commonjs/common/helper.js +9 -0
  501. package/dist/commonjs/common/helper.js.map +1 -1
  502. package/dist/commonjs/common/platform.d.ts +1 -0
  503. package/dist/commonjs/common/platform.d.ts.map +1 -1
  504. package/dist/commonjs/common/platform.js +1 -3
  505. package/dist/commonjs/common/platform.js.map +1 -1
  506. package/dist/commonjs/diagnostics/CosmosDiagnosticsContext.js +8 -7
  507. package/dist/commonjs/diagnostics/CosmosDiagnosticsContext.js.map +1 -1
  508. package/dist/commonjs/diagnostics/DiagnosticNodeInternal.d.ts +1 -0
  509. package/dist/commonjs/diagnostics/DiagnosticNodeInternal.d.ts.map +1 -1
  510. package/dist/commonjs/diagnostics/DiagnosticNodeInternal.js +26 -7
  511. package/dist/commonjs/diagnostics/DiagnosticNodeInternal.js.map +1 -1
  512. package/dist/commonjs/diagnostics/DiagnosticWriter.js +1 -3
  513. package/dist/commonjs/diagnostics/DiagnosticWriter.js.map +1 -1
  514. package/dist/commonjs/diagnostics/index.js +2 -2
  515. package/dist/commonjs/diagnostics/index.js.map +1 -1
  516. package/dist/commonjs/documents/ConnectionPolicy.d.ts +10 -4
  517. package/dist/commonjs/documents/ConnectionPolicy.d.ts.map +1 -1
  518. package/dist/commonjs/documents/ConnectionPolicy.js +2 -2
  519. package/dist/commonjs/documents/ConnectionPolicy.js.map +1 -1
  520. package/dist/commonjs/documents/DatabaseAccount.d.ts +4 -0
  521. package/dist/commonjs/documents/DatabaseAccount.d.ts.map +1 -1
  522. package/dist/commonjs/documents/DatabaseAccount.js +29 -4
  523. package/dist/commonjs/documents/DatabaseAccount.js.map +1 -1
  524. package/dist/commonjs/documents/PartitionKey.js +1 -3
  525. package/dist/commonjs/documents/PartitionKey.js.map +1 -1
  526. package/dist/commonjs/encryption/AeadAes256CbcHmacSha256Algorithm/AeadAes256CbcHmacSha256Algorithm.js +8 -2
  527. package/dist/commonjs/encryption/AeadAes256CbcHmacSha256Algorithm/AeadAes256CbcHmacSha256Algorithm.js.map +1 -1
  528. package/dist/commonjs/encryption/Cache/ClientEncryptionKeyPropertiesCache.js +2 -0
  529. package/dist/commonjs/encryption/Cache/ClientEncryptionKeyPropertiesCache.js.map +1 -1
  530. package/dist/commonjs/encryption/Cache/EncryptionSettingsCache.js +2 -0
  531. package/dist/commonjs/encryption/Cache/EncryptionSettingsCache.js.map +1 -1
  532. package/dist/commonjs/encryption/Cache/KeyEncryptionKeyCache.js +2 -0
  533. package/dist/commonjs/encryption/Cache/KeyEncryptionKeyCache.js.map +1 -1
  534. package/dist/commonjs/encryption/Cache/ProtectedDataEncryptionKeyCache.js +5 -0
  535. package/dist/commonjs/encryption/Cache/ProtectedDataEncryptionKeyCache.js.map +1 -1
  536. package/dist/commonjs/encryption/ClientEncryptionKey/ClientEncryptionKeyResponse.js +2 -0
  537. package/dist/commonjs/encryption/ClientEncryptionKey/ClientEncryptionKeyResponse.js.map +1 -1
  538. package/dist/commonjs/encryption/EncryptionItemQueryIterator.js +24 -27
  539. package/dist/commonjs/encryption/EncryptionItemQueryIterator.js.map +1 -1
  540. package/dist/commonjs/encryption/EncryptionKey/DataEncryptionKey.js +7 -2
  541. package/dist/commonjs/encryption/EncryptionKey/DataEncryptionKey.js.map +1 -1
  542. package/dist/commonjs/encryption/EncryptionKey/ProtectedDataEncryptionKey.d.ts +0 -1
  543. package/dist/commonjs/encryption/EncryptionKey/ProtectedDataEncryptionKey.d.ts.map +1 -1
  544. package/dist/commonjs/encryption/EncryptionKey/ProtectedDataEncryptionKey.js +2 -0
  545. package/dist/commonjs/encryption/EncryptionKey/ProtectedDataEncryptionKey.js.map +1 -1
  546. package/dist/commonjs/encryption/EncryptionKeyResolver/AzureKeyVaultEncryptionKeyResolver.js +6 -5
  547. package/dist/commonjs/encryption/EncryptionKeyResolver/AzureKeyVaultEncryptionKeyResolver.js.map +1 -1
  548. package/dist/commonjs/encryption/EncryptionKeyStoreProvider.js +8 -1
  549. package/dist/commonjs/encryption/EncryptionKeyStoreProvider.js.map +1 -1
  550. package/dist/commonjs/encryption/EncryptionManager.js +6 -0
  551. package/dist/commonjs/encryption/EncryptionManager.js.map +1 -1
  552. package/dist/commonjs/encryption/EncryptionProcessor.js +5 -0
  553. package/dist/commonjs/encryption/EncryptionProcessor.js.map +1 -1
  554. package/dist/commonjs/encryption/EncryptionQueryBuilder.js +2 -0
  555. package/dist/commonjs/encryption/EncryptionQueryBuilder.js.map +1 -1
  556. package/dist/commonjs/encryption/EncryptionSettingForProperty.js +6 -0
  557. package/dist/commonjs/encryption/EncryptionSettingForProperty.js.map +1 -1
  558. package/dist/commonjs/encryption/EncryptionSettings.js +6 -3
  559. package/dist/commonjs/encryption/EncryptionSettings.js.map +1 -1
  560. package/dist/commonjs/encryption/KeyEncryptionKey.js +4 -0
  561. package/dist/commonjs/encryption/KeyEncryptionKey.js.map +1 -1
  562. package/dist/commonjs/encryption/Serializers/StringSerializer.js +1 -1
  563. package/dist/commonjs/encryption/Serializers/StringSerializer.js.map +1 -1
  564. package/dist/commonjs/extractPartitionKey.js +2 -2
  565. package/dist/commonjs/extractPartitionKey.js.map +1 -1
  566. package/dist/commonjs/globalEndpointManager.d.ts +8 -0
  567. package/dist/commonjs/globalEndpointManager.d.ts.map +1 -1
  568. package/dist/commonjs/globalEndpointManager.js +104 -29
  569. package/dist/commonjs/globalEndpointManager.js.map +1 -1
  570. package/dist/commonjs/globalPartitionEndpointManager.d.ts +0 -2
  571. package/dist/commonjs/globalPartitionEndpointManager.d.ts.map +1 -1
  572. package/dist/commonjs/globalPartitionEndpointManager.js +19 -7
  573. package/dist/commonjs/globalPartitionEndpointManager.js.map +1 -1
  574. package/dist/commonjs/queryExecutionContext/Aggregators/AverageAggregator.js +2 -0
  575. package/dist/commonjs/queryExecutionContext/Aggregators/AverageAggregator.js.map +1 -1
  576. package/dist/commonjs/queryExecutionContext/Aggregators/CountAggregator.js +1 -0
  577. package/dist/commonjs/queryExecutionContext/Aggregators/CountAggregator.js.map +1 -1
  578. package/dist/commonjs/queryExecutionContext/Aggregators/GlobalStatisticsAggregator.js +1 -0
  579. package/dist/commonjs/queryExecutionContext/Aggregators/GlobalStatisticsAggregator.js.map +1 -1
  580. package/dist/commonjs/queryExecutionContext/Aggregators/MakeListAggregator.js +1 -0
  581. package/dist/commonjs/queryExecutionContext/Aggregators/MakeListAggregator.js.map +1 -1
  582. package/dist/commonjs/queryExecutionContext/Aggregators/MakeSetAggregator.js +1 -0
  583. package/dist/commonjs/queryExecutionContext/Aggregators/MakeSetAggregator.js.map +1 -1
  584. package/dist/commonjs/queryExecutionContext/Aggregators/MaxAggregator.js +2 -0
  585. package/dist/commonjs/queryExecutionContext/Aggregators/MaxAggregator.js.map +1 -1
  586. package/dist/commonjs/queryExecutionContext/Aggregators/MinAggregator.js +2 -0
  587. package/dist/commonjs/queryExecutionContext/Aggregators/MinAggregator.js.map +1 -1
  588. package/dist/commonjs/queryExecutionContext/Aggregators/StaticValueAggregator.js +1 -0
  589. package/dist/commonjs/queryExecutionContext/Aggregators/StaticValueAggregator.js.map +1 -1
  590. package/dist/commonjs/queryExecutionContext/Aggregators/SumAggregator.js +1 -0
  591. package/dist/commonjs/queryExecutionContext/Aggregators/SumAggregator.js.map +1 -1
  592. package/dist/commonjs/queryExecutionContext/EndpointComponent/GroupByEndpointComponent.js +5 -3
  593. package/dist/commonjs/queryExecutionContext/EndpointComponent/GroupByEndpointComponent.js.map +1 -1
  594. package/dist/commonjs/queryExecutionContext/EndpointComponent/GroupByValueEndpointComponent.js +6 -3
  595. package/dist/commonjs/queryExecutionContext/EndpointComponent/GroupByValueEndpointComponent.js.map +1 -1
  596. package/dist/commonjs/queryExecutionContext/EndpointComponent/NonStreamingOrderByDistinctEndpointComponent.js +23 -7
  597. package/dist/commonjs/queryExecutionContext/EndpointComponent/NonStreamingOrderByDistinctEndpointComponent.js.map +1 -1
  598. package/dist/commonjs/queryExecutionContext/EndpointComponent/NonStreamingOrderByEndpointComponent.js +14 -6
  599. package/dist/commonjs/queryExecutionContext/EndpointComponent/NonStreamingOrderByEndpointComponent.js.map +1 -1
  600. package/dist/commonjs/queryExecutionContext/EndpointComponent/OffsetLimitEndpointComponent.js +3 -0
  601. package/dist/commonjs/queryExecutionContext/EndpointComponent/OffsetLimitEndpointComponent.js.map +1 -1
  602. package/dist/commonjs/queryExecutionContext/EndpointComponent/OrderByEndpointComponent.js +2 -0
  603. package/dist/commonjs/queryExecutionContext/EndpointComponent/OrderByEndpointComponent.js.map +1 -1
  604. package/dist/commonjs/queryExecutionContext/EndpointComponent/OrderedDistinctEndpointComponent.js +2 -0
  605. package/dist/commonjs/queryExecutionContext/EndpointComponent/OrderedDistinctEndpointComponent.js.map +1 -1
  606. package/dist/commonjs/queryExecutionContext/EndpointComponent/UnorderedDistinctEndpointComponent.js +2 -0
  607. package/dist/commonjs/queryExecutionContext/EndpointComponent/UnorderedDistinctEndpointComponent.js.map +1 -1
  608. package/dist/commonjs/queryExecutionContext/FetchResult.js +4 -0
  609. package/dist/commonjs/queryExecutionContext/FetchResult.js.map +1 -1
  610. package/dist/commonjs/queryExecutionContext/defaultQueryExecutionContext.js +14 -2
  611. package/dist/commonjs/queryExecutionContext/defaultQueryExecutionContext.js.map +1 -1
  612. package/dist/commonjs/queryExecutionContext/documentProducer.js +34 -21
  613. package/dist/commonjs/queryExecutionContext/documentProducer.js.map +1 -1
  614. package/dist/commonjs/queryExecutionContext/hybridQueryExecutionContext.js +41 -27
  615. package/dist/commonjs/queryExecutionContext/hybridQueryExecutionContext.js.map +1 -1
  616. package/dist/commonjs/queryExecutionContext/orderByComparator.js +1 -0
  617. package/dist/commonjs/queryExecutionContext/orderByComparator.js.map +1 -1
  618. package/dist/commonjs/queryExecutionContext/orderByDocumentProducerComparator.js +1 -0
  619. package/dist/commonjs/queryExecutionContext/orderByDocumentProducerComparator.js.map +1 -1
  620. package/dist/commonjs/queryExecutionContext/orderByQueryExecutionContext.js +1 -0
  621. package/dist/commonjs/queryExecutionContext/orderByQueryExecutionContext.js.map +1 -1
  622. package/dist/commonjs/queryExecutionContext/parallelQueryExecutionContextBase.js +20 -2
  623. package/dist/commonjs/queryExecutionContext/parallelQueryExecutionContextBase.js.map +1 -1
  624. package/dist/commonjs/queryExecutionContext/pipelinedQueryExecutionContext.js +14 -4
  625. package/dist/commonjs/queryExecutionContext/pipelinedQueryExecutionContext.js.map +1 -1
  626. package/dist/commonjs/queryIterator.js +41 -33
  627. package/dist/commonjs/queryIterator.js.map +1 -1
  628. package/dist/commonjs/queryMetrics/clientSideMetrics.js +2 -1
  629. package/dist/commonjs/queryMetrics/clientSideMetrics.js.map +1 -1
  630. package/dist/commonjs/queryMetrics/queryMetrics.js +14 -1
  631. package/dist/commonjs/queryMetrics/queryMetrics.js.map +1 -1
  632. package/dist/commonjs/queryMetrics/queryPreparationTime.js +5 -1
  633. package/dist/commonjs/queryMetrics/queryPreparationTime.js.map +1 -1
  634. package/dist/commonjs/queryMetrics/runtimeExecutionTimes.js +4 -1
  635. package/dist/commonjs/queryMetrics/runtimeExecutionTimes.js.map +1 -1
  636. package/dist/commonjs/queryMetrics/timeSpan.js +4 -3
  637. package/dist/commonjs/queryMetrics/timeSpan.js.map +1 -1
  638. package/dist/commonjs/request/ErrorResponse.js +19 -0
  639. package/dist/commonjs/request/ErrorResponse.js.map +1 -1
  640. package/dist/commonjs/request/FeedResponse.js +4 -0
  641. package/dist/commonjs/request/FeedResponse.js.map +1 -1
  642. package/dist/commonjs/request/RequestHandler.js +3 -4
  643. package/dist/commonjs/request/RequestHandler.js.map +1 -1
  644. package/dist/commonjs/request/ResourceResponse.js +5 -0
  645. package/dist/commonjs/request/ResourceResponse.js.map +1 -1
  646. package/dist/commonjs/request/SharedOptions.d.ts +5 -0
  647. package/dist/commonjs/request/SharedOptions.d.ts.map +1 -1
  648. package/dist/commonjs/request/SharedOptions.js.map +1 -1
  649. package/dist/commonjs/request/TimeoutError.js +1 -1
  650. package/dist/commonjs/request/TimeoutError.js.map +1 -1
  651. package/dist/commonjs/request/hybridSearchQueryResult.js +5 -0
  652. package/dist/commonjs/request/hybridSearchQueryResult.js.map +1 -1
  653. package/dist/commonjs/request/request.js +5 -1
  654. package/dist/commonjs/request/request.js.map +1 -1
  655. package/dist/commonjs/retry/bulkExecutionRetryPolicy.js +5 -2
  656. package/dist/commonjs/retry/bulkExecutionRetryPolicy.js.map +1 -1
  657. package/dist/commonjs/retry/defaultRetryPolicy.d.ts.map +1 -1
  658. package/dist/commonjs/retry/defaultRetryPolicy.js +6 -6
  659. package/dist/commonjs/retry/defaultRetryPolicy.js.map +1 -1
  660. package/dist/commonjs/retry/endpointDiscoveryRetryPolicy.d.ts +3 -2
  661. package/dist/commonjs/retry/endpointDiscoveryRetryPolicy.d.ts.map +1 -1
  662. package/dist/commonjs/retry/endpointDiscoveryRetryPolicy.js +24 -7
  663. package/dist/commonjs/retry/endpointDiscoveryRetryPolicy.js.map +1 -1
  664. package/dist/commonjs/retry/resourceThrottleRetryPolicy.js +20 -10
  665. package/dist/commonjs/retry/resourceThrottleRetryPolicy.js.map +1 -1
  666. package/dist/commonjs/retry/retryUtility.d.ts.map +1 -1
  667. package/dist/commonjs/retry/retryUtility.js +22 -8
  668. package/dist/commonjs/retry/retryUtility.js.map +1 -1
  669. package/dist/commonjs/retry/sessionRetryPolicy.js +8 -4
  670. package/dist/commonjs/retry/sessionRetryPolicy.js.map +1 -1
  671. package/dist/commonjs/retry/timeoutFailoverRetryPolicy.d.ts +1 -2
  672. package/dist/commonjs/retry/timeoutFailoverRetryPolicy.d.ts.map +1 -1
  673. package/dist/commonjs/retry/timeoutFailoverRetryPolicy.js +17 -7
  674. package/dist/commonjs/retry/timeoutFailoverRetryPolicy.js.map +1 -1
  675. package/dist/commonjs/routing/QueryRange.js +4 -0
  676. package/dist/commonjs/routing/QueryRange.js.map +1 -1
  677. package/dist/commonjs/routing/inMemoryCollectionRoutingMap.js +4 -0
  678. package/dist/commonjs/routing/inMemoryCollectionRoutingMap.js.map +1 -1
  679. package/dist/commonjs/routing/partitionKeyRangeCache.js +2 -0
  680. package/dist/commonjs/routing/partitionKeyRangeCache.js.map +1 -1
  681. package/dist/commonjs/routing/smartRoutingMapProvider.js +1 -0
  682. package/dist/commonjs/routing/smartRoutingMapProvider.js.map +1 -1
  683. package/dist/commonjs/session/VectorSessionToken.js +6 -2
  684. package/dist/commonjs/session/VectorSessionToken.js.map +1 -1
  685. package/dist/commonjs/session/sessionContainer.js +5 -3
  686. package/dist/commonjs/session/sessionContainer.js.map +1 -1
  687. package/dist/commonjs/tsdoc-metadata.json +1 -1
  688. package/dist/commonjs/utils/batch.js +15 -4
  689. package/dist/commonjs/utils/batch.js.map +1 -1
  690. package/dist/commonjs/utils/encode.d.ts +1 -1
  691. package/dist/commonjs/utils/encode.d.ts.map +1 -1
  692. package/dist/commonjs/utils/encode.js.map +1 -1
  693. package/dist/commonjs/utils/fixedSizePriorityQueue.js +4 -0
  694. package/dist/commonjs/utils/fixedSizePriorityQueue.js.map +1 -1
  695. package/dist/commonjs/utils/hashing/hash.js +1 -1
  696. package/dist/commonjs/utils/hashing/hash.js.map +1 -1
  697. package/dist/commonjs/utils/nonStreamingOrderByMap.js +2 -0
  698. package/dist/commonjs/utils/nonStreamingOrderByMap.js.map +1 -1
  699. package/dist/esm/ChangeFeedIterator.js +17 -11
  700. package/dist/esm/ChangeFeedIterator.js.map +1 -1
  701. package/dist/esm/ChangeFeedResponse.js +8 -0
  702. package/dist/esm/ChangeFeedResponse.js.map +1 -1
  703. package/dist/esm/ClientContext.d.ts.map +1 -1
  704. package/dist/esm/ClientContext.js +232 -48
  705. package/dist/esm/ClientContext.js.map +1 -1
  706. package/dist/esm/CosmosClient.d.ts +13 -0
  707. package/dist/esm/CosmosClient.d.ts.map +1 -1
  708. package/dist/esm/CosmosClient.js +53 -6
  709. package/dist/esm/CosmosClient.js.map +1 -1
  710. package/dist/esm/CosmosClientOptions.d.ts.map +1 -1
  711. package/dist/esm/CosmosClientOptions.js.map +1 -1
  712. package/dist/esm/CosmosDiagnostics.d.ts +4 -0
  713. package/dist/esm/CosmosDiagnostics.d.ts.map +1 -1
  714. package/dist/esm/CosmosDiagnostics.js +3 -0
  715. package/dist/esm/CosmosDiagnostics.js.map +1 -1
  716. package/dist/esm/GlobalEndpointManagerOptions.d.ts +2 -0
  717. package/dist/esm/GlobalEndpointManagerOptions.d.ts.map +1 -0
  718. package/dist/esm/GlobalEndpointManagerOptions.js +2 -0
  719. package/dist/esm/GlobalEndpointManagerOptions.js.map +1 -0
  720. package/dist/esm/PartitionKeyRangeFailoverInfo.js +8 -5
  721. package/dist/esm/PartitionKeyRangeFailoverInfo.js.map +1 -1
  722. package/dist/esm/bulk/Batcher.js +13 -3
  723. package/dist/esm/bulk/Batcher.js.map +1 -1
  724. package/dist/esm/bulk/BulkHelper.js +26 -11
  725. package/dist/esm/bulk/BulkHelper.js.map +1 -1
  726. package/dist/esm/bulk/BulkResponse.js +22 -20
  727. package/dist/esm/bulk/BulkResponse.js.map +1 -1
  728. package/dist/esm/bulk/CongestionAlgorithm.js +11 -4
  729. package/dist/esm/bulk/CongestionAlgorithm.js.map +1 -1
  730. package/dist/esm/bulk/HelperPerPartition.js +14 -1
  731. package/dist/esm/bulk/HelperPerPartition.js.map +1 -1
  732. package/dist/esm/bulk/ItemOperationContext.js +4 -0
  733. package/dist/esm/bulk/ItemOperationContext.js.map +1 -1
  734. package/dist/esm/bulk/Limiter.js +27 -18
  735. package/dist/esm/bulk/Limiter.js.map +1 -1
  736. package/dist/esm/bulk/PartitionMetric.js +4 -0
  737. package/dist/esm/bulk/PartitionMetric.js.map +1 -1
  738. package/dist/esm/client/ChangeFeed/ChangeFeedForEpkRange.d.ts.map +1 -1
  739. package/dist/esm/client/ChangeFeed/ChangeFeedForEpkRange.js +29 -15
  740. package/dist/esm/client/ChangeFeed/ChangeFeedForEpkRange.js.map +1 -1
  741. package/dist/esm/client/ChangeFeed/ChangeFeedForPartitionKey.d.ts.map +1 -1
  742. package/dist/esm/client/ChangeFeed/ChangeFeedForPartitionKey.js +19 -8
  743. package/dist/esm/client/ChangeFeed/ChangeFeedForPartitionKey.js.map +1 -1
  744. package/dist/esm/client/ChangeFeed/ChangeFeedIteratorBuilder.js +12 -9
  745. package/dist/esm/client/ChangeFeed/ChangeFeedIteratorBuilder.js.map +1 -1
  746. package/dist/esm/client/ChangeFeed/ChangeFeedIteratorOptions.d.ts +5 -0
  747. package/dist/esm/client/ChangeFeed/ChangeFeedIteratorOptions.d.ts.map +1 -1
  748. package/dist/esm/client/ChangeFeed/ChangeFeedIteratorOptions.js.map +1 -1
  749. package/dist/esm/client/ChangeFeed/ChangeFeedIteratorResponse.js +9 -0
  750. package/dist/esm/client/ChangeFeed/ChangeFeedIteratorResponse.js.map +1 -1
  751. package/dist/esm/client/ChangeFeed/ChangeFeedPolicy.js +1 -0
  752. package/dist/esm/client/ChangeFeed/ChangeFeedPolicy.js.map +1 -1
  753. package/dist/esm/client/ChangeFeed/ChangeFeedRange.js +20 -0
  754. package/dist/esm/client/ChangeFeed/ChangeFeedRange.js.map +1 -1
  755. package/dist/esm/client/ChangeFeed/ChangeFeedRetentionTimeSpan.js +1 -0
  756. package/dist/esm/client/ChangeFeed/ChangeFeedRetentionTimeSpan.js.map +1 -1
  757. package/dist/esm/client/ChangeFeed/ChangeFeedStartFromBeginning.js +1 -0
  758. package/dist/esm/client/ChangeFeed/ChangeFeedStartFromBeginning.js.map +1 -1
  759. package/dist/esm/client/ChangeFeed/ChangeFeedStartFromContinuation.js +1 -0
  760. package/dist/esm/client/ChangeFeed/ChangeFeedStartFromContinuation.js.map +1 -1
  761. package/dist/esm/client/ChangeFeed/ChangeFeedStartFromNow.js +1 -0
  762. package/dist/esm/client/ChangeFeed/ChangeFeedStartFromNow.js.map +1 -1
  763. package/dist/esm/client/ChangeFeed/ChangeFeedStartFromTime.js +2 -0
  764. package/dist/esm/client/ChangeFeed/ChangeFeedStartFromTime.js.map +1 -1
  765. package/dist/esm/client/ChangeFeed/CompositeContinuationToken.js +8 -0
  766. package/dist/esm/client/ChangeFeed/CompositeContinuationToken.js.map +1 -1
  767. package/dist/esm/client/ChangeFeed/ContinuationTokenForPartitionKey.js +12 -0
  768. package/dist/esm/client/ChangeFeed/ContinuationTokenForPartitionKey.js.map +1 -1
  769. package/dist/esm/client/ChangeFeed/FeedRange.js +8 -0
  770. package/dist/esm/client/ChangeFeed/FeedRange.js.map +1 -1
  771. package/dist/esm/client/ChangeFeed/FeedRangeQueue.js +1 -0
  772. package/dist/esm/client/ChangeFeed/FeedRangeQueue.js.map +1 -1
  773. package/dist/esm/client/ChangeFeed/InternalChangeFeedOptions.d.ts +1 -0
  774. package/dist/esm/client/ChangeFeed/InternalChangeFeedOptions.d.ts.map +1 -1
  775. package/dist/esm/client/ChangeFeed/InternalChangeFeedOptions.js.map +1 -1
  776. package/dist/esm/client/ChangeFeed/changeFeedUtils.d.ts.map +1 -1
  777. package/dist/esm/client/ChangeFeed/changeFeedUtils.js +6 -5
  778. package/dist/esm/client/ChangeFeed/changeFeedUtils.js.map +1 -1
  779. package/dist/esm/client/ClientUtils.js +1 -1
  780. package/dist/esm/client/ClientUtils.js.map +1 -1
  781. package/dist/esm/client/Conflict/Conflict.js +4 -0
  782. package/dist/esm/client/Conflict/Conflict.js.map +1 -1
  783. package/dist/esm/client/Conflict/ConflictResponse.js +2 -0
  784. package/dist/esm/client/Conflict/ConflictResponse.js.map +1 -1
  785. package/dist/esm/client/Conflict/Conflicts.js +2 -0
  786. package/dist/esm/client/Conflict/Conflicts.js.map +1 -1
  787. package/dist/esm/client/Container/Container.js +18 -3
  788. package/dist/esm/client/Container/Container.js.map +1 -1
  789. package/dist/esm/client/Container/ContainerResponse.js +2 -0
  790. package/dist/esm/client/Container/ContainerResponse.js.map +1 -1
  791. package/dist/esm/client/Container/Containers.js +4 -2
  792. package/dist/esm/client/Container/Containers.js.map +1 -1
  793. package/dist/esm/client/Database/Database.js +33 -0
  794. package/dist/esm/client/Database/Database.js.map +1 -1
  795. package/dist/esm/client/Database/DatabaseResponse.js +2 -0
  796. package/dist/esm/client/Database/DatabaseResponse.js.map +1 -1
  797. package/dist/esm/client/Database/Databases.js +3 -0
  798. package/dist/esm/client/Database/Databases.js.map +1 -1
  799. package/dist/esm/client/Item/Item.js +4 -0
  800. package/dist/esm/client/Item/Item.js.map +1 -1
  801. package/dist/esm/client/Item/ItemResponse.js +2 -0
  802. package/dist/esm/client/Item/ItemResponse.js.map +1 -1
  803. package/dist/esm/client/Item/Items.d.ts.map +1 -1
  804. package/dist/esm/client/Item/Items.js +8 -0
  805. package/dist/esm/client/Item/Items.js.map +1 -1
  806. package/dist/esm/client/Offer/Offer.js +3 -0
  807. package/dist/esm/client/Offer/Offer.js.map +1 -1
  808. package/dist/esm/client/Offer/OfferResponse.js +2 -0
  809. package/dist/esm/client/Offer/OfferResponse.js.map +1 -1
  810. package/dist/esm/client/Offer/Offers.js +2 -0
  811. package/dist/esm/client/Offer/Offers.js.map +1 -1
  812. package/dist/esm/client/Permission/Permission.js +3 -0
  813. package/dist/esm/client/Permission/Permission.js.map +1 -1
  814. package/dist/esm/client/Permission/PermissionResponse.js +2 -0
  815. package/dist/esm/client/Permission/PermissionResponse.js.map +1 -1
  816. package/dist/esm/client/Permission/Permissions.js +2 -0
  817. package/dist/esm/client/Permission/Permissions.js.map +1 -1
  818. package/dist/esm/client/SasToken/SasTokenProperties.js +17 -0
  819. package/dist/esm/client/SasToken/SasTokenProperties.js.map +1 -1
  820. package/dist/esm/client/Script/Scripts.js +5 -0
  821. package/dist/esm/client/Script/Scripts.js.map +1 -1
  822. package/dist/esm/client/StoredProcedure/StoredProcedure.js +3 -0
  823. package/dist/esm/client/StoredProcedure/StoredProcedure.js.map +1 -1
  824. package/dist/esm/client/StoredProcedure/StoredProcedureResponse.js +4 -0
  825. package/dist/esm/client/StoredProcedure/StoredProcedureResponse.js.map +1 -1
  826. package/dist/esm/client/StoredProcedure/StoredProcedures.js +2 -0
  827. package/dist/esm/client/StoredProcedure/StoredProcedures.js.map +1 -1
  828. package/dist/esm/client/Trigger/Trigger.js +3 -0
  829. package/dist/esm/client/Trigger/Trigger.js.map +1 -1
  830. package/dist/esm/client/Trigger/TriggerResponse.js +2 -0
  831. package/dist/esm/client/Trigger/TriggerResponse.js.map +1 -1
  832. package/dist/esm/client/Trigger/Triggers.js +2 -0
  833. package/dist/esm/client/Trigger/Triggers.js.map +1 -1
  834. package/dist/esm/client/User/User.js +9 -0
  835. package/dist/esm/client/User/User.js.map +1 -1
  836. package/dist/esm/client/User/UserResponse.js +2 -0
  837. package/dist/esm/client/User/UserResponse.js.map +1 -1
  838. package/dist/esm/client/User/Users.js +2 -0
  839. package/dist/esm/client/User/Users.js.map +1 -1
  840. package/dist/esm/client/UserDefinedFunction/UserDefinedFunction.js +3 -0
  841. package/dist/esm/client/UserDefinedFunction/UserDefinedFunction.js.map +1 -1
  842. package/dist/esm/client/UserDefinedFunction/UserDefinedFunctionResponse.js +2 -0
  843. package/dist/esm/client/UserDefinedFunction/UserDefinedFunctionResponse.js.map +1 -1
  844. package/dist/esm/client/UserDefinedFunction/UserDefinedFunctions.js +2 -0
  845. package/dist/esm/client/UserDefinedFunction/UserDefinedFunctions.js.map +1 -1
  846. package/dist/esm/common/constants.d.ts +4 -0
  847. package/dist/esm/common/constants.d.ts.map +1 -1
  848. package/dist/esm/common/constants.js +5 -1
  849. package/dist/esm/common/constants.js.map +1 -1
  850. package/dist/esm/common/helper.d.ts +6 -0
  851. package/dist/esm/common/helper.d.ts.map +1 -1
  852. package/dist/esm/common/helper.js +9 -1
  853. package/dist/esm/common/helper.js.map +1 -1
  854. package/dist/esm/common/platform.d.ts +1 -0
  855. package/dist/esm/common/platform.d.ts.map +1 -1
  856. package/dist/esm/common/platform.js +1 -3
  857. package/dist/esm/common/platform.js.map +1 -1
  858. package/dist/esm/diagnostics/CosmosDiagnosticsContext.js +8 -7
  859. package/dist/esm/diagnostics/CosmosDiagnosticsContext.js.map +1 -1
  860. package/dist/esm/diagnostics/DiagnosticNodeInternal.d.ts +1 -0
  861. package/dist/esm/diagnostics/DiagnosticNodeInternal.d.ts.map +1 -1
  862. package/dist/esm/diagnostics/DiagnosticNodeInternal.js +26 -7
  863. package/dist/esm/diagnostics/DiagnosticNodeInternal.js.map +1 -1
  864. package/dist/esm/diagnostics/DiagnosticWriter.js +1 -3
  865. package/dist/esm/diagnostics/DiagnosticWriter.js.map +1 -1
  866. package/dist/esm/diagnostics/index.js +2 -2
  867. package/dist/esm/diagnostics/index.js.map +1 -1
  868. package/dist/esm/documents/ConnectionPolicy.d.ts +10 -4
  869. package/dist/esm/documents/ConnectionPolicy.d.ts.map +1 -1
  870. package/dist/esm/documents/ConnectionPolicy.js +2 -2
  871. package/dist/esm/documents/ConnectionPolicy.js.map +1 -1
  872. package/dist/esm/documents/DatabaseAccount.d.ts +4 -0
  873. package/dist/esm/documents/DatabaseAccount.d.ts.map +1 -1
  874. package/dist/esm/documents/DatabaseAccount.js +29 -4
  875. package/dist/esm/documents/DatabaseAccount.js.map +1 -1
  876. package/dist/esm/documents/PartitionKey.js +1 -3
  877. package/dist/esm/documents/PartitionKey.js.map +1 -1
  878. package/dist/esm/encryption/AeadAes256CbcHmacSha256Algorithm/AeadAes256CbcHmacSha256Algorithm.js +8 -2
  879. package/dist/esm/encryption/AeadAes256CbcHmacSha256Algorithm/AeadAes256CbcHmacSha256Algorithm.js.map +1 -1
  880. package/dist/esm/encryption/Cache/ClientEncryptionKeyPropertiesCache.js +2 -0
  881. package/dist/esm/encryption/Cache/ClientEncryptionKeyPropertiesCache.js.map +1 -1
  882. package/dist/esm/encryption/Cache/EncryptionSettingsCache.js +2 -0
  883. package/dist/esm/encryption/Cache/EncryptionSettingsCache.js.map +1 -1
  884. package/dist/esm/encryption/Cache/KeyEncryptionKeyCache.js +2 -0
  885. package/dist/esm/encryption/Cache/KeyEncryptionKeyCache.js.map +1 -1
  886. package/dist/esm/encryption/Cache/ProtectedDataEncryptionKeyCache.js +5 -0
  887. package/dist/esm/encryption/Cache/ProtectedDataEncryptionKeyCache.js.map +1 -1
  888. package/dist/esm/encryption/ClientEncryptionKey/ClientEncryptionKeyResponse.js +2 -0
  889. package/dist/esm/encryption/ClientEncryptionKey/ClientEncryptionKeyResponse.js.map +1 -1
  890. package/dist/esm/encryption/EncryptionItemQueryIterator.js +24 -27
  891. package/dist/esm/encryption/EncryptionItemQueryIterator.js.map +1 -1
  892. package/dist/esm/encryption/EncryptionKey/DataEncryptionKey.js +7 -2
  893. package/dist/esm/encryption/EncryptionKey/DataEncryptionKey.js.map +1 -1
  894. package/dist/esm/encryption/EncryptionKey/ProtectedDataEncryptionKey.d.ts +0 -1
  895. package/dist/esm/encryption/EncryptionKey/ProtectedDataEncryptionKey.d.ts.map +1 -1
  896. package/dist/esm/encryption/EncryptionKey/ProtectedDataEncryptionKey.js +2 -0
  897. package/dist/esm/encryption/EncryptionKey/ProtectedDataEncryptionKey.js.map +1 -1
  898. package/dist/esm/encryption/EncryptionKeyResolver/AzureKeyVaultEncryptionKeyResolver.js +6 -5
  899. package/dist/esm/encryption/EncryptionKeyResolver/AzureKeyVaultEncryptionKeyResolver.js.map +1 -1
  900. package/dist/esm/encryption/EncryptionKeyStoreProvider.js +8 -1
  901. package/dist/esm/encryption/EncryptionKeyStoreProvider.js.map +1 -1
  902. package/dist/esm/encryption/EncryptionManager.js +6 -0
  903. package/dist/esm/encryption/EncryptionManager.js.map +1 -1
  904. package/dist/esm/encryption/EncryptionProcessor.js +5 -0
  905. package/dist/esm/encryption/EncryptionProcessor.js.map +1 -1
  906. package/dist/esm/encryption/EncryptionQueryBuilder.js +2 -0
  907. package/dist/esm/encryption/EncryptionQueryBuilder.js.map +1 -1
  908. package/dist/esm/encryption/EncryptionSettingForProperty.js +6 -0
  909. package/dist/esm/encryption/EncryptionSettingForProperty.js.map +1 -1
  910. package/dist/esm/encryption/EncryptionSettings.js +6 -3
  911. package/dist/esm/encryption/EncryptionSettings.js.map +1 -1
  912. package/dist/esm/encryption/KeyEncryptionKey.js +4 -0
  913. package/dist/esm/encryption/KeyEncryptionKey.js.map +1 -1
  914. package/dist/esm/encryption/Serializers/StringSerializer.js +1 -1
  915. package/dist/esm/encryption/Serializers/StringSerializer.js.map +1 -1
  916. package/dist/esm/extractPartitionKey.js +2 -2
  917. package/dist/esm/extractPartitionKey.js.map +1 -1
  918. package/dist/esm/globalEndpointManager.d.ts +8 -0
  919. package/dist/esm/globalEndpointManager.d.ts.map +1 -1
  920. package/dist/esm/globalEndpointManager.js +104 -29
  921. package/dist/esm/globalEndpointManager.js.map +1 -1
  922. package/dist/esm/globalPartitionEndpointManager.d.ts +0 -2
  923. package/dist/esm/globalPartitionEndpointManager.d.ts.map +1 -1
  924. package/dist/esm/globalPartitionEndpointManager.js +19 -7
  925. package/dist/esm/globalPartitionEndpointManager.js.map +1 -1
  926. package/dist/esm/queryExecutionContext/Aggregators/AverageAggregator.js +2 -0
  927. package/dist/esm/queryExecutionContext/Aggregators/AverageAggregator.js.map +1 -1
  928. package/dist/esm/queryExecutionContext/Aggregators/CountAggregator.js +1 -0
  929. package/dist/esm/queryExecutionContext/Aggregators/CountAggregator.js.map +1 -1
  930. package/dist/esm/queryExecutionContext/Aggregators/GlobalStatisticsAggregator.js +1 -0
  931. package/dist/esm/queryExecutionContext/Aggregators/GlobalStatisticsAggregator.js.map +1 -1
  932. package/dist/esm/queryExecutionContext/Aggregators/MakeListAggregator.js +1 -0
  933. package/dist/esm/queryExecutionContext/Aggregators/MakeListAggregator.js.map +1 -1
  934. package/dist/esm/queryExecutionContext/Aggregators/MakeSetAggregator.js +1 -0
  935. package/dist/esm/queryExecutionContext/Aggregators/MakeSetAggregator.js.map +1 -1
  936. package/dist/esm/queryExecutionContext/Aggregators/MaxAggregator.js +2 -0
  937. package/dist/esm/queryExecutionContext/Aggregators/MaxAggregator.js.map +1 -1
  938. package/dist/esm/queryExecutionContext/Aggregators/MinAggregator.js +2 -0
  939. package/dist/esm/queryExecutionContext/Aggregators/MinAggregator.js.map +1 -1
  940. package/dist/esm/queryExecutionContext/Aggregators/StaticValueAggregator.js +1 -0
  941. package/dist/esm/queryExecutionContext/Aggregators/StaticValueAggregator.js.map +1 -1
  942. package/dist/esm/queryExecutionContext/Aggregators/SumAggregator.js +1 -0
  943. package/dist/esm/queryExecutionContext/Aggregators/SumAggregator.js.map +1 -1
  944. package/dist/esm/queryExecutionContext/EndpointComponent/GroupByEndpointComponent.js +5 -3
  945. package/dist/esm/queryExecutionContext/EndpointComponent/GroupByEndpointComponent.js.map +1 -1
  946. package/dist/esm/queryExecutionContext/EndpointComponent/GroupByValueEndpointComponent.js +6 -3
  947. package/dist/esm/queryExecutionContext/EndpointComponent/GroupByValueEndpointComponent.js.map +1 -1
  948. package/dist/esm/queryExecutionContext/EndpointComponent/NonStreamingOrderByDistinctEndpointComponent.js +23 -7
  949. package/dist/esm/queryExecutionContext/EndpointComponent/NonStreamingOrderByDistinctEndpointComponent.js.map +1 -1
  950. package/dist/esm/queryExecutionContext/EndpointComponent/NonStreamingOrderByEndpointComponent.js +14 -6
  951. package/dist/esm/queryExecutionContext/EndpointComponent/NonStreamingOrderByEndpointComponent.js.map +1 -1
  952. package/dist/esm/queryExecutionContext/EndpointComponent/OffsetLimitEndpointComponent.js +3 -0
  953. package/dist/esm/queryExecutionContext/EndpointComponent/OffsetLimitEndpointComponent.js.map +1 -1
  954. package/dist/esm/queryExecutionContext/EndpointComponent/OrderByEndpointComponent.js +2 -0
  955. package/dist/esm/queryExecutionContext/EndpointComponent/OrderByEndpointComponent.js.map +1 -1
  956. package/dist/esm/queryExecutionContext/EndpointComponent/OrderedDistinctEndpointComponent.js +2 -0
  957. package/dist/esm/queryExecutionContext/EndpointComponent/OrderedDistinctEndpointComponent.js.map +1 -1
  958. package/dist/esm/queryExecutionContext/EndpointComponent/UnorderedDistinctEndpointComponent.js +2 -0
  959. package/dist/esm/queryExecutionContext/EndpointComponent/UnorderedDistinctEndpointComponent.js.map +1 -1
  960. package/dist/esm/queryExecutionContext/FetchResult.js +4 -0
  961. package/dist/esm/queryExecutionContext/FetchResult.js.map +1 -1
  962. package/dist/esm/queryExecutionContext/defaultQueryExecutionContext.js +14 -2
  963. package/dist/esm/queryExecutionContext/defaultQueryExecutionContext.js.map +1 -1
  964. package/dist/esm/queryExecutionContext/documentProducer.js +34 -21
  965. package/dist/esm/queryExecutionContext/documentProducer.js.map +1 -1
  966. package/dist/esm/queryExecutionContext/hybridQueryExecutionContext.js +41 -27
  967. package/dist/esm/queryExecutionContext/hybridQueryExecutionContext.js.map +1 -1
  968. package/dist/esm/queryExecutionContext/orderByComparator.js +1 -0
  969. package/dist/esm/queryExecutionContext/orderByComparator.js.map +1 -1
  970. package/dist/esm/queryExecutionContext/orderByDocumentProducerComparator.js +1 -0
  971. package/dist/esm/queryExecutionContext/orderByDocumentProducerComparator.js.map +1 -1
  972. package/dist/esm/queryExecutionContext/orderByQueryExecutionContext.js +1 -0
  973. package/dist/esm/queryExecutionContext/orderByQueryExecutionContext.js.map +1 -1
  974. package/dist/esm/queryExecutionContext/parallelQueryExecutionContextBase.js +20 -2
  975. package/dist/esm/queryExecutionContext/parallelQueryExecutionContextBase.js.map +1 -1
  976. package/dist/esm/queryExecutionContext/pipelinedQueryExecutionContext.js +14 -4
  977. package/dist/esm/queryExecutionContext/pipelinedQueryExecutionContext.js.map +1 -1
  978. package/dist/esm/queryIterator.js +41 -33
  979. package/dist/esm/queryIterator.js.map +1 -1
  980. package/dist/esm/queryMetrics/clientSideMetrics.js +2 -1
  981. package/dist/esm/queryMetrics/clientSideMetrics.js.map +1 -1
  982. package/dist/esm/queryMetrics/queryMetrics.js +14 -1
  983. package/dist/esm/queryMetrics/queryMetrics.js.map +1 -1
  984. package/dist/esm/queryMetrics/queryPreparationTime.js +5 -1
  985. package/dist/esm/queryMetrics/queryPreparationTime.js.map +1 -1
  986. package/dist/esm/queryMetrics/runtimeExecutionTimes.js +4 -1
  987. package/dist/esm/queryMetrics/runtimeExecutionTimes.js.map +1 -1
  988. package/dist/esm/queryMetrics/timeSpan.js +4 -3
  989. package/dist/esm/queryMetrics/timeSpan.js.map +1 -1
  990. package/dist/esm/request/ErrorResponse.js +19 -0
  991. package/dist/esm/request/ErrorResponse.js.map +1 -1
  992. package/dist/esm/request/FeedResponse.js +4 -0
  993. package/dist/esm/request/FeedResponse.js.map +1 -1
  994. package/dist/esm/request/RequestHandler.js +3 -4
  995. package/dist/esm/request/RequestHandler.js.map +1 -1
  996. package/dist/esm/request/ResourceResponse.js +5 -0
  997. package/dist/esm/request/ResourceResponse.js.map +1 -1
  998. package/dist/esm/request/SharedOptions.d.ts +5 -0
  999. package/dist/esm/request/SharedOptions.d.ts.map +1 -1
  1000. package/dist/esm/request/SharedOptions.js.map +1 -1
  1001. package/dist/esm/request/TimeoutError.js +1 -1
  1002. package/dist/esm/request/TimeoutError.js.map +1 -1
  1003. package/dist/esm/request/hybridSearchQueryResult.js +5 -0
  1004. package/dist/esm/request/hybridSearchQueryResult.js.map +1 -1
  1005. package/dist/esm/request/request.js +5 -1
  1006. package/dist/esm/request/request.js.map +1 -1
  1007. package/dist/esm/retry/bulkExecutionRetryPolicy.js +5 -2
  1008. package/dist/esm/retry/bulkExecutionRetryPolicy.js.map +1 -1
  1009. package/dist/esm/retry/defaultRetryPolicy.d.ts.map +1 -1
  1010. package/dist/esm/retry/defaultRetryPolicy.js +7 -7
  1011. package/dist/esm/retry/defaultRetryPolicy.js.map +1 -1
  1012. package/dist/esm/retry/endpointDiscoveryRetryPolicy.d.ts +3 -2
  1013. package/dist/esm/retry/endpointDiscoveryRetryPolicy.d.ts.map +1 -1
  1014. package/dist/esm/retry/endpointDiscoveryRetryPolicy.js +24 -7
  1015. package/dist/esm/retry/endpointDiscoveryRetryPolicy.js.map +1 -1
  1016. package/dist/esm/retry/resourceThrottleRetryPolicy.js +20 -10
  1017. package/dist/esm/retry/resourceThrottleRetryPolicy.js.map +1 -1
  1018. package/dist/esm/retry/retryUtility.d.ts.map +1 -1
  1019. package/dist/esm/retry/retryUtility.js +22 -8
  1020. package/dist/esm/retry/retryUtility.js.map +1 -1
  1021. package/dist/esm/retry/sessionRetryPolicy.js +8 -4
  1022. package/dist/esm/retry/sessionRetryPolicy.js.map +1 -1
  1023. package/dist/esm/retry/timeoutFailoverRetryPolicy.d.ts +1 -2
  1024. package/dist/esm/retry/timeoutFailoverRetryPolicy.d.ts.map +1 -1
  1025. package/dist/esm/retry/timeoutFailoverRetryPolicy.js +17 -7
  1026. package/dist/esm/retry/timeoutFailoverRetryPolicy.js.map +1 -1
  1027. package/dist/esm/routing/QueryRange.js +4 -0
  1028. package/dist/esm/routing/QueryRange.js.map +1 -1
  1029. package/dist/esm/routing/inMemoryCollectionRoutingMap.js +4 -0
  1030. package/dist/esm/routing/inMemoryCollectionRoutingMap.js.map +1 -1
  1031. package/dist/esm/routing/partitionKeyRangeCache.js +2 -0
  1032. package/dist/esm/routing/partitionKeyRangeCache.js.map +1 -1
  1033. package/dist/esm/routing/smartRoutingMapProvider.js +1 -0
  1034. package/dist/esm/routing/smartRoutingMapProvider.js.map +1 -1
  1035. package/dist/esm/session/VectorSessionToken.js +6 -2
  1036. package/dist/esm/session/VectorSessionToken.js.map +1 -1
  1037. package/dist/esm/session/sessionContainer.js +5 -3
  1038. package/dist/esm/session/sessionContainer.js.map +1 -1
  1039. package/dist/esm/utils/batch.js +15 -4
  1040. package/dist/esm/utils/batch.js.map +1 -1
  1041. package/dist/esm/utils/encode.d.ts +1 -1
  1042. package/dist/esm/utils/encode.d.ts.map +1 -1
  1043. package/dist/esm/utils/encode.js.map +1 -1
  1044. package/dist/esm/utils/fixedSizePriorityQueue.js +4 -0
  1045. package/dist/esm/utils/fixedSizePriorityQueue.js.map +1 -1
  1046. package/dist/esm/utils/hashing/hash.js +1 -1
  1047. package/dist/esm/utils/hashing/hash.js.map +1 -1
  1048. package/dist/esm/utils/nonStreamingOrderByMap.js +2 -0
  1049. package/dist/esm/utils/nonStreamingOrderByMap.js.map +1 -1
  1050. package/dist/react-native/ChangeFeedIterator.js +17 -11
  1051. package/dist/react-native/ChangeFeedIterator.js.map +1 -1
  1052. package/dist/react-native/ChangeFeedResponse.js +8 -0
  1053. package/dist/react-native/ChangeFeedResponse.js.map +1 -1
  1054. package/dist/react-native/ClientContext.d.ts.map +1 -1
  1055. package/dist/react-native/ClientContext.js +232 -48
  1056. package/dist/react-native/ClientContext.js.map +1 -1
  1057. package/dist/react-native/CosmosClient.d.ts +13 -0
  1058. package/dist/react-native/CosmosClient.d.ts.map +1 -1
  1059. package/dist/react-native/CosmosClient.js +53 -6
  1060. package/dist/react-native/CosmosClient.js.map +1 -1
  1061. package/dist/react-native/CosmosClientOptions.d.ts.map +1 -1
  1062. package/dist/react-native/CosmosClientOptions.js.map +1 -1
  1063. package/dist/react-native/CosmosDiagnostics.d.ts +4 -0
  1064. package/dist/react-native/CosmosDiagnostics.d.ts.map +1 -1
  1065. package/dist/react-native/CosmosDiagnostics.js +3 -0
  1066. package/dist/react-native/CosmosDiagnostics.js.map +1 -1
  1067. package/dist/react-native/GlobalEndpointManagerOptions.d.ts +2 -0
  1068. package/dist/react-native/GlobalEndpointManagerOptions.d.ts.map +1 -0
  1069. package/dist/react-native/GlobalEndpointManagerOptions.js +2 -0
  1070. package/dist/react-native/GlobalEndpointManagerOptions.js.map +1 -0
  1071. package/dist/react-native/PartitionKeyRangeFailoverInfo.js +8 -5
  1072. package/dist/react-native/PartitionKeyRangeFailoverInfo.js.map +1 -1
  1073. package/dist/react-native/bulk/Batcher.js +13 -3
  1074. package/dist/react-native/bulk/Batcher.js.map +1 -1
  1075. package/dist/react-native/bulk/BulkHelper.js +26 -11
  1076. package/dist/react-native/bulk/BulkHelper.js.map +1 -1
  1077. package/dist/react-native/bulk/BulkResponse.js +22 -20
  1078. package/dist/react-native/bulk/BulkResponse.js.map +1 -1
  1079. package/dist/react-native/bulk/CongestionAlgorithm.js +11 -4
  1080. package/dist/react-native/bulk/CongestionAlgorithm.js.map +1 -1
  1081. package/dist/react-native/bulk/HelperPerPartition.js +14 -1
  1082. package/dist/react-native/bulk/HelperPerPartition.js.map +1 -1
  1083. package/dist/react-native/bulk/ItemOperationContext.js +4 -0
  1084. package/dist/react-native/bulk/ItemOperationContext.js.map +1 -1
  1085. package/dist/react-native/bulk/Limiter.js +27 -18
  1086. package/dist/react-native/bulk/Limiter.js.map +1 -1
  1087. package/dist/react-native/bulk/PartitionMetric.js +4 -0
  1088. package/dist/react-native/bulk/PartitionMetric.js.map +1 -1
  1089. package/dist/react-native/client/ChangeFeed/ChangeFeedForEpkRange.d.ts.map +1 -1
  1090. package/dist/react-native/client/ChangeFeed/ChangeFeedForEpkRange.js +29 -15
  1091. package/dist/react-native/client/ChangeFeed/ChangeFeedForEpkRange.js.map +1 -1
  1092. package/dist/react-native/client/ChangeFeed/ChangeFeedForPartitionKey.d.ts.map +1 -1
  1093. package/dist/react-native/client/ChangeFeed/ChangeFeedForPartitionKey.js +19 -8
  1094. package/dist/react-native/client/ChangeFeed/ChangeFeedForPartitionKey.js.map +1 -1
  1095. package/dist/react-native/client/ChangeFeed/ChangeFeedIteratorBuilder.js +12 -9
  1096. package/dist/react-native/client/ChangeFeed/ChangeFeedIteratorBuilder.js.map +1 -1
  1097. package/dist/react-native/client/ChangeFeed/ChangeFeedIteratorOptions.d.ts +5 -0
  1098. package/dist/react-native/client/ChangeFeed/ChangeFeedIteratorOptions.d.ts.map +1 -1
  1099. package/dist/react-native/client/ChangeFeed/ChangeFeedIteratorOptions.js.map +1 -1
  1100. package/dist/react-native/client/ChangeFeed/ChangeFeedIteratorResponse.js +9 -0
  1101. package/dist/react-native/client/ChangeFeed/ChangeFeedIteratorResponse.js.map +1 -1
  1102. package/dist/react-native/client/ChangeFeed/ChangeFeedPolicy.js +1 -0
  1103. package/dist/react-native/client/ChangeFeed/ChangeFeedPolicy.js.map +1 -1
  1104. package/dist/react-native/client/ChangeFeed/ChangeFeedRange.js +20 -0
  1105. package/dist/react-native/client/ChangeFeed/ChangeFeedRange.js.map +1 -1
  1106. package/dist/react-native/client/ChangeFeed/ChangeFeedRetentionTimeSpan.js +1 -0
  1107. package/dist/react-native/client/ChangeFeed/ChangeFeedRetentionTimeSpan.js.map +1 -1
  1108. package/dist/react-native/client/ChangeFeed/ChangeFeedStartFromBeginning.js +1 -0
  1109. package/dist/react-native/client/ChangeFeed/ChangeFeedStartFromBeginning.js.map +1 -1
  1110. package/dist/react-native/client/ChangeFeed/ChangeFeedStartFromContinuation.js +1 -0
  1111. package/dist/react-native/client/ChangeFeed/ChangeFeedStartFromContinuation.js.map +1 -1
  1112. package/dist/react-native/client/ChangeFeed/ChangeFeedStartFromNow.js +1 -0
  1113. package/dist/react-native/client/ChangeFeed/ChangeFeedStartFromNow.js.map +1 -1
  1114. package/dist/react-native/client/ChangeFeed/ChangeFeedStartFromTime.js +2 -0
  1115. package/dist/react-native/client/ChangeFeed/ChangeFeedStartFromTime.js.map +1 -1
  1116. package/dist/react-native/client/ChangeFeed/CompositeContinuationToken.js +8 -0
  1117. package/dist/react-native/client/ChangeFeed/CompositeContinuationToken.js.map +1 -1
  1118. package/dist/react-native/client/ChangeFeed/ContinuationTokenForPartitionKey.js +12 -0
  1119. package/dist/react-native/client/ChangeFeed/ContinuationTokenForPartitionKey.js.map +1 -1
  1120. package/dist/react-native/client/ChangeFeed/FeedRange.js +8 -0
  1121. package/dist/react-native/client/ChangeFeed/FeedRange.js.map +1 -1
  1122. package/dist/react-native/client/ChangeFeed/FeedRangeQueue.js +1 -0
  1123. package/dist/react-native/client/ChangeFeed/FeedRangeQueue.js.map +1 -1
  1124. package/dist/react-native/client/ChangeFeed/InternalChangeFeedOptions.d.ts +1 -0
  1125. package/dist/react-native/client/ChangeFeed/InternalChangeFeedOptions.d.ts.map +1 -1
  1126. package/dist/react-native/client/ChangeFeed/InternalChangeFeedOptions.js.map +1 -1
  1127. package/dist/react-native/client/ChangeFeed/changeFeedUtils.d.ts.map +1 -1
  1128. package/dist/react-native/client/ChangeFeed/changeFeedUtils.js +6 -5
  1129. package/dist/react-native/client/ChangeFeed/changeFeedUtils.js.map +1 -1
  1130. package/dist/react-native/client/ClientUtils.js +1 -1
  1131. package/dist/react-native/client/ClientUtils.js.map +1 -1
  1132. package/dist/react-native/client/Conflict/Conflict.js +4 -0
  1133. package/dist/react-native/client/Conflict/Conflict.js.map +1 -1
  1134. package/dist/react-native/client/Conflict/ConflictResponse.js +2 -0
  1135. package/dist/react-native/client/Conflict/ConflictResponse.js.map +1 -1
  1136. package/dist/react-native/client/Conflict/Conflicts.js +2 -0
  1137. package/dist/react-native/client/Conflict/Conflicts.js.map +1 -1
  1138. package/dist/react-native/client/Container/Container.js +18 -3
  1139. package/dist/react-native/client/Container/Container.js.map +1 -1
  1140. package/dist/react-native/client/Container/ContainerResponse.js +2 -0
  1141. package/dist/react-native/client/Container/ContainerResponse.js.map +1 -1
  1142. package/dist/react-native/client/Container/Containers.js +4 -2
  1143. package/dist/react-native/client/Container/Containers.js.map +1 -1
  1144. package/dist/react-native/client/Database/Database.js +33 -0
  1145. package/dist/react-native/client/Database/Database.js.map +1 -1
  1146. package/dist/react-native/client/Database/DatabaseResponse.js +2 -0
  1147. package/dist/react-native/client/Database/DatabaseResponse.js.map +1 -1
  1148. package/dist/react-native/client/Database/Databases.js +3 -0
  1149. package/dist/react-native/client/Database/Databases.js.map +1 -1
  1150. package/dist/react-native/client/Item/Item.js +4 -0
  1151. package/dist/react-native/client/Item/Item.js.map +1 -1
  1152. package/dist/react-native/client/Item/ItemResponse.js +2 -0
  1153. package/dist/react-native/client/Item/ItemResponse.js.map +1 -1
  1154. package/dist/react-native/client/Item/Items.d.ts.map +1 -1
  1155. package/dist/react-native/client/Item/Items.js +8 -0
  1156. package/dist/react-native/client/Item/Items.js.map +1 -1
  1157. package/dist/react-native/client/Offer/Offer.js +3 -0
  1158. package/dist/react-native/client/Offer/Offer.js.map +1 -1
  1159. package/dist/react-native/client/Offer/OfferResponse.js +2 -0
  1160. package/dist/react-native/client/Offer/OfferResponse.js.map +1 -1
  1161. package/dist/react-native/client/Offer/Offers.js +2 -0
  1162. package/dist/react-native/client/Offer/Offers.js.map +1 -1
  1163. package/dist/react-native/client/Permission/Permission.js +3 -0
  1164. package/dist/react-native/client/Permission/Permission.js.map +1 -1
  1165. package/dist/react-native/client/Permission/PermissionResponse.js +2 -0
  1166. package/dist/react-native/client/Permission/PermissionResponse.js.map +1 -1
  1167. package/dist/react-native/client/Permission/Permissions.js +2 -0
  1168. package/dist/react-native/client/Permission/Permissions.js.map +1 -1
  1169. package/dist/react-native/client/SasToken/SasTokenProperties.js +17 -0
  1170. package/dist/react-native/client/SasToken/SasTokenProperties.js.map +1 -1
  1171. package/dist/react-native/client/Script/Scripts.js +5 -0
  1172. package/dist/react-native/client/Script/Scripts.js.map +1 -1
  1173. package/dist/react-native/client/StoredProcedure/StoredProcedure.js +3 -0
  1174. package/dist/react-native/client/StoredProcedure/StoredProcedure.js.map +1 -1
  1175. package/dist/react-native/client/StoredProcedure/StoredProcedureResponse.js +4 -0
  1176. package/dist/react-native/client/StoredProcedure/StoredProcedureResponse.js.map +1 -1
  1177. package/dist/react-native/client/StoredProcedure/StoredProcedures.js +2 -0
  1178. package/dist/react-native/client/StoredProcedure/StoredProcedures.js.map +1 -1
  1179. package/dist/react-native/client/Trigger/Trigger.js +3 -0
  1180. package/dist/react-native/client/Trigger/Trigger.js.map +1 -1
  1181. package/dist/react-native/client/Trigger/TriggerResponse.js +2 -0
  1182. package/dist/react-native/client/Trigger/TriggerResponse.js.map +1 -1
  1183. package/dist/react-native/client/Trigger/Triggers.js +2 -0
  1184. package/dist/react-native/client/Trigger/Triggers.js.map +1 -1
  1185. package/dist/react-native/client/User/User.js +9 -0
  1186. package/dist/react-native/client/User/User.js.map +1 -1
  1187. package/dist/react-native/client/User/UserResponse.js +2 -0
  1188. package/dist/react-native/client/User/UserResponse.js.map +1 -1
  1189. package/dist/react-native/client/User/Users.js +2 -0
  1190. package/dist/react-native/client/User/Users.js.map +1 -1
  1191. package/dist/react-native/client/UserDefinedFunction/UserDefinedFunction.js +3 -0
  1192. package/dist/react-native/client/UserDefinedFunction/UserDefinedFunction.js.map +1 -1
  1193. package/dist/react-native/client/UserDefinedFunction/UserDefinedFunctionResponse.js +2 -0
  1194. package/dist/react-native/client/UserDefinedFunction/UserDefinedFunctionResponse.js.map +1 -1
  1195. package/dist/react-native/client/UserDefinedFunction/UserDefinedFunctions.js +2 -0
  1196. package/dist/react-native/client/UserDefinedFunction/UserDefinedFunctions.js.map +1 -1
  1197. package/dist/react-native/common/constants.d.ts +4 -0
  1198. package/dist/react-native/common/constants.d.ts.map +1 -1
  1199. package/dist/react-native/common/constants.js +5 -1
  1200. package/dist/react-native/common/constants.js.map +1 -1
  1201. package/dist/react-native/common/helper.d.ts +6 -0
  1202. package/dist/react-native/common/helper.d.ts.map +1 -1
  1203. package/dist/react-native/common/helper.js +9 -1
  1204. package/dist/react-native/common/helper.js.map +1 -1
  1205. package/dist/react-native/common/platform.d.ts +1 -0
  1206. package/dist/react-native/common/platform.d.ts.map +1 -1
  1207. package/dist/react-native/common/platform.js +1 -3
  1208. package/dist/react-native/common/platform.js.map +1 -1
  1209. package/dist/react-native/diagnostics/CosmosDiagnosticsContext.js +8 -7
  1210. package/dist/react-native/diagnostics/CosmosDiagnosticsContext.js.map +1 -1
  1211. package/dist/react-native/diagnostics/DiagnosticNodeInternal.d.ts +1 -0
  1212. package/dist/react-native/diagnostics/DiagnosticNodeInternal.d.ts.map +1 -1
  1213. package/dist/react-native/diagnostics/DiagnosticNodeInternal.js +26 -7
  1214. package/dist/react-native/diagnostics/DiagnosticNodeInternal.js.map +1 -1
  1215. package/dist/react-native/diagnostics/DiagnosticWriter.js +1 -3
  1216. package/dist/react-native/diagnostics/DiagnosticWriter.js.map +1 -1
  1217. package/dist/react-native/diagnostics/index.js +2 -2
  1218. package/dist/react-native/diagnostics/index.js.map +1 -1
  1219. package/dist/react-native/documents/ConnectionPolicy.d.ts +10 -4
  1220. package/dist/react-native/documents/ConnectionPolicy.d.ts.map +1 -1
  1221. package/dist/react-native/documents/ConnectionPolicy.js +2 -2
  1222. package/dist/react-native/documents/ConnectionPolicy.js.map +1 -1
  1223. package/dist/react-native/documents/DatabaseAccount.d.ts +4 -0
  1224. package/dist/react-native/documents/DatabaseAccount.d.ts.map +1 -1
  1225. package/dist/react-native/documents/DatabaseAccount.js +29 -4
  1226. package/dist/react-native/documents/DatabaseAccount.js.map +1 -1
  1227. package/dist/react-native/documents/PartitionKey.js +1 -3
  1228. package/dist/react-native/documents/PartitionKey.js.map +1 -1
  1229. package/dist/react-native/encryption/AeadAes256CbcHmacSha256Algorithm/AeadAes256CbcHmacSha256Algorithm.js +8 -2
  1230. package/dist/react-native/encryption/AeadAes256CbcHmacSha256Algorithm/AeadAes256CbcHmacSha256Algorithm.js.map +1 -1
  1231. package/dist/react-native/encryption/Cache/ClientEncryptionKeyPropertiesCache.js +2 -0
  1232. package/dist/react-native/encryption/Cache/ClientEncryptionKeyPropertiesCache.js.map +1 -1
  1233. package/dist/react-native/encryption/Cache/EncryptionSettingsCache.js +2 -0
  1234. package/dist/react-native/encryption/Cache/EncryptionSettingsCache.js.map +1 -1
  1235. package/dist/react-native/encryption/Cache/KeyEncryptionKeyCache.js +2 -0
  1236. package/dist/react-native/encryption/Cache/KeyEncryptionKeyCache.js.map +1 -1
  1237. package/dist/react-native/encryption/Cache/ProtectedDataEncryptionKeyCache.js +5 -0
  1238. package/dist/react-native/encryption/Cache/ProtectedDataEncryptionKeyCache.js.map +1 -1
  1239. package/dist/react-native/encryption/ClientEncryptionKey/ClientEncryptionKeyResponse.js +2 -0
  1240. package/dist/react-native/encryption/ClientEncryptionKey/ClientEncryptionKeyResponse.js.map +1 -1
  1241. package/dist/react-native/encryption/EncryptionItemQueryIterator.js +24 -27
  1242. package/dist/react-native/encryption/EncryptionItemQueryIterator.js.map +1 -1
  1243. package/dist/react-native/encryption/EncryptionKey/DataEncryptionKey.js +7 -2
  1244. package/dist/react-native/encryption/EncryptionKey/DataEncryptionKey.js.map +1 -1
  1245. package/dist/react-native/encryption/EncryptionKey/ProtectedDataEncryptionKey.d.ts +0 -1
  1246. package/dist/react-native/encryption/EncryptionKey/ProtectedDataEncryptionKey.d.ts.map +1 -1
  1247. package/dist/react-native/encryption/EncryptionKey/ProtectedDataEncryptionKey.js +2 -0
  1248. package/dist/react-native/encryption/EncryptionKey/ProtectedDataEncryptionKey.js.map +1 -1
  1249. package/dist/react-native/encryption/EncryptionKeyResolver/AzureKeyVaultEncryptionKeyResolver.js +6 -5
  1250. package/dist/react-native/encryption/EncryptionKeyResolver/AzureKeyVaultEncryptionKeyResolver.js.map +1 -1
  1251. package/dist/react-native/encryption/EncryptionKeyStoreProvider.js +8 -1
  1252. package/dist/react-native/encryption/EncryptionKeyStoreProvider.js.map +1 -1
  1253. package/dist/react-native/encryption/EncryptionManager.js +6 -0
  1254. package/dist/react-native/encryption/EncryptionManager.js.map +1 -1
  1255. package/dist/react-native/encryption/EncryptionProcessor.js +5 -0
  1256. package/dist/react-native/encryption/EncryptionProcessor.js.map +1 -1
  1257. package/dist/react-native/encryption/EncryptionQueryBuilder.js +2 -0
  1258. package/dist/react-native/encryption/EncryptionQueryBuilder.js.map +1 -1
  1259. package/dist/react-native/encryption/EncryptionSettingForProperty.js +6 -0
  1260. package/dist/react-native/encryption/EncryptionSettingForProperty.js.map +1 -1
  1261. package/dist/react-native/encryption/EncryptionSettings.js +6 -3
  1262. package/dist/react-native/encryption/EncryptionSettings.js.map +1 -1
  1263. package/dist/react-native/encryption/KeyEncryptionKey.js +4 -0
  1264. package/dist/react-native/encryption/KeyEncryptionKey.js.map +1 -1
  1265. package/dist/react-native/encryption/Serializers/StringSerializer.js +1 -1
  1266. package/dist/react-native/encryption/Serializers/StringSerializer.js.map +1 -1
  1267. package/dist/react-native/extractPartitionKey.js +2 -2
  1268. package/dist/react-native/extractPartitionKey.js.map +1 -1
  1269. package/dist/react-native/globalEndpointManager.d.ts +8 -0
  1270. package/dist/react-native/globalEndpointManager.d.ts.map +1 -1
  1271. package/dist/react-native/globalEndpointManager.js +104 -29
  1272. package/dist/react-native/globalEndpointManager.js.map +1 -1
  1273. package/dist/react-native/globalPartitionEndpointManager.d.ts +0 -2
  1274. package/dist/react-native/globalPartitionEndpointManager.d.ts.map +1 -1
  1275. package/dist/react-native/globalPartitionEndpointManager.js +19 -7
  1276. package/dist/react-native/globalPartitionEndpointManager.js.map +1 -1
  1277. package/dist/react-native/queryExecutionContext/Aggregators/AverageAggregator.js +2 -0
  1278. package/dist/react-native/queryExecutionContext/Aggregators/AverageAggregator.js.map +1 -1
  1279. package/dist/react-native/queryExecutionContext/Aggregators/CountAggregator.js +1 -0
  1280. package/dist/react-native/queryExecutionContext/Aggregators/CountAggregator.js.map +1 -1
  1281. package/dist/react-native/queryExecutionContext/Aggregators/GlobalStatisticsAggregator.js +1 -0
  1282. package/dist/react-native/queryExecutionContext/Aggregators/GlobalStatisticsAggregator.js.map +1 -1
  1283. package/dist/react-native/queryExecutionContext/Aggregators/MakeListAggregator.js +1 -0
  1284. package/dist/react-native/queryExecutionContext/Aggregators/MakeListAggregator.js.map +1 -1
  1285. package/dist/react-native/queryExecutionContext/Aggregators/MakeSetAggregator.js +1 -0
  1286. package/dist/react-native/queryExecutionContext/Aggregators/MakeSetAggregator.js.map +1 -1
  1287. package/dist/react-native/queryExecutionContext/Aggregators/MaxAggregator.js +2 -0
  1288. package/dist/react-native/queryExecutionContext/Aggregators/MaxAggregator.js.map +1 -1
  1289. package/dist/react-native/queryExecutionContext/Aggregators/MinAggregator.js +2 -0
  1290. package/dist/react-native/queryExecutionContext/Aggregators/MinAggregator.js.map +1 -1
  1291. package/dist/react-native/queryExecutionContext/Aggregators/StaticValueAggregator.js +1 -0
  1292. package/dist/react-native/queryExecutionContext/Aggregators/StaticValueAggregator.js.map +1 -1
  1293. package/dist/react-native/queryExecutionContext/Aggregators/SumAggregator.js +1 -0
  1294. package/dist/react-native/queryExecutionContext/Aggregators/SumAggregator.js.map +1 -1
  1295. package/dist/react-native/queryExecutionContext/EndpointComponent/GroupByEndpointComponent.js +5 -3
  1296. package/dist/react-native/queryExecutionContext/EndpointComponent/GroupByEndpointComponent.js.map +1 -1
  1297. package/dist/react-native/queryExecutionContext/EndpointComponent/GroupByValueEndpointComponent.js +6 -3
  1298. package/dist/react-native/queryExecutionContext/EndpointComponent/GroupByValueEndpointComponent.js.map +1 -1
  1299. package/dist/react-native/queryExecutionContext/EndpointComponent/NonStreamingOrderByDistinctEndpointComponent.js +23 -7
  1300. package/dist/react-native/queryExecutionContext/EndpointComponent/NonStreamingOrderByDistinctEndpointComponent.js.map +1 -1
  1301. package/dist/react-native/queryExecutionContext/EndpointComponent/NonStreamingOrderByEndpointComponent.js +14 -6
  1302. package/dist/react-native/queryExecutionContext/EndpointComponent/NonStreamingOrderByEndpointComponent.js.map +1 -1
  1303. package/dist/react-native/queryExecutionContext/EndpointComponent/OffsetLimitEndpointComponent.js +3 -0
  1304. package/dist/react-native/queryExecutionContext/EndpointComponent/OffsetLimitEndpointComponent.js.map +1 -1
  1305. package/dist/react-native/queryExecutionContext/EndpointComponent/OrderByEndpointComponent.js +2 -0
  1306. package/dist/react-native/queryExecutionContext/EndpointComponent/OrderByEndpointComponent.js.map +1 -1
  1307. package/dist/react-native/queryExecutionContext/EndpointComponent/OrderedDistinctEndpointComponent.js +2 -0
  1308. package/dist/react-native/queryExecutionContext/EndpointComponent/OrderedDistinctEndpointComponent.js.map +1 -1
  1309. package/dist/react-native/queryExecutionContext/EndpointComponent/UnorderedDistinctEndpointComponent.js +2 -0
  1310. package/dist/react-native/queryExecutionContext/EndpointComponent/UnorderedDistinctEndpointComponent.js.map +1 -1
  1311. package/dist/react-native/queryExecutionContext/FetchResult.js +4 -0
  1312. package/dist/react-native/queryExecutionContext/FetchResult.js.map +1 -1
  1313. package/dist/react-native/queryExecutionContext/defaultQueryExecutionContext.js +14 -2
  1314. package/dist/react-native/queryExecutionContext/defaultQueryExecutionContext.js.map +1 -1
  1315. package/dist/react-native/queryExecutionContext/documentProducer.js +34 -21
  1316. package/dist/react-native/queryExecutionContext/documentProducer.js.map +1 -1
  1317. package/dist/react-native/queryExecutionContext/hybridQueryExecutionContext.js +41 -27
  1318. package/dist/react-native/queryExecutionContext/hybridQueryExecutionContext.js.map +1 -1
  1319. package/dist/react-native/queryExecutionContext/orderByComparator.js +1 -0
  1320. package/dist/react-native/queryExecutionContext/orderByComparator.js.map +1 -1
  1321. package/dist/react-native/queryExecutionContext/orderByDocumentProducerComparator.js +1 -0
  1322. package/dist/react-native/queryExecutionContext/orderByDocumentProducerComparator.js.map +1 -1
  1323. package/dist/react-native/queryExecutionContext/orderByQueryExecutionContext.js +1 -0
  1324. package/dist/react-native/queryExecutionContext/orderByQueryExecutionContext.js.map +1 -1
  1325. package/dist/react-native/queryExecutionContext/parallelQueryExecutionContextBase.js +20 -2
  1326. package/dist/react-native/queryExecutionContext/parallelQueryExecutionContextBase.js.map +1 -1
  1327. package/dist/react-native/queryExecutionContext/pipelinedQueryExecutionContext.js +14 -4
  1328. package/dist/react-native/queryExecutionContext/pipelinedQueryExecutionContext.js.map +1 -1
  1329. package/dist/react-native/queryIterator.js +41 -33
  1330. package/dist/react-native/queryIterator.js.map +1 -1
  1331. package/dist/react-native/queryMetrics/clientSideMetrics.js +2 -1
  1332. package/dist/react-native/queryMetrics/clientSideMetrics.js.map +1 -1
  1333. package/dist/react-native/queryMetrics/queryMetrics.js +14 -1
  1334. package/dist/react-native/queryMetrics/queryMetrics.js.map +1 -1
  1335. package/dist/react-native/queryMetrics/queryPreparationTime.js +5 -1
  1336. package/dist/react-native/queryMetrics/queryPreparationTime.js.map +1 -1
  1337. package/dist/react-native/queryMetrics/runtimeExecutionTimes.js +4 -1
  1338. package/dist/react-native/queryMetrics/runtimeExecutionTimes.js.map +1 -1
  1339. package/dist/react-native/queryMetrics/timeSpan.js +4 -3
  1340. package/dist/react-native/queryMetrics/timeSpan.js.map +1 -1
  1341. package/dist/react-native/request/ErrorResponse.js +19 -0
  1342. package/dist/react-native/request/ErrorResponse.js.map +1 -1
  1343. package/dist/react-native/request/FeedResponse.js +4 -0
  1344. package/dist/react-native/request/FeedResponse.js.map +1 -1
  1345. package/dist/react-native/request/RequestHandler.js +3 -4
  1346. package/dist/react-native/request/RequestHandler.js.map +1 -1
  1347. package/dist/react-native/request/ResourceResponse.js +5 -0
  1348. package/dist/react-native/request/ResourceResponse.js.map +1 -1
  1349. package/dist/react-native/request/SharedOptions.d.ts +5 -0
  1350. package/dist/react-native/request/SharedOptions.d.ts.map +1 -1
  1351. package/dist/react-native/request/SharedOptions.js.map +1 -1
  1352. package/dist/react-native/request/TimeoutError.js +1 -1
  1353. package/dist/react-native/request/TimeoutError.js.map +1 -1
  1354. package/dist/react-native/request/hybridSearchQueryResult.js +5 -0
  1355. package/dist/react-native/request/hybridSearchQueryResult.js.map +1 -1
  1356. package/dist/react-native/request/request.js +5 -1
  1357. package/dist/react-native/request/request.js.map +1 -1
  1358. package/dist/react-native/retry/bulkExecutionRetryPolicy.js +5 -2
  1359. package/dist/react-native/retry/bulkExecutionRetryPolicy.js.map +1 -1
  1360. package/dist/react-native/retry/defaultRetryPolicy.d.ts.map +1 -1
  1361. package/dist/react-native/retry/defaultRetryPolicy.js +7 -7
  1362. package/dist/react-native/retry/defaultRetryPolicy.js.map +1 -1
  1363. package/dist/react-native/retry/endpointDiscoveryRetryPolicy.d.ts +3 -2
  1364. package/dist/react-native/retry/endpointDiscoveryRetryPolicy.d.ts.map +1 -1
  1365. package/dist/react-native/retry/endpointDiscoveryRetryPolicy.js +24 -7
  1366. package/dist/react-native/retry/endpointDiscoveryRetryPolicy.js.map +1 -1
  1367. package/dist/react-native/retry/resourceThrottleRetryPolicy.js +20 -10
  1368. package/dist/react-native/retry/resourceThrottleRetryPolicy.js.map +1 -1
  1369. package/dist/react-native/retry/retryUtility.d.ts.map +1 -1
  1370. package/dist/react-native/retry/retryUtility.js +22 -8
  1371. package/dist/react-native/retry/retryUtility.js.map +1 -1
  1372. package/dist/react-native/retry/sessionRetryPolicy.js +8 -4
  1373. package/dist/react-native/retry/sessionRetryPolicy.js.map +1 -1
  1374. package/dist/react-native/retry/timeoutFailoverRetryPolicy.d.ts +1 -2
  1375. package/dist/react-native/retry/timeoutFailoverRetryPolicy.d.ts.map +1 -1
  1376. package/dist/react-native/retry/timeoutFailoverRetryPolicy.js +17 -7
  1377. package/dist/react-native/retry/timeoutFailoverRetryPolicy.js.map +1 -1
  1378. package/dist/react-native/routing/QueryRange.js +4 -0
  1379. package/dist/react-native/routing/QueryRange.js.map +1 -1
  1380. package/dist/react-native/routing/inMemoryCollectionRoutingMap.js +4 -0
  1381. package/dist/react-native/routing/inMemoryCollectionRoutingMap.js.map +1 -1
  1382. package/dist/react-native/routing/partitionKeyRangeCache.js +2 -0
  1383. package/dist/react-native/routing/partitionKeyRangeCache.js.map +1 -1
  1384. package/dist/react-native/routing/smartRoutingMapProvider.js +1 -0
  1385. package/dist/react-native/routing/smartRoutingMapProvider.js.map +1 -1
  1386. package/dist/react-native/session/VectorSessionToken.js +6 -2
  1387. package/dist/react-native/session/VectorSessionToken.js.map +1 -1
  1388. package/dist/react-native/session/sessionContainer.js +5 -3
  1389. package/dist/react-native/session/sessionContainer.js.map +1 -1
  1390. package/dist/react-native/utils/batch.js +15 -4
  1391. package/dist/react-native/utils/batch.js.map +1 -1
  1392. package/dist/react-native/utils/encode.d.ts +1 -1
  1393. package/dist/react-native/utils/encode.d.ts.map +1 -1
  1394. package/dist/react-native/utils/encode.js.map +1 -1
  1395. package/dist/react-native/utils/fixedSizePriorityQueue.js +4 -0
  1396. package/dist/react-native/utils/fixedSizePriorityQueue.js.map +1 -1
  1397. package/dist/react-native/utils/hashing/hash.js +1 -1
  1398. package/dist/react-native/utils/hashing/hash.js.map +1 -1
  1399. package/dist/react-native/utils/nonStreamingOrderByMap.js +2 -0
  1400. package/dist/react-native/utils/nonStreamingOrderByMap.js.map +1 -1
  1401. package/package.json +33 -33
@@ -1 +1 @@
1
- {"version":3,"file":"platform.js","sourceRoot":"","sources":["../../../src/common/platform.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;AAQlC,oCAeC;AAoBD,gEAgBC;AAxDD,iDAAkE;AAElE;;GAEG;AACH,SAAgB,YAAY,CAC1B,yBAA+C,EAC/C,aAAsB;IAEtB,IAAI,EAAE,GAAG,GAAG,gBAAgB,EAAE,IAAI,wBAAS,CAAC,OAAO,IAAI,wBAAS,CAAC,UAAU,EAAE,CAAC;IAC9E,IAAI,aAAa,EAAE,CAAC;QAClB,EAAE,GAAG,EAAE,GAAG,GAAG,GAAG,aAAa,CAAC;IAChC,CAAC;IACD,IAAI,yBAAyB,EAAE,CAAC;QAC9B,EAAE,GAAG,EAAE,GAAG,0BAA0B,CAAC,yBAAyB,CAAC,CAAC;IAClE,CAAC;IACD,IAAI,yBAAyB,IAAI,yBAAyB,CAAC,eAAe,EAAE,CAAC;QAC3E,EAAE,GAAG,EAAE,GAAG,GAAG,GAAG,yBAAyB,CAAC,eAAe,CAAC;IAC5D,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,iEAAiE;AACjE,SAAS,gBAAgB;IACvB,IAAI,eAAe,GAAG,4BAA4B,CAAC;IAEnD,IAAI,UAAU,CAAC,SAAS,IAAI,UAAU,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC;QAC3D,eAAe,GAAG,UAAU,CAAC,SAAS,CAAC,SAAS,CAAC;IACnD,CAAC;IAED,IAAI,UAAU,CAAC,OAAO,IAAI,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;QACrD,eAAe,GAAG,WAAW,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,IAAI,GAAG,CAAC;IACjG,CAAC;IAED,OAAO,eAAe,CAAC;AACzB,CAAC;AAED;;GAEG;AACH,SAAgB,0BAA0B,CAAC,yBAA8C;IACvF,IAAI,WAAW,GAAG,CAAC,CAAC;IAEpB,IAAI,yBAAyB,CAAC,gBAAgB,EAAE,CAAC;QAC/C,IAAI,yBAAyB,CAAC,gBAAgB,CAAC,4BAA4B,EAAE,CAAC;YAC5E,WAAW,IAAI,oCAAqB,CAAC,6BAA6B,CAAC;QACrE,CAAC;QACD,IACE,yBAAyB,CAAC,gBAAgB,CAAC,4BAA4B;YACvE,yBAAyB,CAAC,gBAAgB,CAAC,kCAAkC,EAC7E,CAAC;YACD,WAAW,IAAI,oCAAqB,CAAC,0BAA0B,CAAC;QAClE,CAAC;IACH,CAAC;IAED,OAAO,WAAW,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;AAChF,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { CosmosClientOptions } from \"../index.js\";\nimport { Constants, UserAgentFeatureFlags } from \"./constants.js\";\n\n/**\n * @hidden\n */\nexport function getUserAgent(\n optionsOrConnectionString?: CosmosClientOptions,\n hostFramework?: string,\n): string {\n let ua = `${userAgentDetails()} ${Constants.SDKName}/${Constants.SDKVersion}`;\n if (hostFramework) {\n ua = ua + \" \" + hostFramework;\n }\n if (optionsOrConnectionString) {\n ua = ua + addFeatureFlagsToUserAgent(optionsOrConnectionString);\n }\n if (optionsOrConnectionString && optionsOrConnectionString.userAgentSuffix) {\n ua = ua + \" \" + optionsOrConnectionString.userAgentSuffix;\n }\n return ua;\n}\n\n// TODO: Standardize across other platforms from @azure/core-util\nfunction userAgentDetails(): string {\n let userAgentDetail = \"<environment undetectable>\";\n\n if (globalThis.navigator && globalThis.navigator.userAgent) {\n userAgentDetail = globalThis.navigator.userAgent;\n }\n\n if (globalThis.process && globalThis.process.version) {\n userAgentDetail = `Node.js/${process.version.slice(1)} (${process.platform}; ${process.arch})`;\n }\n\n return userAgentDetail;\n}\n\n/**\n * @hidden\n */\nexport function addFeatureFlagsToUserAgent(optionsOrConnectionString: CosmosClientOptions): string {\n let featureFlag = 0;\n\n if (optionsOrConnectionString.connectionPolicy) {\n if (optionsOrConnectionString.connectionPolicy.enablePartitionLevelFailover) {\n featureFlag += UserAgentFeatureFlags.PerPartitionAutomaticFailover;\n }\n if (\n optionsOrConnectionString.connectionPolicy.enablePartitionLevelFailover ||\n optionsOrConnectionString.connectionPolicy.enablePartitionLevelCircuitBreaker\n ) {\n featureFlag += UserAgentFeatureFlags.PerPartitionCircuitBreaker;\n }\n }\n\n return featureFlag === 0 ? \"\" : ` F${featureFlag.toString(16).toUpperCase()}`;\n}\n"]}
1
+ {"version":3,"file":"platform.js","sourceRoot":"","sources":["../../../src/common/platform.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;AAQlC,oCAYC;AAqBD,gEAgBC;AAtDD,iDAAkE;AAElE;;GAEG;AACH,SAAgB,YAAY,CAC1B,yBAA+C,EAC/C,aAAsB;IAEtB,IAAI,EAAE,GAAG,GAAG,gBAAgB,EAAE,IAAI,wBAAS,CAAC,OAAO,IAAI,wBAAS,CAAC,UAAU,EAAE,CAAC;IAC9E,IAAI,aAAa,EAAE,CAAC;QAClB,EAAE,GAAG,EAAE,GAAG,GAAG,GAAG,aAAa,CAAC;IAChC,CAAC;IACD,IAAI,yBAAyB,IAAI,yBAAyB,CAAC,eAAe,EAAE,CAAC;QAC3E,EAAE,GAAG,EAAE,GAAG,GAAG,GAAG,yBAAyB,CAAC,eAAe,CAAC;IAC5D,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,iEAAiE;AACjE,SAAS,gBAAgB;IACvB,IAAI,eAAe,GAAG,4BAA4B,CAAC;IAEnD,IAAI,UAAU,CAAC,SAAS,IAAI,UAAU,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC;QAC3D,eAAe,GAAG,UAAU,CAAC,SAAS,CAAC,SAAS,CAAC;IACnD,CAAC;IAED,IAAI,UAAU,CAAC,OAAO,IAAI,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;QACrD,eAAe,GAAG,WAAW,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,IAAI,GAAG,CAAC;IACjG,CAAC;IAED,OAAO,eAAe,CAAC;AACzB,CAAC;AAED;;;GAGG;AACH,SAAgB,0BAA0B,CAAC,yBAA8C;IACvF,IAAI,WAAW,GAAG,CAAC,CAAC;IAEpB,IAAI,yBAAyB,CAAC,gBAAgB,EAAE,CAAC;QAC/C,IAAI,yBAAyB,CAAC,gBAAgB,CAAC,4BAA4B,EAAE,CAAC;YAC5E,WAAW,IAAI,oCAAqB,CAAC,6BAA6B,CAAC;QACrE,CAAC;QACD,IACE,yBAAyB,CAAC,gBAAgB,CAAC,4BAA4B;YACvE,yBAAyB,CAAC,gBAAgB,CAAC,kCAAkC,EAC7E,CAAC;YACD,WAAW,IAAI,oCAAqB,CAAC,0BAA0B,CAAC;QAClE,CAAC;IACH,CAAC;IAED,OAAO,WAAW,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;AAChF,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { CosmosClientOptions } from \"../index.js\";\nimport { Constants, UserAgentFeatureFlags } from \"./constants.js\";\n\n/**\n * @hidden\n */\nexport function getUserAgent(\n optionsOrConnectionString?: CosmosClientOptions,\n hostFramework?: string,\n): string {\n let ua = `${userAgentDetails()} ${Constants.SDKName}/${Constants.SDKVersion}`;\n if (hostFramework) {\n ua = ua + \" \" + hostFramework;\n }\n if (optionsOrConnectionString && optionsOrConnectionString.userAgentSuffix) {\n ua = ua + \" \" + optionsOrConnectionString.userAgentSuffix;\n }\n return ua;\n}\n\n// TODO: Standardize across other platforms from @azure/core-util\nfunction userAgentDetails(): string {\n let userAgentDetail = \"<environment undetectable>\";\n\n if (globalThis.navigator && globalThis.navigator.userAgent) {\n userAgentDetail = globalThis.navigator.userAgent;\n }\n\n if (globalThis.process && globalThis.process.version) {\n userAgentDetail = `Node.js/${process.version.slice(1)} (${process.platform}; ${process.arch})`;\n }\n\n return userAgentDetail;\n}\n\n/**\n * @hidden\n * TODO: This function was getting used to track PPAF. Now by default PPAF is enabled. We need to revisit this function.\n */\nexport function addFeatureFlagsToUserAgent(optionsOrConnectionString: CosmosClientOptions): string {\n let featureFlag = 0;\n\n if (optionsOrConnectionString.connectionPolicy) {\n if (optionsOrConnectionString.connectionPolicy.enablePartitionLevelFailover) {\n featureFlag += UserAgentFeatureFlags.PerPartitionAutomaticFailover;\n }\n if (\n optionsOrConnectionString.connectionPolicy.enablePartitionLevelFailover ||\n optionsOrConnectionString.connectionPolicy.enablePartitionLevelCircuitBreaker\n ) {\n featureFlag += UserAgentFeatureFlags.PerPartitionCircuitBreaker;\n }\n }\n\n return featureFlag === 0 ? \"\" : ` F${featureFlag.toString(16).toUpperCase()}`;\n}\n"]}
@@ -15,11 +15,13 @@ const time_js_1 = require("../utils/time.js");
15
15
  * get final CosmosDiagnostic object.
16
16
  */
17
17
  class CosmosDiagnosticContext {
18
+ requestStartTimeUTCinMs;
19
+ failedAttempts = [];
20
+ metadataLookups = [];
21
+ gatewayStatistics = [];
22
+ locationEndpointsContacted = new Set();
23
+ encryptionDiagnostics;
18
24
  constructor() {
19
- this.failedAttempts = [];
20
- this.metadataLookups = [];
21
- this.gatewayStatistics = [];
22
- this.locationEndpointsContacted = new Set();
23
25
  this.requestStartTimeUTCinMs = (0, time_js_1.getCurrentTimestampInMs)();
24
26
  }
25
27
  recordFailedAttempt(gatewayStatistics, retryAttemptNumber) {
@@ -41,10 +43,9 @@ class CosmosDiagnosticContext {
41
43
  this.gatewayStatistics.push(gatewayStatistics);
42
44
  }
43
45
  recordEncryptionDiagnostics(encryptionDiagnostics) {
44
- var _a, _b;
45
46
  const { encryptContent, decryptContent } = encryptionDiagnostics;
46
- const encryptionDuration = (_a = encryptContent[index_js_1.Constants.Encryption.DiagnosticsDuration]) !== null && _a !== void 0 ? _a : 0;
47
- const decryptionDuration = (_b = decryptContent[index_js_1.Constants.Encryption.DiagnosticsDuration]) !== null && _b !== void 0 ? _b : 0;
47
+ const encryptionDuration = encryptContent[index_js_1.Constants.Encryption.DiagnosticsDuration] ?? 0;
48
+ const decryptionDuration = decryptContent[index_js_1.Constants.Encryption.DiagnosticsDuration] ?? 0;
48
49
  encryptionDiagnostics.processingDurationInMs = encryptionDuration + decryptionDuration;
49
50
  this.encryptionDiagnostics = encryptionDiagnostics;
50
51
  }
@@ -1 +1 @@
1
- {"version":3,"file":"CosmosDiagnosticsContext.js","sourceRoot":"","sources":["../../../src/diagnostics/CosmosDiagnosticsContext.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC,iDAA+C;AAS/C,8CAA2D;AAC3D;;;;;;;;GAQG;AACH,MAAa,uBAAuB;IAQlC;QANQ,mBAAc,GAAqC,EAAE,CAAC;QACtD,oBAAe,GAA+B,EAAE,CAAC;QACjD,sBAAiB,GAAwB,EAAE,CAAC;QAC7C,+BAA0B,GAAgB,IAAI,GAAG,EAAE,CAAC;QAIzD,IAAI,CAAC,uBAAuB,GAAG,IAAA,iCAAuB,GAAE,CAAC;IAC3D,CAAC;IAEM,mBAAmB,CACxB,iBAAoC,EACpC,kBAA0B;QAE1B,MAAM,OAAO,GAAmC;YAC9C,aAAa,EAAE,kBAAkB;YACjC,gBAAgB,EAAE,iBAAiB,CAAC,gBAAgB;YACpD,YAAY,EAAE,iBAAiB,CAAC,YAAY;YAC5C,UAAU,EAAE,iBAAiB,CAAC,UAAU;YACxC,aAAa,EAAE,iBAAiB,CAAC,aAAa;YAC9C,2BAA2B,EAAE,iBAAiB,CAAC,2BAA2B;YAC1E,4BAA4B,EAAE,iBAAiB,CAAC,4BAA4B;YAC5E,UAAU,EAAE,iBAAiB,CAAC,UAAU;YACxC,aAAa,EAAE,iBAAiB,CAAC,aAAa;YAC9C,YAAY,EAAE,iBAAiB,CAAC,YAAY;SAC7C,CAAC;QACF,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACpC,CAAC;IAEM,iBAAiB,CAAC,iBAAoC;QAC3D,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACjD,CAAC;IAEM,2BAA2B,CAAC,qBAA4C;;QAC7E,MAAM,EAAE,cAAc,EAAE,cAAc,EAAE,GAAG,qBAAqB,CAAC;QACjE,MAAM,kBAAkB,GAAG,MAAA,cAAc,CAAC,oBAAS,CAAC,UAAU,CAAC,mBAAmB,CAAC,mCAAI,CAAC,CAAC;QACzF,MAAM,kBAAkB,GAAG,MAAA,cAAc,CAAC,oBAAS,CAAC,UAAU,CAAC,mBAAmB,CAAC,mCAAI,CAAC,CAAC;QAEzF,qBAAqB,CAAC,sBAAsB,GAAG,kBAAkB,GAAG,kBAAkB,CAAC;QACvF,IAAI,CAAC,qBAAqB,GAAG,qBAAqB,CAAC;IACrD,CAAC;IAED;;;OAGG;IACI,gBAAgB,CACrB,gBAAyC,EACzC,YAAgC;QAEhC,qCAAqC;QACrC,gBAAgB,CAAC,0BAA0B,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE,CAC/D,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,QAAQ,CAAC,CAC9C,CAAC;QAEF,qEAAqE;QACrE,gBAAgB,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CACrD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC;YACxB,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,2BAA2B,EAAE,OAAO,CAAC,2BAA2B;YAChE,4BAA4B,EAAE,OAAO,CAAC,4BAA4B;YAClE,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;YAC1C,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,YAAY,EAAE,YAAY;SAC3B,CAAC,CACH,CAAC;IACJ,CAAC;IAED;;OAEG;IACI,oBAAoB,CAAC,gBAAyC;QACnE,qCAAqC;QACrC,gBAAgB,CAAC,0BAA0B,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE,CAC/D,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,QAAQ,CAAC,CAC9C,CAAC;QAEF,uEAAuE;QACvE,gBAAgB,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;QAC9F,6CAA6C;QAC7C,gBAAgB,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;QACxF,gBAAgB,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;QAEtF,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAChC,IAAI,CAAC,qBAAqB,GAAG,gBAAgB,CAAC,qBAAqB,CAAC;QACtE,CAAC;aAAM,IAAI,gBAAgB,CAAC,qBAAqB,EAAE,CAAC;YAClD,IAAI,CAAC,qBAAqB,CAAC,cAAc;gBACvC,gBAAgB,CAAC,qBAAqB,CAAC,cAAc,CAAC;YACxD,IAAI,CAAC,qBAAqB,CAAC,sBAAsB;gBAC/C,CAAC,IAAI,CAAC,qBAAqB,CAAC,sBAAsB,IAAI,CAAC,CAAC;oBACxD,CAAC,gBAAgB,CAAC,qBAAqB,CAAC,sBAAsB,IAAI,CAAC,CAAC,CAAC;QACzE,CAAC;IACH,CAAC;IAEM,kBAAkB,CACvB,iBAAyB,IAAA,iCAAuB,GAAE;QAElD,OAAO;YACL,uBAAuB,EAAE,IAAI,CAAC,uBAAuB;YACrD,mBAAmB,EAAE,cAAc,GAAG,IAAI,CAAC,uBAAuB;YAClE,gCAAgC,EAAE,IAAI,CAAC,4BAA4B,EAAE;YACrE,iCAAiC,EAAE,IAAI,CAAC,6BAA6B,EAAE;YACvE,0BAA0B,EAAE,CAAC,GAAG,IAAI,CAAC,0BAA0B,CAAC,MAAM,EAAE,CAAC;YACzE,mBAAmB,EAAE;gBACnB,eAAe,EAAE,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC;aAC3C;YACD,gBAAgB,EAAE;gBAChB,cAAc,EAAE,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC;aACzC;YACD,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;YACzC,qBAAqB,EAAE,IAAI,CAAC,qBAAqB;SAClD,CAAC;IACJ,CAAC;IAEM,4BAA4B;QACjC,IAAI,yBAAyB,GAAG,CAAC,CAAC;QAClC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAC5B,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,yBAAyB,IAAI,GAAG,CAAC,2BAA2B,CAAC,CACxE,CAAC;QACF,IAAI,CAAC,eAAe,CAAC,OAAO,CAC1B,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,yBAAyB,IAAI,GAAG,CAAC,2BAA2B,CAAC,CACxE,CAAC;QACF,IAAI,CAAC,cAAc,CAAC,OAAO,CACzB,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,yBAAyB,IAAI,GAAG,CAAC,2BAA2B,CAAC,CACxE,CAAC;QACF,OAAO,yBAAyB,CAAC;IACnC,CAAC;IAEM,6BAA6B;QAClC,IAAI,0BAA0B,GAAG,CAAC,CAAC;QACnC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAC5B,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,0BAA0B,IAAI,GAAG,CAAC,4BAA4B,CAAC,CAC1E,CAAC;QACF,IAAI,CAAC,eAAe,CAAC,OAAO,CAC1B,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,0BAA0B,IAAI,GAAG,CAAC,4BAA4B,CAAC,CAC1E,CAAC;QACF,IAAI,CAAC,cAAc,CAAC,OAAO,CACzB,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,0BAA0B,IAAI,GAAG,CAAC,4BAA4B,CAAC,CAC1E,CAAC;QACF,OAAO,0BAA0B,CAAC;IACpC,CAAC;IAEM,wBAAwB,CAAC,QAAgB;QAC9C,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAChD,CAAC;CACF;AArJD,0DAqJC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { Constants } from \"../common/index.js\";\nimport type {\n ClientSideRequestStatistics,\n EncryptionDiagnostics,\n FailedRequestAttemptDiagnostic,\n GatewayStatistics,\n MetadataLookUpDiagnostic,\n MetadataLookUpType,\n} from \"../CosmosDiagnostics.js\";\nimport { getCurrentTimestampInMs } from \"../utils/time.js\";\n/**\n * @hidden\n * Internal class to hold CosmosDiagnostic aggregate information all through the lifecycle of a request.\n * This object gathers diagnostic information throughout Client operation which may span across multiple\n * Server call, retries etc.\n * Functions - recordFailedAttempt, recordMetaDataQuery, recordEndpointContactEvent are used to ingest\n * data into the context. At the end of operation, getDiagnostics() is used to\n * get final CosmosDiagnostic object.\n */\nexport class CosmosDiagnosticContext {\n private requestStartTimeUTCinMs: number;\n private failedAttempts: FailedRequestAttemptDiagnostic[] = [];\n private metadataLookups: MetadataLookUpDiagnostic[] = [];\n private gatewayStatistics: GatewayStatistics[] = [];\n public locationEndpointsContacted: Set<string> = new Set();\n encryptionDiagnostics: EncryptionDiagnostics;\n\n public constructor() {\n this.requestStartTimeUTCinMs = getCurrentTimestampInMs();\n }\n\n public recordFailedAttempt(\n gatewayStatistics: GatewayStatistics,\n retryAttemptNumber: number,\n ): void {\n const attempt: FailedRequestAttemptDiagnostic = {\n attemptNumber: retryAttemptNumber,\n startTimeUTCInMs: gatewayStatistics.startTimeUTCInMs,\n durationInMs: gatewayStatistics.durationInMs,\n statusCode: gatewayStatistics.statusCode,\n substatusCode: gatewayStatistics.subStatusCode,\n requestPayloadLengthInBytes: gatewayStatistics.requestPayloadLengthInBytes,\n responsePayloadLengthInBytes: gatewayStatistics.responsePayloadLengthInBytes,\n activityId: gatewayStatistics.activityId,\n operationType: gatewayStatistics.operationType,\n resourceType: gatewayStatistics.resourceType,\n };\n this.failedAttempts.push(attempt);\n }\n\n public recordNetworkCall(gatewayStatistics: GatewayStatistics): void {\n this.gatewayStatistics.push(gatewayStatistics);\n }\n\n public recordEncryptionDiagnostics(encryptionDiagnostics: EncryptionDiagnostics): void {\n const { encryptContent, decryptContent } = encryptionDiagnostics;\n const encryptionDuration = encryptContent[Constants.Encryption.DiagnosticsDuration] ?? 0;\n const decryptionDuration = decryptContent[Constants.Encryption.DiagnosticsDuration] ?? 0;\n\n encryptionDiagnostics.processingDurationInMs = encryptionDuration + decryptionDuration;\n this.encryptionDiagnostics = encryptionDiagnostics;\n }\n\n /**\n * Merge given DiagnosticContext to current node's DiagnosticContext, Treating GatewayRequests of\n * given DiagnosticContext, as metadata requests.\n */\n public mergeDiagnostics(\n childDiagnostics: CosmosDiagnosticContext,\n metadataType: MetadataLookUpType,\n ): void {\n // Copy Location endpoints contacted.\n childDiagnostics.locationEndpointsContacted.forEach((endpoint) =>\n this.locationEndpointsContacted.add(endpoint),\n );\n\n // Copy child nodes's GatewayStatistics to parent's metadata lookups.\n childDiagnostics.gatewayStatistics.forEach((gateway) =>\n this.metadataLookups.push({\n activityId: gateway.activityId,\n requestPayloadLengthInBytes: gateway.requestPayloadLengthInBytes,\n responsePayloadLengthInBytes: gateway.responsePayloadLengthInBytes,\n startTimeUTCInMs: gateway.startTimeUTCInMs,\n operationType: gateway.operationType,\n resourceType: gateway.resourceType,\n durationInMs: gateway.durationInMs,\n metaDataType: metadataType,\n }),\n );\n }\n\n /**\n * Merge given DiagnosticContext to current node's DiagnosticContext for bulk\n */\n public mergeBulkDiagnostics(childDiagnostics: CosmosDiagnosticContext): void {\n // Copy Location endpoints contacted.\n childDiagnostics.locationEndpointsContacted.forEach((endpoint) =>\n this.locationEndpointsContacted.add(endpoint),\n );\n\n // Copy child nodes's GatewayStatistics to parent's gateway statistics.\n childDiagnostics.gatewayStatistics.forEach((gateway) => this.gatewayStatistics.push(gateway));\n // merge metadata lookups and failed attempts\n childDiagnostics.metadataLookups.forEach((lookup) => this.metadataLookups.push(lookup));\n childDiagnostics.failedAttempts.forEach((lookup) => this.failedAttempts.push(lookup));\n\n if (!this.encryptionDiagnostics) {\n this.encryptionDiagnostics = childDiagnostics.encryptionDiagnostics;\n } else if (childDiagnostics.encryptionDiagnostics) {\n this.encryptionDiagnostics.decryptContent =\n childDiagnostics.encryptionDiagnostics.decryptContent;\n this.encryptionDiagnostics.processingDurationInMs =\n (this.encryptionDiagnostics.processingDurationInMs || 0) +\n (childDiagnostics.encryptionDiagnostics.processingDurationInMs || 0);\n }\n }\n\n public getClientSideStats(\n endTimeUTCInMs: number = getCurrentTimestampInMs(),\n ): ClientSideRequestStatistics {\n return {\n requestStartTimeUTCInMs: this.requestStartTimeUTCinMs,\n requestDurationInMs: endTimeUTCInMs - this.requestStartTimeUTCinMs,\n totalRequestPayloadLengthInBytes: this.getTotalRequestPayloadLength(),\n totalResponsePayloadLengthInBytes: this.getTotalResponsePayloadLength(),\n locationEndpointsContacted: [...this.locationEndpointsContacted.values()],\n metadataDiagnostics: {\n metadataLookups: [...this.metadataLookups],\n },\n retryDiagnostics: {\n failedAttempts: [...this.failedAttempts],\n },\n gatewayStatistics: this.gatewayStatistics,\n encryptionDiagnostics: this.encryptionDiagnostics,\n };\n }\n\n public getTotalRequestPayloadLength(): number {\n let totalRequestPayloadLength = 0;\n this.gatewayStatistics.forEach(\n (req) => (totalRequestPayloadLength += req.requestPayloadLengthInBytes),\n );\n this.metadataLookups.forEach(\n (req) => (totalRequestPayloadLength += req.requestPayloadLengthInBytes),\n );\n this.failedAttempts.forEach(\n (req) => (totalRequestPayloadLength += req.requestPayloadLengthInBytes),\n );\n return totalRequestPayloadLength;\n }\n\n public getTotalResponsePayloadLength(): number {\n let totalResponsePayloadLength = 0;\n this.gatewayStatistics.forEach(\n (req) => (totalResponsePayloadLength += req.responsePayloadLengthInBytes),\n );\n this.metadataLookups.forEach(\n (req) => (totalResponsePayloadLength += req.responsePayloadLengthInBytes),\n );\n this.failedAttempts.forEach(\n (req) => (totalResponsePayloadLength += req.responsePayloadLengthInBytes),\n );\n return totalResponsePayloadLength;\n }\n\n public recordEndpointResolution(location: string): void {\n this.locationEndpointsContacted.add(location);\n }\n}\n"]}
1
+ {"version":3,"file":"CosmosDiagnosticsContext.js","sourceRoot":"","sources":["../../../src/diagnostics/CosmosDiagnosticsContext.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { Constants } from \"../common/index.js\";\nimport type {\n ClientSideRequestStatistics,\n EncryptionDiagnostics,\n FailedRequestAttemptDiagnostic,\n GatewayStatistics,\n MetadataLookUpDiagnostic,\n MetadataLookUpType,\n} from \"../CosmosDiagnostics.js\";\nimport { getCurrentTimestampInMs } from \"../utils/time.js\";\n/**\n * @hidden\n * Internal class to hold CosmosDiagnostic aggregate information all through the lifecycle of a request.\n * This object gathers diagnostic information throughout Client operation which may span across multiple\n * Server call, retries etc.\n * Functions - recordFailedAttempt, recordMetaDataQuery, recordEndpointContactEvent are used to ingest\n * data into the context. At the end of operation, getDiagnostics() is used to\n * get final CosmosDiagnostic object.\n */\nexport class CosmosDiagnosticContext {\n private requestStartTimeUTCinMs: number;\n private failedAttempts: FailedRequestAttemptDiagnostic[] = [];\n private metadataLookups: MetadataLookUpDiagnostic[] = [];\n private gatewayStatistics: GatewayStatistics[] = [];\n public locationEndpointsContacted: Set<string> = new Set();\n encryptionDiagnostics: EncryptionDiagnostics;\n\n public constructor() {\n this.requestStartTimeUTCinMs = getCurrentTimestampInMs();\n }\n\n public recordFailedAttempt(\n gatewayStatistics: GatewayStatistics,\n retryAttemptNumber: number,\n ): void {\n const attempt: FailedRequestAttemptDiagnostic = {\n attemptNumber: retryAttemptNumber,\n startTimeUTCInMs: gatewayStatistics.startTimeUTCInMs,\n durationInMs: gatewayStatistics.durationInMs,\n statusCode: gatewayStatistics.statusCode,\n substatusCode: gatewayStatistics.subStatusCode,\n requestPayloadLengthInBytes: gatewayStatistics.requestPayloadLengthInBytes,\n responsePayloadLengthInBytes: gatewayStatistics.responsePayloadLengthInBytes,\n activityId: gatewayStatistics.activityId,\n operationType: gatewayStatistics.operationType,\n resourceType: gatewayStatistics.resourceType,\n };\n this.failedAttempts.push(attempt);\n }\n\n public recordNetworkCall(gatewayStatistics: GatewayStatistics): void {\n this.gatewayStatistics.push(gatewayStatistics);\n }\n\n public recordEncryptionDiagnostics(encryptionDiagnostics: EncryptionDiagnostics): void {\n const { encryptContent, decryptContent } = encryptionDiagnostics;\n const encryptionDuration = encryptContent[Constants.Encryption.DiagnosticsDuration] ?? 0;\n const decryptionDuration = decryptContent[Constants.Encryption.DiagnosticsDuration] ?? 0;\n\n encryptionDiagnostics.processingDurationInMs = encryptionDuration + decryptionDuration;\n this.encryptionDiagnostics = encryptionDiagnostics;\n }\n\n /**\n * Merge given DiagnosticContext to current node's DiagnosticContext, Treating GatewayRequests of\n * given DiagnosticContext, as metadata requests.\n */\n public mergeDiagnostics(\n childDiagnostics: CosmosDiagnosticContext,\n metadataType: MetadataLookUpType,\n ): void {\n // Copy Location endpoints contacted.\n childDiagnostics.locationEndpointsContacted.forEach((endpoint) =>\n this.locationEndpointsContacted.add(endpoint),\n );\n\n // Copy child nodes's GatewayStatistics to parent's metadata lookups.\n childDiagnostics.gatewayStatistics.forEach((gateway) =>\n this.metadataLookups.push({\n activityId: gateway.activityId,\n requestPayloadLengthInBytes: gateway.requestPayloadLengthInBytes,\n responsePayloadLengthInBytes: gateway.responsePayloadLengthInBytes,\n startTimeUTCInMs: gateway.startTimeUTCInMs,\n operationType: gateway.operationType,\n resourceType: gateway.resourceType,\n durationInMs: gateway.durationInMs,\n metaDataType: metadataType,\n }),\n );\n }\n\n /**\n * Merge given DiagnosticContext to current node's DiagnosticContext for bulk\n */\n public mergeBulkDiagnostics(childDiagnostics: CosmosDiagnosticContext): void {\n // Copy Location endpoints contacted.\n childDiagnostics.locationEndpointsContacted.forEach((endpoint) =>\n this.locationEndpointsContacted.add(endpoint),\n );\n\n // Copy child nodes's GatewayStatistics to parent's gateway statistics.\n childDiagnostics.gatewayStatistics.forEach((gateway) => this.gatewayStatistics.push(gateway));\n // merge metadata lookups and failed attempts\n childDiagnostics.metadataLookups.forEach((lookup) => this.metadataLookups.push(lookup));\n childDiagnostics.failedAttempts.forEach((lookup) => this.failedAttempts.push(lookup));\n\n if (!this.encryptionDiagnostics) {\n this.encryptionDiagnostics = childDiagnostics.encryptionDiagnostics;\n } else if (childDiagnostics.encryptionDiagnostics) {\n this.encryptionDiagnostics.decryptContent =\n childDiagnostics.encryptionDiagnostics.decryptContent;\n this.encryptionDiagnostics.processingDurationInMs =\n (this.encryptionDiagnostics.processingDurationInMs || 0) +\n (childDiagnostics.encryptionDiagnostics.processingDurationInMs || 0);\n }\n }\n\n public getClientSideStats(\n endTimeUTCInMs: number = getCurrentTimestampInMs(),\n ): ClientSideRequestStatistics {\n return {\n requestStartTimeUTCInMs: this.requestStartTimeUTCinMs,\n requestDurationInMs: endTimeUTCInMs - this.requestStartTimeUTCinMs,\n totalRequestPayloadLengthInBytes: this.getTotalRequestPayloadLength(),\n totalResponsePayloadLengthInBytes: this.getTotalResponsePayloadLength(),\n locationEndpointsContacted: [...this.locationEndpointsContacted.values()],\n metadataDiagnostics: {\n metadataLookups: [...this.metadataLookups],\n },\n retryDiagnostics: {\n failedAttempts: [...this.failedAttempts],\n },\n gatewayStatistics: this.gatewayStatistics,\n encryptionDiagnostics: this.encryptionDiagnostics,\n };\n }\n\n public getTotalRequestPayloadLength(): number {\n let totalRequestPayloadLength = 0;\n this.gatewayStatistics.forEach(\n (req) => (totalRequestPayloadLength += req.requestPayloadLengthInBytes),\n );\n this.metadataLookups.forEach(\n (req) => (totalRequestPayloadLength += req.requestPayloadLengthInBytes),\n );\n this.failedAttempts.forEach(\n (req) => (totalRequestPayloadLength += req.requestPayloadLengthInBytes),\n );\n return totalRequestPayloadLength;\n }\n\n public getTotalResponsePayloadLength(): number {\n let totalResponsePayloadLength = 0;\n this.gatewayStatistics.forEach(\n (req) => (totalResponsePayloadLength += req.responsePayloadLengthInBytes),\n );\n this.metadataLookups.forEach(\n (req) => (totalResponsePayloadLength += req.responsePayloadLengthInBytes),\n );\n this.failedAttempts.forEach(\n (req) => (totalResponsePayloadLength += req.responsePayloadLengthInBytes),\n );\n return totalResponsePayloadLength;\n }\n\n public recordEndpointResolution(location: string): void {\n this.locationEndpointsContacted.add(location);\n }\n}\n"]}
@@ -55,6 +55,7 @@ export type DiagnosticDataValue = {
55
55
  url: string;
56
56
  }>;
57
57
  partitionKeyRangeFailoverInfo: string;
58
+ excludedLocations: string[];
58
59
  };
59
60
  /**
60
61
  * @hidden
@@ -1 +1 @@
1
- {"version":3,"file":"DiagnosticNodeInternal.d.ts","sourceRoot":"","sources":["../../../src/diagnostics/DiagnosticNodeInternal.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,cAAc,EAEd,kBAAkB,EAEnB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC;AAE/E,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAKtE;;;;;GAKG;AACH,qBAAa,sBAAuB,YAAW,cAAc;IACpD,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,MAAM,EAAE,sBAAsB,CAAC;IAC/B,QAAQ,EAAE,sBAAsB,EAAE,CAAC;IACnC,IAAI,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACnC,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,uBAAuB,CAAC;IAChD,OAAO,CAAC,aAAa,CAA0B;IAC/C,OAAO,CAAC,qBAAqB,CAAwB;CAsVtD;AAED;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,2BAA2B,EAAE,MAAM,CAAC;IACpC,4BAA4B,EAAE,MAAM,CAAC;IACrC,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,OAAO,CAAC;IACvB,aAAa,EAAE,aAAa,CAAC;IAC7B,oBAAoB,EAAE,kBAAkB,CAAC;IACzC,YAAY,EAAE,YAAY,CAAC;IAC3B,cAAc,EAAE,OAAO,CAAC;IACxB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,QAAQ,EAAE,OAAO,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,OAAO,CAAC;QACnB,2BAA2B,EAAE,MAAM,CAAC;QACpC,4BAA4B,EAAE,MAAM,CAAC;QACrC,aAAa,EAAE,aAAa,CAAC;QAC7B,YAAY,EAAE,YAAY,CAAC;QAC3B,OAAO,EAAE,aAAa,CAAC;QACvB,WAAW,EAAE,GAAG,CAAC;QACjB,YAAY,EAAE,GAAG,CAAC;QAClB,GAAG,EAAE,MAAM,CAAC;KACb,CAAC,CAAC;IACH,6BAA6B,EAAE,MAAM,CAAC;CACvC,CAAC;AAEF;;GAEG;AACH,oBAAY,kBAAkB;IAC5B,mBAAmB,wBAAwB,CAAE,gDAAgD;IAC7F,qBAAqB,0BAA0B,CAAE,wCAAwC;IACzF,YAAY,iBAAiB,CAAE,mDAAmD;IAClF,aAAa,kBAAkB,CAAE,mCAAmC;IACpE,mBAAmB,wBAAwB,CAAE,8CAA8C;IAC3F,kBAAkB,uBAAuB,CAAE,6CAA6C;IACxF,iBAAiB,sBAAsB,CAAE,kCAAkC;IAC3E,yBAAyB,8BAA8B,CAAE,wCAAwC;IACjG,gBAAgB,qBAAqB;CACtC"}
1
+ {"version":3,"file":"DiagnosticNodeInternal.d.ts","sourceRoot":"","sources":["../../../src/diagnostics/DiagnosticNodeInternal.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,cAAc,EAEd,kBAAkB,EAEnB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC;AAE/E,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAKtE;;;;;GAKG;AACH,qBAAa,sBAAuB,YAAW,cAAc;IACpD,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,MAAM,EAAE,sBAAsB,CAAC;IAC/B,QAAQ,EAAE,sBAAsB,EAAE,CAAC;IACnC,IAAI,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACnC,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,uBAAuB,CAAC;IAChD,OAAO,CAAC,aAAa,CAA0B;IAC/C,OAAO,CAAC,qBAAqB,CAAwB;CAsVtD;AAED;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,2BAA2B,EAAE,MAAM,CAAC;IACpC,4BAA4B,EAAE,MAAM,CAAC;IACrC,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,OAAO,CAAC;IACvB,aAAa,EAAE,aAAa,CAAC;IAC7B,oBAAoB,EAAE,kBAAkB,CAAC;IACzC,YAAY,EAAE,YAAY,CAAC;IAC3B,cAAc,EAAE,OAAO,CAAC;IACxB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,QAAQ,EAAE,OAAO,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,OAAO,CAAC;QACnB,2BAA2B,EAAE,MAAM,CAAC;QACpC,4BAA4B,EAAE,MAAM,CAAC;QACrC,aAAa,EAAE,aAAa,CAAC;QAC7B,YAAY,EAAE,YAAY,CAAC;QAC3B,OAAO,EAAE,aAAa,CAAC;QACvB,WAAW,EAAE,GAAG,CAAC;QACjB,YAAY,EAAE,GAAG,CAAC;QAClB,GAAG,EAAE,MAAM,CAAC;KACb,CAAC,CAAC;IACH,6BAA6B,EAAE,MAAM,CAAC;IACtC,iBAAiB,EAAE,MAAM,EAAE,CAAC;CAC7B,CAAC;AAEF;;GAEG;AACH,oBAAY,kBAAkB;IAC5B,mBAAmB,wBAAwB,CAAE,gDAAgD;IAC7F,qBAAqB,0BAA0B,CAAE,wCAAwC;IACzF,YAAY,iBAAiB,CAAE,mDAAmD;IAClF,aAAa,kBAAkB,CAAE,mCAAmC;IACpE,mBAAmB,wBAAwB,CAAE,8CAA8C;IAC3F,kBAAkB,uBAAuB,CAAE,6CAA6C;IACxF,iBAAiB,sBAAsB,CAAE,kCAAkC;IAC3E,yBAAyB,8BAA8B,CAAE,wCAAwC;IACjG,gBAAgB,qBAAqB;CACtC"}
@@ -18,6 +18,16 @@ const core_util_1 = require("@azure/core-util");
18
18
  * The functions toDiagnosticNode() & toDiagnostic() are given to convert it to public facing counterpart.
19
19
  */
20
20
  class DiagnosticNodeInternal {
21
+ id;
22
+ nodeType;
23
+ parent;
24
+ children;
25
+ data;
26
+ startTimeUTCInMs;
27
+ durationInMs;
28
+ diagnosticLevel;
29
+ diagnosticCtx;
30
+ encryptionDiagnostics;
21
31
  /**
22
32
  * @internal
23
33
  */
@@ -84,7 +94,13 @@ class DiagnosticNodeInternal {
84
94
  requestPayloadLengthInBytes: gatewayRequest.requestPayloadLengthInBytes,
85
95
  };
86
96
  if ((0, diagnosticLevelComparator_js_1.allowTracing)(CosmosDbDiagnosticLevel_js_1.CosmosDbDiagnosticLevel.debugUnsafe, this.diagnosticLevel)) {
87
- requestData = Object.assign(Object.assign({}, requestData), { headers: this.sanitizeHeaders(requestContext.headers), requestBody: requestContext.body, responseBody: pipelineResponse.bodyAsText, url: url });
97
+ requestData = {
98
+ ...requestData,
99
+ headers: this.sanitizeHeaders(requestContext.headers),
100
+ requestBody: requestContext.body,
101
+ responseBody: pipelineResponse.bodyAsText,
102
+ url: url,
103
+ };
88
104
  }
89
105
  this.addData({
90
106
  requestPayloadLengthInBytes: gatewayRequest.requestPayloadLengthInBytes,
@@ -119,7 +135,12 @@ class DiagnosticNodeInternal {
119
135
  requestPayloadLengthInBytes,
120
136
  };
121
137
  if ((0, diagnosticLevelComparator_js_1.allowTracing)(CosmosDbDiagnosticLevel_js_1.CosmosDbDiagnosticLevel.debugUnsafe, this.diagnosticLevel)) {
122
- requestData = Object.assign(Object.assign({}, requestData), { headers: this.sanitizeHeaders(requestContext.headers), requestBody: requestContext.body, url: (0, index_js_2.prepareURL)(requestContext.endpoint, requestContext.path) });
138
+ requestData = {
139
+ ...requestData,
140
+ headers: this.sanitizeHeaders(requestContext.headers),
141
+ requestBody: requestContext.body,
142
+ url: (0, index_js_2.prepareURL)(requestContext.endpoint, requestContext.path),
143
+ };
123
144
  }
124
145
  this.addData({
125
146
  failedAttempty: true,
@@ -138,7 +159,7 @@ class DiagnosticNodeInternal {
138
159
  */
139
160
  addData(data, msg, level = this.diagnosticLevel) {
140
161
  if (level !== CosmosDbDiagnosticLevel_js_1.CosmosDbDiagnosticLevel.info) {
141
- this.data = Object.assign(Object.assign({}, this.data), data);
162
+ this.data = { ...this.data, ...data };
142
163
  if (msg) {
143
164
  this.addLog(msg);
144
165
  }
@@ -187,9 +208,8 @@ class DiagnosticNodeInternal {
187
208
  * @internal
188
209
  */
189
210
  recordQueryResult(resources, level) {
190
- var _a;
191
211
  if ((0, diagnosticLevelComparator_js_1.allowTracing)(level, this.diagnosticLevel)) {
192
- const previousCount = (_a = this.data.queryRecordsRead) !== null && _a !== void 0 ? _a : 0;
212
+ const previousCount = this.data.queryRecordsRead ?? 0;
193
213
  if (Array.isArray(resources)) {
194
214
  this.data.queryRecordsRead = previousCount + resources.length;
195
215
  }
@@ -295,8 +315,7 @@ var DiagnosticNodeType;
295
315
  DiagnosticNodeType["REQUEST_ATTEMPTS"] = "REQUEST_ATTEMPTS";
296
316
  })(DiagnosticNodeType || (exports.DiagnosticNodeType = DiagnosticNodeType = {}));
297
317
  function calculateResponsePayloadLength(response) {
298
- var _a;
299
- return ((_a = response === null || response === void 0 ? void 0 : response.bodyAsText) === null || _a === void 0 ? void 0 : _a.length) || 0;
318
+ return response?.bodyAsText?.length || 0;
300
319
  }
301
320
  function calculateRequestPayloadLength(requestContext) {
302
321
  return requestContext.body ? requestContext.body.length : 0;
@@ -1 +1 @@
1
- {"version":3,"file":"DiagnosticNodeInternal.js","sourceRoot":"","sources":["../../../src/diagnostics/DiagnosticNodeInternal.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { CosmosDiagnosticContext } from \"./CosmosDiagnosticsContext.js\";\nimport { ErrorResponse, RequestContext } from \"../request/index.js\";\nimport {\n DiagnosticNode,\n EncryptionDiagnostics,\n MetadataLookUpType,\n ClientConfigDiagnostic,\n} from \"../CosmosDiagnostics.js\";\nimport { CosmosDiagnostics, getRootNode } from \"../CosmosDiagnostics.js\";\nimport { getCurrentTimestampInMs } from \"../utils/time.js\";\nimport { CosmosDbDiagnosticLevel } from \"./CosmosDbDiagnosticLevel.js\";\nimport type { CosmosHeaders } from \"../queryExecutionContext/CosmosHeaders.js\";\nimport type { HttpHeaders, PipelineResponse } from \"@azure/core-rest-pipeline\";\nimport type { OperationType, ResourceType } from \"../common/index.js\";\nimport { Constants, prepareURL } from \"../common/index.js\";\nimport { allowTracing } from \"./diagnosticLevelComparator.js\";\nimport { randomUUID } from \"@azure/core-util\";\n\n/**\n * @hidden\n * This is Internal Representation for DiagnosticNode. It contains useful helper functions to collect\n * diagnostic information throughout the lifetime of Diagnostic session.\n * The functions toDiagnosticNode() & toDiagnostic() are given to convert it to public facing counterpart.\n */\nexport class DiagnosticNodeInternal implements DiagnosticNode {\n public id: string;\n public nodeType: DiagnosticNodeType;\n public parent: DiagnosticNodeInternal;\n public children: DiagnosticNodeInternal[];\n public data: Partial<DiagnosticDataValue>;\n public startTimeUTCInMs: number;\n public durationInMs: number;\n public diagnosticLevel: CosmosDbDiagnosticLevel;\n private diagnosticCtx: CosmosDiagnosticContext;\n private encryptionDiagnostics: EncryptionDiagnostics;\n\n /**\n * @internal\n */\n constructor(\n diagnosticLevel: CosmosDbDiagnosticLevel,\n type: DiagnosticNodeType,\n parent: DiagnosticNodeInternal,\n data: Partial<DiagnosticDataValue> = {},\n startTimeUTCInMs: number = getCurrentTimestampInMs(),\n ctx: CosmosDiagnosticContext = new CosmosDiagnosticContext(),\n ) {\n this.id = randomUUID();\n this.nodeType = type;\n this.startTimeUTCInMs = startTimeUTCInMs;\n this.data = data;\n this.children = [];\n this.durationInMs = 0;\n this.parent = parent;\n this.diagnosticCtx = ctx;\n this.diagnosticLevel = diagnosticLevel;\n\n // Initialize EncryptionDiagnostics\n this.encryptionDiagnostics = {\n encryptContent: {},\n decryptContent: {},\n processingDurationInMs: 0,\n };\n }\n\n /**\n * @internal\n */\n private addLog(msg: string): void {\n if (!this.data.log) {\n this.data.log = [];\n }\n this.data.log.push(msg);\n }\n\n /**\n * @internal\n */\n private sanitizeHeaders(headers?: CosmosHeaders | HttpHeaders): CosmosHeaders | HttpHeaders {\n return headers;\n }\n\n /**\n * Updated durationInMs for node, based on endTimeUTCInMs provided.\n * @internal\n */\n public updateTimestamp(endTimeUTCInMs: number = getCurrentTimestampInMs()): void {\n this.durationInMs = endTimeUTCInMs - this.startTimeUTCInMs;\n }\n\n /**\n * @internal\n */\n public recordSuccessfulNetworkCall(\n startTimeUTCInMs: number,\n requestContext: RequestContext,\n pipelineResponse: PipelineResponse,\n substatus: number,\n url: string,\n ): void {\n const responseHeaders = pipelineResponse.headers.toJSON();\n const gatewayRequest = {\n activityId: responseHeaders[Constants.HttpHeaders.ActivityId],\n correlateActivityId: requestContext.headers[Constants.HttpHeaders.CorrelatedActivityId],\n startTimeUTCInMs,\n durationInMs: getCurrentTimestampInMs() - startTimeUTCInMs,\n statusCode: pipelineResponse.status,\n subStatusCode: substatus,\n requestPayloadLengthInBytes: calculateRequestPayloadLength(requestContext),\n responsePayloadLengthInBytes: calculateResponsePayloadLength(pipelineResponse),\n operationType: requestContext.operationType,\n resourceType: requestContext.resourceType,\n partitionKeyRangeId: requestContext.partitionKeyRangeId,\n };\n let requestData: any = {\n OperationType: gatewayRequest.operationType,\n resourceType: gatewayRequest.resourceType,\n requestPayloadLengthInBytes: gatewayRequest.requestPayloadLengthInBytes,\n };\n\n if (allowTracing(CosmosDbDiagnosticLevel.debugUnsafe, this.diagnosticLevel)) {\n requestData = {\n ...requestData,\n headers: this.sanitizeHeaders(requestContext.headers),\n requestBody: requestContext.body,\n responseBody: pipelineResponse.bodyAsText,\n url: url,\n };\n }\n this.addData({\n requestPayloadLengthInBytes: gatewayRequest.requestPayloadLengthInBytes,\n responsePayloadLengthInBytes: gatewayRequest.responsePayloadLengthInBytes,\n startTimeUTCInMs: gatewayRequest.startTimeUTCInMs,\n durationInMs: gatewayRequest.durationInMs,\n requestData,\n });\n this.diagnosticCtx.recordNetworkCall(gatewayRequest);\n }\n\n /**\n * @internal\n */\n public recordFailedNetworkCall(\n startTimeUTCInMs: number,\n requestContext: RequestContext,\n retryAttemptNumber: number,\n statusCode: number,\n substatusCode: number,\n responseHeaders: CosmosHeaders,\n ): void {\n this.addData({ failedAttempty: true });\n const requestPayloadLengthInBytes = calculateRequestPayloadLength(requestContext);\n this.diagnosticCtx.recordFailedAttempt(\n {\n activityId: responseHeaders[Constants.HttpHeaders.ActivityId] as string,\n correlatedActivityId: requestContext.headers[\n Constants.HttpHeaders.CorrelatedActivityId\n ] as string,\n startTimeUTCInMs,\n durationInMs: getCurrentTimestampInMs() - startTimeUTCInMs,\n statusCode,\n subStatusCode: substatusCode,\n requestPayloadLengthInBytes,\n responsePayloadLengthInBytes: 0,\n operationType: requestContext.operationType,\n resourceType: requestContext.resourceType,\n },\n retryAttemptNumber,\n );\n let requestData: any = {\n OperationType: requestContext.operationType,\n resourceType: requestContext.resourceType,\n requestPayloadLengthInBytes,\n };\n if (allowTracing(CosmosDbDiagnosticLevel.debugUnsafe, this.diagnosticLevel)) {\n requestData = {\n ...requestData,\n headers: this.sanitizeHeaders(requestContext.headers),\n requestBody: requestContext.body,\n url: prepareURL(requestContext.endpoint, requestContext.path),\n };\n }\n this.addData({\n failedAttempty: true,\n requestData,\n });\n }\n\n /**\n * @internal\n */\n public recordEndpointResolution(location: string): void {\n this.addData({ selectedLocation: location });\n this.diagnosticCtx.recordEndpointResolution(location);\n }\n\n /**\n * @internal\n */\n public addData(\n data: Partial<DiagnosticDataValue>,\n msg?: string,\n level: CosmosDbDiagnosticLevel = this.diagnosticLevel,\n ): void {\n if (level !== CosmosDbDiagnosticLevel.info) {\n this.data = { ...this.data, ...data };\n if (msg) {\n this.addLog(msg);\n }\n }\n }\n\n /**\n * Merge given DiagnosticNodeInternal's context to current node's DiagnosticContext, Treating GatewayRequests of\n * given DiagnosticContext, as metadata requests. Given DiagnosticNodeInternal becomes a child of this node.\n * @internal\n */\n public addChildNode(\n child: DiagnosticNodeInternal,\n level: CosmosDbDiagnosticLevel,\n metadataType?: MetadataLookUpType,\n ): DiagnosticNodeInternal {\n this.diagnosticCtx.mergeDiagnostics(child.diagnosticCtx, metadataType);\n if (allowTracing(level, this.diagnosticLevel)) {\n child.parent = this;\n this.children.push(child);\n }\n return child;\n }\n\n /**\n * Merge given DiagnosticNodeInternal's context to current node's DiagnosticContext for bulk.\n * Given DiagnosticNodeInternal becomes a child of this node.\n * @internal\n */\n public addBulkChildNode(\n child: DiagnosticNodeInternal,\n level: CosmosDbDiagnosticLevel,\n ): DiagnosticNodeInternal {\n this.diagnosticCtx.mergeBulkDiagnostics(child.diagnosticCtx);\n if (allowTracing(level, this.diagnosticLevel)) {\n child.parent = this;\n this.children.push(child);\n }\n return child;\n }\n\n /**\n * @internal\n */\n public initializeChildNode(\n type: DiagnosticNodeType,\n level: CosmosDbDiagnosticLevel,\n data: Partial<DiagnosticDataValue> = {},\n ): DiagnosticNodeInternal {\n if (allowTracing(level, this.diagnosticLevel)) {\n const child = new DiagnosticNodeInternal(\n this.diagnosticLevel,\n type,\n this,\n data,\n getCurrentTimestampInMs(),\n this.diagnosticCtx,\n );\n this.children.push(child);\n return child;\n } else {\n return this;\n }\n }\n\n /**\n * @internal\n */\n public recordQueryResult(resources: unknown, level: CosmosDbDiagnosticLevel): void {\n if (allowTracing(level, this.diagnosticLevel)) {\n const previousCount = this.data.queryRecordsRead ?? 0;\n if (Array.isArray(resources)) {\n this.data.queryRecordsRead = previousCount + resources.length;\n }\n }\n }\n\n /**\n * @internal\n * record startTime for encryption in an operation\n */\n public beginEncryptionDiagnostics(operation: string): void {\n const startTime = getCurrentTimestampInMs();\n switch (operation) {\n case Constants.Encryption.DiagnosticsEncryptOperation:\n this.encryptionDiagnostics.encryptContent[Constants.Encryption.DiagnosticsStartTime] =\n startTime;\n break;\n case Constants.Encryption.DiagnosticsDecryptOperation:\n this.encryptionDiagnostics.decryptContent[Constants.Encryption.DiagnosticsStartTime] =\n startTime;\n break;\n default:\n throw new ErrorResponse(\"Invalid operation type for encryption diagnostics\");\n }\n }\n /**\n * @internal\n * record duration from startTime and properties count for encryption in an operation\n */\n public endEncryptionDiagnostics(operation: string, propertiesCount?: number): void {\n const endTime = getCurrentTimestampInMs();\n let processingDuration = 0;\n switch (operation) {\n case Constants.Encryption.DiagnosticsEncryptOperation:\n processingDuration =\n endTime -\n this.encryptionDiagnostics.encryptContent[Constants.Encryption.DiagnosticsStartTime];\n this.encryptionDiagnostics.encryptContent[Constants.Encryption.DiagnosticsDuration] =\n processingDuration;\n // will be undefined in case of bulk/batch\n if (propertiesCount !== undefined) {\n this.encryptionDiagnostics.encryptContent[\n Constants.Encryption.DiagnosticsPropertiesEncryptedCount\n ] = propertiesCount;\n }\n break;\n\n case Constants.Encryption.DiagnosticsDecryptOperation:\n processingDuration =\n endTime -\n this.encryptionDiagnostics.decryptContent[Constants.Encryption.DiagnosticsStartTime];\n this.encryptionDiagnostics.decryptContent[Constants.Encryption.DiagnosticsDuration] =\n processingDuration;\n if (propertiesCount !== undefined) {\n this.encryptionDiagnostics.decryptContent[\n Constants.Encryption.DiagnosticsPropertiesDecryptedCount\n ] = propertiesCount;\n }\n break;\n default:\n throw new ErrorResponse(\"Invalid operation type for encryption diagnostics\");\n }\n this.diagnosticCtx.recordEncryptionDiagnostics(this.encryptionDiagnostics);\n }\n\n /**\n * Convert DiagnosticNodeInternal (internal representation) to DiagnosticNode (public, sanitized representation)\n * @internal\n */\n public toDiagnosticNode(): DiagnosticNode {\n return {\n id: this.id,\n nodeType: this.nodeType,\n children: this.children.map((child) => child.toDiagnosticNode()),\n data: this.data,\n startTimeUTCInMs: this.startTimeUTCInMs,\n durationInMs: this.durationInMs,\n };\n }\n\n /**\n * Convert to CosmosDiagnostics\n * @internal\n */\n public toDiagnostic(clientConfigDiagnostic: ClientConfigDiagnostic): CosmosDiagnostics {\n const rootNode = getRootNode(this);\n const diagnostiNode = allowTracing(CosmosDbDiagnosticLevel.debug, this.diagnosticLevel)\n ? rootNode.toDiagnosticNode()\n : undefined;\n const clientConfig = allowTracing(CosmosDbDiagnosticLevel.debug, this.diagnosticLevel)\n ? clientConfigDiagnostic\n : undefined;\n const cosmosDiagnostic = new CosmosDiagnostics(\n this.diagnosticCtx.getClientSideStats(),\n diagnostiNode,\n clientConfig,\n );\n return cosmosDiagnostic;\n }\n}\n\n/**\n * @hidden\n */\nexport type DiagnosticDataValue = {\n selectedLocation: string;\n activityId: string;\n requestAttempNumber: number;\n requestPayloadLengthInBytes: number;\n responsePayloadLengthInBytes: number;\n responseStatus: number;\n readFromCache: boolean;\n operationType: OperationType;\n metadatOperationType: MetadataLookUpType;\n resourceType: ResourceType;\n failedAttempty: boolean;\n successfulRetryPolicy: string;\n partitionKeyRangeId: string;\n stateful: boolean;\n queryRecordsRead: number;\n queryMethodIdentifier: string;\n log: string[];\n failure: boolean;\n startTimeUTCInMs: number;\n durationInMs: number;\n requestData: Partial<{\n requestPayloadLengthInBytes: number;\n responsePayloadLengthInBytes: number;\n operationType: OperationType;\n resourceType: ResourceType;\n headers: CosmosHeaders;\n requestBody: any;\n responseBody: any;\n url: string;\n }>;\n partitionKeyRangeFailoverInfo: string;\n};\n\n/**\n * @hidden\n */\nexport enum DiagnosticNodeType {\n CLIENT_REQUEST_NODE = \"CLIENT_REQUEST_NODE\", // Top most node representing client operations.\n METADATA_REQUEST_NODE = \"METADATA_REQUEST_NODE\", // Node representing a metadata request.\n HTTP_REQUEST = \"HTTP_REQUEST\", // Node representing REST call to backend services.\n BATCH_REQUEST = \"BATCH_REQUEST\", // Node representing batch request.\n PARALLEL_QUERY_NODE = \"PARALLEL_QUERY_NODE\", // Node representing parallel query execution.\n DEFAULT_QUERY_NODE = \"DEFAULT_QUERY_NODE\", // Node representing default query execution.\n QUERY_REPAIR_NODE = \"QUERY_REPAIR_NODE\", // Node representing query repair.\n BACKGROUND_REFRESH_THREAD = \"BACKGROUND_REFRESH_THREAD\", // Node representing background refresh.\n REQUEST_ATTEMPTS = \"REQUEST_ATTEMPTS\", // Node representing request attempts.\n}\n\nfunction calculateResponsePayloadLength(response: PipelineResponse) {\n return response?.bodyAsText?.length || 0;\n}\n\nfunction calculateRequestPayloadLength(requestContext: RequestContext) {\n return requestContext.body ? requestContext.body.length : 0;\n}\n"]}
1
+ {"version":3,"file":"DiagnosticNodeInternal.js","sourceRoot":"","sources":["../../../src/diagnostics/DiagnosticNodeInternal.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC,+EAAwE;AACxE,kDAAoE;AAOpE,kEAAyE;AACzE,8CAA2D;AAC3D,6EAAuE;AAIvE,iDAA2D;AAC3D,iFAA8D;AAC9D,gDAA8C;AAE9C;;;;;GAKG;AACH,MAAa,sBAAsB;IAC1B,EAAE,CAAS;IACX,QAAQ,CAAqB;IAC7B,MAAM,CAAyB;IAC/B,QAAQ,CAA2B;IACnC,IAAI,CAA+B;IACnC,gBAAgB,CAAS;IACzB,YAAY,CAAS;IACrB,eAAe,CAA0B;IACxC,aAAa,CAA0B;IACvC,qBAAqB,CAAwB;IAErD;;OAEG;IACH,YACE,eAAwC,EACxC,IAAwB,EACxB,MAA8B,EAC9B,OAAqC,EAAE,EACvC,mBAA2B,IAAA,iCAAuB,GAAE,EACpD,MAA+B,IAAI,qDAAuB,EAAE;QAE5D,IAAI,CAAC,EAAE,GAAG,IAAA,sBAAU,GAAE,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;QACzC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QACnB,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;QACtB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,aAAa,GAAG,GAAG,CAAC;QACzB,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QAEvC,mCAAmC;QACnC,IAAI,CAAC,qBAAqB,GAAG;YAC3B,cAAc,EAAE,EAAE;YAClB,cAAc,EAAE,EAAE;YAClB,sBAAsB,EAAE,CAAC;SAC1B,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,MAAM,CAAC,GAAW;QACxB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;YACnB,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;QACrB,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IAED;;OAEG;IACK,eAAe,CAAC,OAAqC;QAC3D,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;OAGG;IACI,eAAe,CAAC,iBAAyB,IAAA,iCAAuB,GAAE;QACvE,IAAI,CAAC,YAAY,GAAG,cAAc,GAAG,IAAI,CAAC,gBAAgB,CAAC;IAC7D,CAAC;IAED;;OAEG;IACI,2BAA2B,CAChC,gBAAwB,EACxB,cAA8B,EAC9B,gBAAkC,EAClC,SAAiB,EACjB,GAAW;QAEX,MAAM,eAAe,GAAG,gBAAgB,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QAC1D,MAAM,cAAc,GAAG;YACrB,UAAU,EAAE,eAAe,CAAC,oBAAS,CAAC,WAAW,CAAC,UAAU,CAAC;YAC7D,mBAAmB,EAAE,cAAc,CAAC,OAAO,CAAC,oBAAS,CAAC,WAAW,CAAC,oBAAoB,CAAC;YACvF,gBAAgB;YAChB,YAAY,EAAE,IAAA,iCAAuB,GAAE,GAAG,gBAAgB;YAC1D,UAAU,EAAE,gBAAgB,CAAC,MAAM;YACnC,aAAa,EAAE,SAAS;YACxB,2BAA2B,EAAE,6BAA6B,CAAC,cAAc,CAAC;YAC1E,4BAA4B,EAAE,8BAA8B,CAAC,gBAAgB,CAAC;YAC9E,aAAa,EAAE,cAAc,CAAC,aAAa;YAC3C,YAAY,EAAE,cAAc,CAAC,YAAY;YACzC,mBAAmB,EAAE,cAAc,CAAC,mBAAmB;SACxD,CAAC;QACF,IAAI,WAAW,GAAQ;YACrB,aAAa,EAAE,cAAc,CAAC,aAAa;YAC3C,YAAY,EAAE,cAAc,CAAC,YAAY;YACzC,2BAA2B,EAAE,cAAc,CAAC,2BAA2B;SACxE,CAAC;QAEF,IAAI,IAAA,2CAAY,EAAC,oDAAuB,CAAC,WAAW,EAAE,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;YAC5E,WAAW,GAAG;gBACZ,GAAG,WAAW;gBACd,OAAO,EAAE,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,OAAO,CAAC;gBACrD,WAAW,EAAE,cAAc,CAAC,IAAI;gBAChC,YAAY,EAAE,gBAAgB,CAAC,UAAU;gBACzC,GAAG,EAAE,GAAG;aACT,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,OAAO,CAAC;YACX,2BAA2B,EAAE,cAAc,CAAC,2BAA2B;YACvE,4BAA4B,EAAE,cAAc,CAAC,4BAA4B;YACzE,gBAAgB,EAAE,cAAc,CAAC,gBAAgB;YACjD,YAAY,EAAE,cAAc,CAAC,YAAY;YACzC,WAAW;SACZ,CAAC,CAAC;QACH,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC;IACvD,CAAC;IAED;;OAEG;IACI,uBAAuB,CAC5B,gBAAwB,EACxB,cAA8B,EAC9B,kBAA0B,EAC1B,UAAkB,EAClB,aAAqB,EACrB,eAA8B;QAE9B,IAAI,CAAC,OAAO,CAAC,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC;QACvC,MAAM,2BAA2B,GAAG,6BAA6B,CAAC,cAAc,CAAC,CAAC;QAClF,IAAI,CAAC,aAAa,CAAC,mBAAmB,CACpC;YACE,UAAU,EAAE,eAAe,CAAC,oBAAS,CAAC,WAAW,CAAC,UAAU,CAAW;YACvE,oBAAoB,EAAE,cAAc,CAAC,OAAO,CAC1C,oBAAS,CAAC,WAAW,CAAC,oBAAoB,CACjC;YACX,gBAAgB;YAChB,YAAY,EAAE,IAAA,iCAAuB,GAAE,GAAG,gBAAgB;YAC1D,UAAU;YACV,aAAa,EAAE,aAAa;YAC5B,2BAA2B;YAC3B,4BAA4B,EAAE,CAAC;YAC/B,aAAa,EAAE,cAAc,CAAC,aAAa;YAC3C,YAAY,EAAE,cAAc,CAAC,YAAY;SAC1C,EACD,kBAAkB,CACnB,CAAC;QACF,IAAI,WAAW,GAAQ;YACrB,aAAa,EAAE,cAAc,CAAC,aAAa;YAC3C,YAAY,EAAE,cAAc,CAAC,YAAY;YACzC,2BAA2B;SAC5B,CAAC;QACF,IAAI,IAAA,2CAAY,EAAC,oDAAuB,CAAC,WAAW,EAAE,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;YAC5E,WAAW,GAAG;gBACZ,GAAG,WAAW;gBACd,OAAO,EAAE,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,OAAO,CAAC;gBACrD,WAAW,EAAE,cAAc,CAAC,IAAI;gBAChC,GAAG,EAAE,IAAA,qBAAU,EAAC,cAAc,CAAC,QAAQ,EAAE,cAAc,CAAC,IAAI,CAAC;aAC9D,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,OAAO,CAAC;YACX,cAAc,EAAE,IAAI;YACpB,WAAW;SACZ,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACI,wBAAwB,CAAC,QAAgB;QAC9C,IAAI,CAAC,OAAO,CAAC,EAAE,gBAAgB,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC7C,IAAI,CAAC,aAAa,CAAC,wBAAwB,CAAC,QAAQ,CAAC,CAAC;IACxD,CAAC;IAED;;OAEG;IACI,OAAO,CACZ,IAAkC,EAClC,GAAY,EACZ,QAAiC,IAAI,CAAC,eAAe;QAErD,IAAI,KAAK,KAAK,oDAAuB,CAAC,IAAI,EAAE,CAAC;YAC3C,IAAI,CAAC,IAAI,GAAG,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,EAAE,CAAC;YACtC,IAAI,GAAG,EAAE,CAAC;gBACR,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACnB,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;;OAIG;IACI,YAAY,CACjB,KAA6B,EAC7B,KAA8B,EAC9B,YAAiC;QAEjC,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,KAAK,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;QACvE,IAAI,IAAA,2CAAY,EAAC,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;YAC9C,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC;YACpB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;OAIG;IACI,gBAAgB,CACrB,KAA6B,EAC7B,KAA8B;QAE9B,IAAI,CAAC,aAAa,CAAC,oBAAoB,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAC7D,IAAI,IAAA,2CAAY,EAAC,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;YAC9C,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC;YACpB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACI,mBAAmB,CACxB,IAAwB,EACxB,KAA8B,EAC9B,OAAqC,EAAE;QAEvC,IAAI,IAAA,2CAAY,EAAC,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;YAC9C,MAAM,KAAK,GAAG,IAAI,sBAAsB,CACtC,IAAI,CAAC,eAAe,EACpB,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAA,iCAAuB,GAAE,EACzB,IAAI,CAAC,aAAa,CACnB,CAAC;YACF,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC1B,OAAO,KAAK,CAAC;QACf,CAAC;aAAM,CAAC;YACN,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACI,iBAAiB,CAAC,SAAkB,EAAE,KAA8B;QACzE,IAAI,IAAA,2CAAY,EAAC,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;YAC9C,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,IAAI,CAAC,CAAC;YACtD,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC7B,IAAI,CAAC,IAAI,CAAC,gBAAgB,GAAG,aAAa,GAAG,SAAS,CAAC,MAAM,CAAC;YAChE,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;OAGG;IACI,0BAA0B,CAAC,SAAiB;QACjD,MAAM,SAAS,GAAG,IAAA,iCAAuB,GAAE,CAAC;QAC5C,QAAQ,SAAS,EAAE,CAAC;YAClB,KAAK,oBAAS,CAAC,UAAU,CAAC,2BAA2B;gBACnD,IAAI,CAAC,qBAAqB,CAAC,cAAc,CAAC,oBAAS,CAAC,UAAU,CAAC,oBAAoB,CAAC;oBAClF,SAAS,CAAC;gBACZ,MAAM;YACR,KAAK,oBAAS,CAAC,UAAU,CAAC,2BAA2B;gBACnD,IAAI,CAAC,qBAAqB,CAAC,cAAc,CAAC,oBAAS,CAAC,UAAU,CAAC,oBAAoB,CAAC;oBAClF,SAAS,CAAC;gBACZ,MAAM;YACR;gBACE,MAAM,IAAI,wBAAa,CAAC,mDAAmD,CAAC,CAAC;QACjF,CAAC;IACH,CAAC;IACD;;;OAGG;IACI,wBAAwB,CAAC,SAAiB,EAAE,eAAwB;QACzE,MAAM,OAAO,GAAG,IAAA,iCAAuB,GAAE,CAAC;QAC1C,IAAI,kBAAkB,GAAG,CAAC,CAAC;QAC3B,QAAQ,SAAS,EAAE,CAAC;YAClB,KAAK,oBAAS,CAAC,UAAU,CAAC,2BAA2B;gBACnD,kBAAkB;oBAChB,OAAO;wBACP,IAAI,CAAC,qBAAqB,CAAC,cAAc,CAAC,oBAAS,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAAC;gBACvF,IAAI,CAAC,qBAAqB,CAAC,cAAc,CAAC,oBAAS,CAAC,UAAU,CAAC,mBAAmB,CAAC;oBACjF,kBAAkB,CAAC;gBACrB,0CAA0C;gBAC1C,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;oBAClC,IAAI,CAAC,qBAAqB,CAAC,cAAc,CACvC,oBAAS,CAAC,UAAU,CAAC,mCAAmC,CACzD,GAAG,eAAe,CAAC;gBACtB,CAAC;gBACD,MAAM;YAER,KAAK,oBAAS,CAAC,UAAU,CAAC,2BAA2B;gBACnD,kBAAkB;oBAChB,OAAO;wBACP,IAAI,CAAC,qBAAqB,CAAC,cAAc,CAAC,oBAAS,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAAC;gBACvF,IAAI,CAAC,qBAAqB,CAAC,cAAc,CAAC,oBAAS,CAAC,UAAU,CAAC,mBAAmB,CAAC;oBACjF,kBAAkB,CAAC;gBACrB,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;oBAClC,IAAI,CAAC,qBAAqB,CAAC,cAAc,CACvC,oBAAS,CAAC,UAAU,CAAC,mCAAmC,CACzD,GAAG,eAAe,CAAC;gBACtB,CAAC;gBACD,MAAM;YACR;gBACE,MAAM,IAAI,wBAAa,CAAC,mDAAmD,CAAC,CAAC;QACjF,CAAC;QACD,IAAI,CAAC,aAAa,CAAC,2BAA2B,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;IAC7E,CAAC;IAED;;;OAGG;IACI,gBAAgB;QACrB,OAAO;YACL,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,gBAAgB,EAAE,CAAC;YAChE,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;YACvC,YAAY,EAAE,IAAI,CAAC,YAAY;SAChC,CAAC;IACJ,CAAC;IAED;;;OAGG;IACI,YAAY,CAAC,sBAA8C;QAChE,MAAM,QAAQ,GAAG,IAAA,kCAAW,EAAC,IAAI,CAAC,CAAC;QACnC,MAAM,aAAa,GAAG,IAAA,2CAAY,EAAC,oDAAuB,CAAC,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC;YACrF,CAAC,CAAC,QAAQ,CAAC,gBAAgB,EAAE;YAC7B,CAAC,CAAC,SAAS,CAAC;QACd,MAAM,YAAY,GAAG,IAAA,2CAAY,EAAC,oDAAuB,CAAC,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC;YACpF,CAAC,CAAC,sBAAsB;YACxB,CAAC,CAAC,SAAS,CAAC;QACd,MAAM,gBAAgB,GAAG,IAAI,wCAAiB,CAC5C,IAAI,CAAC,aAAa,CAAC,kBAAkB,EAAE,EACvC,aAAa,EACb,YAAY,CACb,CAAC;QACF,OAAO,gBAAgB,CAAC;IAC1B,CAAC;CACF;AAhWD,wDAgWC;AAwCD;;GAEG;AACH,IAAY,kBAUX;AAVD,WAAY,kBAAkB;IAC5B,iEAA2C,CAAA;IAC3C,qEAA+C,CAAA;IAC/C,mDAA6B,CAAA;IAC7B,qDAA+B,CAAA;IAC/B,iEAA2C,CAAA;IAC3C,+DAAyC,CAAA;IACzC,6DAAuC,CAAA;IACvC,6EAAuD,CAAA;IACvD,2DAAqC,CAAA;AACvC,CAAC,EAVW,kBAAkB,kCAAlB,kBAAkB,QAU7B;AAED,SAAS,8BAA8B,CAAC,QAA0B;IAChE,OAAO,QAAQ,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC,CAAC;AAC3C,CAAC;AAED,SAAS,6BAA6B,CAAC,cAA8B;IACnE,OAAO,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9D,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { CosmosDiagnosticContext } from \"./CosmosDiagnosticsContext.js\";\nimport { ErrorResponse, RequestContext } from \"../request/index.js\";\nimport {\n DiagnosticNode,\n EncryptionDiagnostics,\n MetadataLookUpType,\n ClientConfigDiagnostic,\n} from \"../CosmosDiagnostics.js\";\nimport { CosmosDiagnostics, getRootNode } from \"../CosmosDiagnostics.js\";\nimport { getCurrentTimestampInMs } from \"../utils/time.js\";\nimport { CosmosDbDiagnosticLevel } from \"./CosmosDbDiagnosticLevel.js\";\nimport type { CosmosHeaders } from \"../queryExecutionContext/CosmosHeaders.js\";\nimport type { HttpHeaders, PipelineResponse } from \"@azure/core-rest-pipeline\";\nimport type { OperationType, ResourceType } from \"../common/index.js\";\nimport { Constants, prepareURL } from \"../common/index.js\";\nimport { allowTracing } from \"./diagnosticLevelComparator.js\";\nimport { randomUUID } from \"@azure/core-util\";\n\n/**\n * @hidden\n * This is Internal Representation for DiagnosticNode. It contains useful helper functions to collect\n * diagnostic information throughout the lifetime of Diagnostic session.\n * The functions toDiagnosticNode() & toDiagnostic() are given to convert it to public facing counterpart.\n */\nexport class DiagnosticNodeInternal implements DiagnosticNode {\n public id: string;\n public nodeType: DiagnosticNodeType;\n public parent: DiagnosticNodeInternal;\n public children: DiagnosticNodeInternal[];\n public data: Partial<DiagnosticDataValue>;\n public startTimeUTCInMs: number;\n public durationInMs: number;\n public diagnosticLevel: CosmosDbDiagnosticLevel;\n private diagnosticCtx: CosmosDiagnosticContext;\n private encryptionDiagnostics: EncryptionDiagnostics;\n\n /**\n * @internal\n */\n constructor(\n diagnosticLevel: CosmosDbDiagnosticLevel,\n type: DiagnosticNodeType,\n parent: DiagnosticNodeInternal,\n data: Partial<DiagnosticDataValue> = {},\n startTimeUTCInMs: number = getCurrentTimestampInMs(),\n ctx: CosmosDiagnosticContext = new CosmosDiagnosticContext(),\n ) {\n this.id = randomUUID();\n this.nodeType = type;\n this.startTimeUTCInMs = startTimeUTCInMs;\n this.data = data;\n this.children = [];\n this.durationInMs = 0;\n this.parent = parent;\n this.diagnosticCtx = ctx;\n this.diagnosticLevel = diagnosticLevel;\n\n // Initialize EncryptionDiagnostics\n this.encryptionDiagnostics = {\n encryptContent: {},\n decryptContent: {},\n processingDurationInMs: 0,\n };\n }\n\n /**\n * @internal\n */\n private addLog(msg: string): void {\n if (!this.data.log) {\n this.data.log = [];\n }\n this.data.log.push(msg);\n }\n\n /**\n * @internal\n */\n private sanitizeHeaders(headers?: CosmosHeaders | HttpHeaders): CosmosHeaders | HttpHeaders {\n return headers;\n }\n\n /**\n * Updated durationInMs for node, based on endTimeUTCInMs provided.\n * @internal\n */\n public updateTimestamp(endTimeUTCInMs: number = getCurrentTimestampInMs()): void {\n this.durationInMs = endTimeUTCInMs - this.startTimeUTCInMs;\n }\n\n /**\n * @internal\n */\n public recordSuccessfulNetworkCall(\n startTimeUTCInMs: number,\n requestContext: RequestContext,\n pipelineResponse: PipelineResponse,\n substatus: number,\n url: string,\n ): void {\n const responseHeaders = pipelineResponse.headers.toJSON();\n const gatewayRequest = {\n activityId: responseHeaders[Constants.HttpHeaders.ActivityId],\n correlateActivityId: requestContext.headers[Constants.HttpHeaders.CorrelatedActivityId],\n startTimeUTCInMs,\n durationInMs: getCurrentTimestampInMs() - startTimeUTCInMs,\n statusCode: pipelineResponse.status,\n subStatusCode: substatus,\n requestPayloadLengthInBytes: calculateRequestPayloadLength(requestContext),\n responsePayloadLengthInBytes: calculateResponsePayloadLength(pipelineResponse),\n operationType: requestContext.operationType,\n resourceType: requestContext.resourceType,\n partitionKeyRangeId: requestContext.partitionKeyRangeId,\n };\n let requestData: any = {\n OperationType: gatewayRequest.operationType,\n resourceType: gatewayRequest.resourceType,\n requestPayloadLengthInBytes: gatewayRequest.requestPayloadLengthInBytes,\n };\n\n if (allowTracing(CosmosDbDiagnosticLevel.debugUnsafe, this.diagnosticLevel)) {\n requestData = {\n ...requestData,\n headers: this.sanitizeHeaders(requestContext.headers),\n requestBody: requestContext.body,\n responseBody: pipelineResponse.bodyAsText,\n url: url,\n };\n }\n this.addData({\n requestPayloadLengthInBytes: gatewayRequest.requestPayloadLengthInBytes,\n responsePayloadLengthInBytes: gatewayRequest.responsePayloadLengthInBytes,\n startTimeUTCInMs: gatewayRequest.startTimeUTCInMs,\n durationInMs: gatewayRequest.durationInMs,\n requestData,\n });\n this.diagnosticCtx.recordNetworkCall(gatewayRequest);\n }\n\n /**\n * @internal\n */\n public recordFailedNetworkCall(\n startTimeUTCInMs: number,\n requestContext: RequestContext,\n retryAttemptNumber: number,\n statusCode: number,\n substatusCode: number,\n responseHeaders: CosmosHeaders,\n ): void {\n this.addData({ failedAttempty: true });\n const requestPayloadLengthInBytes = calculateRequestPayloadLength(requestContext);\n this.diagnosticCtx.recordFailedAttempt(\n {\n activityId: responseHeaders[Constants.HttpHeaders.ActivityId] as string,\n correlatedActivityId: requestContext.headers[\n Constants.HttpHeaders.CorrelatedActivityId\n ] as string,\n startTimeUTCInMs,\n durationInMs: getCurrentTimestampInMs() - startTimeUTCInMs,\n statusCode,\n subStatusCode: substatusCode,\n requestPayloadLengthInBytes,\n responsePayloadLengthInBytes: 0,\n operationType: requestContext.operationType,\n resourceType: requestContext.resourceType,\n },\n retryAttemptNumber,\n );\n let requestData: any = {\n OperationType: requestContext.operationType,\n resourceType: requestContext.resourceType,\n requestPayloadLengthInBytes,\n };\n if (allowTracing(CosmosDbDiagnosticLevel.debugUnsafe, this.diagnosticLevel)) {\n requestData = {\n ...requestData,\n headers: this.sanitizeHeaders(requestContext.headers),\n requestBody: requestContext.body,\n url: prepareURL(requestContext.endpoint, requestContext.path),\n };\n }\n this.addData({\n failedAttempty: true,\n requestData,\n });\n }\n\n /**\n * @internal\n */\n public recordEndpointResolution(location: string): void {\n this.addData({ selectedLocation: location });\n this.diagnosticCtx.recordEndpointResolution(location);\n }\n\n /**\n * @internal\n */\n public addData(\n data: Partial<DiagnosticDataValue>,\n msg?: string,\n level: CosmosDbDiagnosticLevel = this.diagnosticLevel,\n ): void {\n if (level !== CosmosDbDiagnosticLevel.info) {\n this.data = { ...this.data, ...data };\n if (msg) {\n this.addLog(msg);\n }\n }\n }\n\n /**\n * Merge given DiagnosticNodeInternal's context to current node's DiagnosticContext, Treating GatewayRequests of\n * given DiagnosticContext, as metadata requests. Given DiagnosticNodeInternal becomes a child of this node.\n * @internal\n */\n public addChildNode(\n child: DiagnosticNodeInternal,\n level: CosmosDbDiagnosticLevel,\n metadataType?: MetadataLookUpType,\n ): DiagnosticNodeInternal {\n this.diagnosticCtx.mergeDiagnostics(child.diagnosticCtx, metadataType);\n if (allowTracing(level, this.diagnosticLevel)) {\n child.parent = this;\n this.children.push(child);\n }\n return child;\n }\n\n /**\n * Merge given DiagnosticNodeInternal's context to current node's DiagnosticContext for bulk.\n * Given DiagnosticNodeInternal becomes a child of this node.\n * @internal\n */\n public addBulkChildNode(\n child: DiagnosticNodeInternal,\n level: CosmosDbDiagnosticLevel,\n ): DiagnosticNodeInternal {\n this.diagnosticCtx.mergeBulkDiagnostics(child.diagnosticCtx);\n if (allowTracing(level, this.diagnosticLevel)) {\n child.parent = this;\n this.children.push(child);\n }\n return child;\n }\n\n /**\n * @internal\n */\n public initializeChildNode(\n type: DiagnosticNodeType,\n level: CosmosDbDiagnosticLevel,\n data: Partial<DiagnosticDataValue> = {},\n ): DiagnosticNodeInternal {\n if (allowTracing(level, this.diagnosticLevel)) {\n const child = new DiagnosticNodeInternal(\n this.diagnosticLevel,\n type,\n this,\n data,\n getCurrentTimestampInMs(),\n this.diagnosticCtx,\n );\n this.children.push(child);\n return child;\n } else {\n return this;\n }\n }\n\n /**\n * @internal\n */\n public recordQueryResult(resources: unknown, level: CosmosDbDiagnosticLevel): void {\n if (allowTracing(level, this.diagnosticLevel)) {\n const previousCount = this.data.queryRecordsRead ?? 0;\n if (Array.isArray(resources)) {\n this.data.queryRecordsRead = previousCount + resources.length;\n }\n }\n }\n\n /**\n * @internal\n * record startTime for encryption in an operation\n */\n public beginEncryptionDiagnostics(operation: string): void {\n const startTime = getCurrentTimestampInMs();\n switch (operation) {\n case Constants.Encryption.DiagnosticsEncryptOperation:\n this.encryptionDiagnostics.encryptContent[Constants.Encryption.DiagnosticsStartTime] =\n startTime;\n break;\n case Constants.Encryption.DiagnosticsDecryptOperation:\n this.encryptionDiagnostics.decryptContent[Constants.Encryption.DiagnosticsStartTime] =\n startTime;\n break;\n default:\n throw new ErrorResponse(\"Invalid operation type for encryption diagnostics\");\n }\n }\n /**\n * @internal\n * record duration from startTime and properties count for encryption in an operation\n */\n public endEncryptionDiagnostics(operation: string, propertiesCount?: number): void {\n const endTime = getCurrentTimestampInMs();\n let processingDuration = 0;\n switch (operation) {\n case Constants.Encryption.DiagnosticsEncryptOperation:\n processingDuration =\n endTime -\n this.encryptionDiagnostics.encryptContent[Constants.Encryption.DiagnosticsStartTime];\n this.encryptionDiagnostics.encryptContent[Constants.Encryption.DiagnosticsDuration] =\n processingDuration;\n // will be undefined in case of bulk/batch\n if (propertiesCount !== undefined) {\n this.encryptionDiagnostics.encryptContent[\n Constants.Encryption.DiagnosticsPropertiesEncryptedCount\n ] = propertiesCount;\n }\n break;\n\n case Constants.Encryption.DiagnosticsDecryptOperation:\n processingDuration =\n endTime -\n this.encryptionDiagnostics.decryptContent[Constants.Encryption.DiagnosticsStartTime];\n this.encryptionDiagnostics.decryptContent[Constants.Encryption.DiagnosticsDuration] =\n processingDuration;\n if (propertiesCount !== undefined) {\n this.encryptionDiagnostics.decryptContent[\n Constants.Encryption.DiagnosticsPropertiesDecryptedCount\n ] = propertiesCount;\n }\n break;\n default:\n throw new ErrorResponse(\"Invalid operation type for encryption diagnostics\");\n }\n this.diagnosticCtx.recordEncryptionDiagnostics(this.encryptionDiagnostics);\n }\n\n /**\n * Convert DiagnosticNodeInternal (internal representation) to DiagnosticNode (public, sanitized representation)\n * @internal\n */\n public toDiagnosticNode(): DiagnosticNode {\n return {\n id: this.id,\n nodeType: this.nodeType,\n children: this.children.map((child) => child.toDiagnosticNode()),\n data: this.data,\n startTimeUTCInMs: this.startTimeUTCInMs,\n durationInMs: this.durationInMs,\n };\n }\n\n /**\n * Convert to CosmosDiagnostics\n * @internal\n */\n public toDiagnostic(clientConfigDiagnostic: ClientConfigDiagnostic): CosmosDiagnostics {\n const rootNode = getRootNode(this);\n const diagnostiNode = allowTracing(CosmosDbDiagnosticLevel.debug, this.diagnosticLevel)\n ? rootNode.toDiagnosticNode()\n : undefined;\n const clientConfig = allowTracing(CosmosDbDiagnosticLevel.debug, this.diagnosticLevel)\n ? clientConfigDiagnostic\n : undefined;\n const cosmosDiagnostic = new CosmosDiagnostics(\n this.diagnosticCtx.getClientSideStats(),\n diagnostiNode,\n clientConfig,\n );\n return cosmosDiagnostic;\n }\n}\n\n/**\n * @hidden\n */\nexport type DiagnosticDataValue = {\n selectedLocation: string;\n activityId: string;\n requestAttempNumber: number;\n requestPayloadLengthInBytes: number;\n responsePayloadLengthInBytes: number;\n responseStatus: number;\n readFromCache: boolean;\n operationType: OperationType;\n metadatOperationType: MetadataLookUpType;\n resourceType: ResourceType;\n failedAttempty: boolean;\n successfulRetryPolicy: string;\n partitionKeyRangeId: string;\n stateful: boolean;\n queryRecordsRead: number;\n queryMethodIdentifier: string;\n log: string[];\n failure: boolean;\n startTimeUTCInMs: number;\n durationInMs: number;\n requestData: Partial<{\n requestPayloadLengthInBytes: number;\n responsePayloadLengthInBytes: number;\n operationType: OperationType;\n resourceType: ResourceType;\n headers: CosmosHeaders;\n requestBody: any;\n responseBody: any;\n url: string;\n }>;\n partitionKeyRangeFailoverInfo: string;\n excludedLocations: string[];\n};\n\n/**\n * @hidden\n */\nexport enum DiagnosticNodeType {\n CLIENT_REQUEST_NODE = \"CLIENT_REQUEST_NODE\", // Top most node representing client operations.\n METADATA_REQUEST_NODE = \"METADATA_REQUEST_NODE\", // Node representing a metadata request.\n HTTP_REQUEST = \"HTTP_REQUEST\", // Node representing REST call to backend services.\n BATCH_REQUEST = \"BATCH_REQUEST\", // Node representing batch request.\n PARALLEL_QUERY_NODE = \"PARALLEL_QUERY_NODE\", // Node representing parallel query execution.\n DEFAULT_QUERY_NODE = \"DEFAULT_QUERY_NODE\", // Node representing default query execution.\n QUERY_REPAIR_NODE = \"QUERY_REPAIR_NODE\", // Node representing query repair.\n BACKGROUND_REFRESH_THREAD = \"BACKGROUND_REFRESH_THREAD\", // Node representing background refresh.\n REQUEST_ATTEMPTS = \"REQUEST_ATTEMPTS\", // Node representing request attempts.\n}\n\nfunction calculateResponsePayloadLength(response: PipelineResponse) {\n return response?.bodyAsText?.length || 0;\n}\n\nfunction calculateRequestPayloadLength(requestContext: RequestContext) {\n return requestContext.body ? requestContext.body.length : 0;\n}\n"]}
@@ -10,9 +10,7 @@ const logger_1 = require("@azure/logger");
10
10
  * @hidden
11
11
  */
12
12
  class LogDiagnosticWriter {
13
- constructor() {
14
- this.logger = (0, logger_1.createClientLogger)("CosmosDBDiagnostics");
15
- }
13
+ logger = (0, logger_1.createClientLogger)("CosmosDBDiagnostics");
16
14
  async write(diagnosticsData) {
17
15
  this.logger.verbose(diagnosticsData);
18
16
  }
@@ -1 +1 @@
1
- {"version":3,"file":"DiagnosticWriter.js","sourceRoot":"","sources":["../../../src/diagnostics/DiagnosticWriter.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAGlC,0CAAmD;AAUnD;;;;GAIG;AACH,MAAa,mBAAmB;IAAhC;QACU,WAAM,GAAgB,IAAA,2BAAkB,EAAC,qBAAqB,CAAC,CAAC;IAI1E,CAAC;IAHQ,KAAK,CAAC,KAAK,CAAC,eAAuB;QACxC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;IACvC,CAAC;CACF;AALD,kDAKC;AAED;;;GAGG;AACH,MAAa,oBAAoB;IACxB,KAAK,CAAC,KAAK,CAAC,gBAAwB;QACzC,QAAQ;IACV,CAAC;CACF;AAJD,oDAIC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { AzureLogger } from \"@azure/logger\";\nimport { createClientLogger } from \"@azure/logger\";\n\n/**\n * Interface for a Diagnostic Writer.\n * @hidden\n */\nexport interface DiagnosticWriter {\n write(message: string): Promise<void>;\n}\n\n/**\n * Implementation of DiagnosticWriter, which uses \\@azure/logger to write\n * diagnostics.\n * @hidden\n */\nexport class LogDiagnosticWriter implements DiagnosticWriter {\n private logger: AzureLogger = createClientLogger(\"CosmosDBDiagnostics\");\n public async write(diagnosticsData: string): Promise<void> {\n this.logger.verbose(diagnosticsData);\n }\n}\n\n/**\n * Implementation of a no-op DiagnosticWriter.\n * @hidden\n */\nexport class NoOpDiagnosticWriter implements DiagnosticWriter {\n public async write(_diagnosticsData: string): Promise<void> {\n // No op\n }\n}\n"]}
1
+ {"version":3,"file":"DiagnosticWriter.js","sourceRoot":"","sources":["../../../src/diagnostics/DiagnosticWriter.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAGlC,0CAAmD;AAUnD;;;;GAIG;AACH,MAAa,mBAAmB;IACtB,MAAM,GAAgB,IAAA,2BAAkB,EAAC,qBAAqB,CAAC,CAAC;IACjE,KAAK,CAAC,KAAK,CAAC,eAAuB;QACxC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;IACvC,CAAC;CACF;AALD,kDAKC;AAED;;;GAGG;AACH,MAAa,oBAAoB;IACxB,KAAK,CAAC,KAAK,CAAC,gBAAwB;QACzC,QAAQ;IACV,CAAC;CACF;AAJD,oDAIC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { AzureLogger } from \"@azure/logger\";\nimport { createClientLogger } from \"@azure/logger\";\n\n/**\n * Interface for a Diagnostic Writer.\n * @hidden\n */\nexport interface DiagnosticWriter {\n write(message: string): Promise<void>;\n}\n\n/**\n * Implementation of DiagnosticWriter, which uses \\@azure/logger to write\n * diagnostics.\n * @hidden\n */\nexport class LogDiagnosticWriter implements DiagnosticWriter {\n private logger: AzureLogger = createClientLogger(\"CosmosDBDiagnostics\");\n public async write(diagnosticsData: string): Promise<void> {\n this.logger.verbose(diagnosticsData);\n }\n}\n\n/**\n * Implementation of a no-op DiagnosticWriter.\n * @hidden\n */\nexport class NoOpDiagnosticWriter implements DiagnosticWriter {\n public async write(_diagnosticsData: string): Promise<void> {\n // No op\n }\n}\n"]}
@@ -38,7 +38,7 @@ function isCosmosDiagnosticLevel(diagnosticLevel) {
38
38
  return acceptableDiagnosticLevelValues.includes(diagnosticLevel);
39
39
  }
40
40
  function determineDiagnosticLevel(diagnosticLevelFromClientConfig, diagnosticLevelFromEnvironment) {
41
- const diagnosticLevelFromEnvOrClient = diagnosticLevelFromEnvironment !== null && diagnosticLevelFromEnvironment !== void 0 ? diagnosticLevelFromEnvironment : diagnosticLevelFromClientConfig; // Diagnostic Setting from environment gets first priority.
42
- return diagnosticLevelFromEnvOrClient !== null && diagnosticLevelFromEnvOrClient !== void 0 ? diagnosticLevelFromEnvOrClient : exports.DefaultDiagnosticLevelValue; // Diagnostic Setting supplied in Client config gets second priority.
41
+ const diagnosticLevelFromEnvOrClient = diagnosticLevelFromEnvironment ?? diagnosticLevelFromClientConfig; // Diagnostic Setting from environment gets first priority.
42
+ return diagnosticLevelFromEnvOrClient ?? exports.DefaultDiagnosticLevelValue; // Diagnostic Setting supplied in Client config gets second priority.
43
43
  }
44
44
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/diagnostics/index.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAiClC,gDASC;AAED,8EAEC;AAQD,4DAOC;;AA3DD,iDAA+C;AAC/C,oDAAuD;AACvD,6EAAuE;AACvE,sDAA8D;AAE9D,gEAAsC;AACtC,mEAAyC;AAE5B,QAAA,2BAA2B,GAAG,oDAAuB,CAAC,IAAI,CAAC;AAExE,MAAM,+BAA+B,GAAG,MAAM,CAAC,MAAM,CAAC,oDAAuB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACvF,CAAC,CAAC,QAAQ,EAAE,CACb,CAAC;AAEF,IAAI,qBAA0D,CAAC;AAE/D,IAAI,IAAA,6BAAgB,EAAC,oCAAsB,CAAC,EAAE,CAAC;IAC7C,iGAAiG;IACjG,IAAI,uBAAuB,CAAC,oCAAsB,CAAC,EAAE,CAAC;QACpD,kBAAkB,CAAC,oCAAiD,CAAC,CAAC;IACxE,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,KAAK,CACX,GACE,oBAAS,CAAC,iCACZ,qCAAqC,oCAAsB,qEAAqE,+BAA+B,CAAC,IAAI,CAClK,IAAI,CACL,GAAG,CACL,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAgB,kBAAkB,CAAC,KAA+B;IAChE,IAAI,KAAK,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,EAAE,CAAC;QAC7C,MAAM,IAAI,KAAK,CACb,6BAA6B,KAAK,yBAAyB,+BAA+B,CAAC,IAAI,CAC7F,GAAG,CACJ,EAAE,CACJ,CAAC;IACJ,CAAC;IACD,qBAAqB,GAAG,KAAK,CAAC;AAChC,CAAC;AAED,SAAgB,iCAAiC;IAC/C,OAAO,qBAAqB,CAAC;AAC/B,CAAC;AAED,SAAS,uBAAuB,CAC9B,eAAuB;IAEvB,OAAO,+BAA+B,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;AACnE,CAAC;AAED,SAAgB,wBAAwB,CACtC,+BAAwD,EACxD,8BAAuD;IAEvD,MAAM,8BAA8B,GAClC,8BAA8B,aAA9B,8BAA8B,cAA9B,8BAA8B,GAAI,+BAA+B,CAAC,CAAC,2DAA2D;IAChI,OAAO,8BAA8B,aAA9B,8BAA8B,cAA9B,8BAA8B,GAAI,mCAA2B,CAAC,CAAC,qEAAqE;AAC7I,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { Constants } from \"../common/index.js\";\nimport { isNonEmptyString } from \"../utils/strings.js\";\nimport { CosmosDbDiagnosticLevel } from \"./CosmosDbDiagnosticLevel.js\";\nimport { diagnosticLevelFromEnv } from \"../utils/envUtils.js\";\n\nexport * from \"./DiagnosticWriter.js\";\nexport * from \"./DiagnosticFormatter.js\";\n\nexport const DefaultDiagnosticLevelValue = CosmosDbDiagnosticLevel.info;\n\nconst acceptableDiagnosticLevelValues = Object.values(CosmosDbDiagnosticLevel).map((x) =>\n x.toString(),\n);\n\nlet cosmosDiagnosticLevel: CosmosDbDiagnosticLevel | undefined;\n\nif (isNonEmptyString(diagnosticLevelFromEnv)) {\n // avoid calling setDiagnosticLevel because we don't want a mis-set environment variable to crash\n if (isCosmosDiagnosticLevel(diagnosticLevelFromEnv)) {\n setDiagnosticLevel(diagnosticLevelFromEnv as CosmosDbDiagnosticLevel);\n } else {\n console.error(\n `${\n Constants.CosmosDbDiagnosticLevelEnvVarName\n } set to unknown diagnostic level '${diagnosticLevelFromEnv}'; Setting Cosmos Db diagnostic level to info. Acceptable values: ${acceptableDiagnosticLevelValues.join(\n \", \",\n )}.`,\n );\n }\n}\n\nexport function setDiagnosticLevel(level?: CosmosDbDiagnosticLevel): void {\n if (level && !isCosmosDiagnosticLevel(level)) {\n throw new Error(\n `Unknown diagnostic level '${level}'. Acceptable values: ${acceptableDiagnosticLevelValues.join(\n \",\",\n )}`,\n );\n }\n cosmosDiagnosticLevel = level;\n}\n\nexport function getDiagnosticLevelFromEnvironment(): CosmosDbDiagnosticLevel | undefined {\n return cosmosDiagnosticLevel;\n}\n\nfunction isCosmosDiagnosticLevel(\n diagnosticLevel: string,\n): diagnosticLevel is CosmosDbDiagnosticLevel {\n return acceptableDiagnosticLevelValues.includes(diagnosticLevel);\n}\n\nexport function determineDiagnosticLevel(\n diagnosticLevelFromClientConfig: CosmosDbDiagnosticLevel,\n diagnosticLevelFromEnvironment: CosmosDbDiagnosticLevel,\n): CosmosDbDiagnosticLevel {\n const diagnosticLevelFromEnvOrClient =\n diagnosticLevelFromEnvironment ?? diagnosticLevelFromClientConfig; // Diagnostic Setting from environment gets first priority.\n return diagnosticLevelFromEnvOrClient ?? DefaultDiagnosticLevelValue; // Diagnostic Setting supplied in Client config gets second priority.\n}\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/diagnostics/index.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAiClC,gDASC;AAED,8EAEC;AAQD,4DAOC;;AA3DD,iDAA+C;AAC/C,oDAAuD;AACvD,6EAAuE;AACvE,sDAA8D;AAE9D,gEAAsC;AACtC,mEAAyC;AAE5B,QAAA,2BAA2B,GAAG,oDAAuB,CAAC,IAAI,CAAC;AAExE,MAAM,+BAA+B,GAAG,MAAM,CAAC,MAAM,CAAC,oDAAuB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACvF,CAAC,CAAC,QAAQ,EAAE,CACb,CAAC;AAEF,IAAI,qBAA0D,CAAC;AAE/D,IAAI,IAAA,6BAAgB,EAAC,oCAAsB,CAAC,EAAE,CAAC;IAC7C,iGAAiG;IACjG,IAAI,uBAAuB,CAAC,oCAAsB,CAAC,EAAE,CAAC;QACpD,kBAAkB,CAAC,oCAAiD,CAAC,CAAC;IACxE,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,KAAK,CACX,GACE,oBAAS,CAAC,iCACZ,qCAAqC,oCAAsB,qEAAqE,+BAA+B,CAAC,IAAI,CAClK,IAAI,CACL,GAAG,CACL,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAgB,kBAAkB,CAAC,KAA+B;IAChE,IAAI,KAAK,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,EAAE,CAAC;QAC7C,MAAM,IAAI,KAAK,CACb,6BAA6B,KAAK,yBAAyB,+BAA+B,CAAC,IAAI,CAC7F,GAAG,CACJ,EAAE,CACJ,CAAC;IACJ,CAAC;IACD,qBAAqB,GAAG,KAAK,CAAC;AAChC,CAAC;AAED,SAAgB,iCAAiC;IAC/C,OAAO,qBAAqB,CAAC;AAC/B,CAAC;AAED,SAAS,uBAAuB,CAC9B,eAAuB;IAEvB,OAAO,+BAA+B,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;AACnE,CAAC;AAED,SAAgB,wBAAwB,CACtC,+BAAwD,EACxD,8BAAuD;IAEvD,MAAM,8BAA8B,GAClC,8BAA8B,IAAI,+BAA+B,CAAC,CAAC,2DAA2D;IAChI,OAAO,8BAA8B,IAAI,mCAA2B,CAAC,CAAC,qEAAqE;AAC7I,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { Constants } from \"../common/index.js\";\nimport { isNonEmptyString } from \"../utils/strings.js\";\nimport { CosmosDbDiagnosticLevel } from \"./CosmosDbDiagnosticLevel.js\";\nimport { diagnosticLevelFromEnv } from \"../utils/envUtils.js\";\n\nexport * from \"./DiagnosticWriter.js\";\nexport * from \"./DiagnosticFormatter.js\";\n\nexport const DefaultDiagnosticLevelValue = CosmosDbDiagnosticLevel.info;\n\nconst acceptableDiagnosticLevelValues = Object.values(CosmosDbDiagnosticLevel).map((x) =>\n x.toString(),\n);\n\nlet cosmosDiagnosticLevel: CosmosDbDiagnosticLevel | undefined;\n\nif (isNonEmptyString(diagnosticLevelFromEnv)) {\n // avoid calling setDiagnosticLevel because we don't want a mis-set environment variable to crash\n if (isCosmosDiagnosticLevel(diagnosticLevelFromEnv)) {\n setDiagnosticLevel(diagnosticLevelFromEnv as CosmosDbDiagnosticLevel);\n } else {\n console.error(\n `${\n Constants.CosmosDbDiagnosticLevelEnvVarName\n } set to unknown diagnostic level '${diagnosticLevelFromEnv}'; Setting Cosmos Db diagnostic level to info. Acceptable values: ${acceptableDiagnosticLevelValues.join(\n \", \",\n )}.`,\n );\n }\n}\n\nexport function setDiagnosticLevel(level?: CosmosDbDiagnosticLevel): void {\n if (level && !isCosmosDiagnosticLevel(level)) {\n throw new Error(\n `Unknown diagnostic level '${level}'. Acceptable values: ${acceptableDiagnosticLevelValues.join(\n \",\",\n )}`,\n );\n }\n cosmosDiagnosticLevel = level;\n}\n\nexport function getDiagnosticLevelFromEnvironment(): CosmosDbDiagnosticLevel | undefined {\n return cosmosDiagnosticLevel;\n}\n\nfunction isCosmosDiagnosticLevel(\n diagnosticLevel: string,\n): diagnosticLevel is CosmosDbDiagnosticLevel {\n return acceptableDiagnosticLevelValues.includes(diagnosticLevel);\n}\n\nexport function determineDiagnosticLevel(\n diagnosticLevelFromClientConfig: CosmosDbDiagnosticLevel,\n diagnosticLevelFromEnvironment: CosmosDbDiagnosticLevel,\n): CosmosDbDiagnosticLevel {\n const diagnosticLevelFromEnvOrClient =\n diagnosticLevelFromEnvironment ?? diagnosticLevelFromClientConfig; // Diagnostic Setting from environment gets first priority.\n return diagnosticLevelFromEnvOrClient ?? DefaultDiagnosticLevelValue; // Diagnostic Setting supplied in Client config gets second priority.\n}\n"]}
@@ -27,11 +27,17 @@ export interface ConnectionPolicy {
27
27
  /** Flag to enable/disable background refreshing of endpoints. Defaults to true.
28
28
  * Endpoint discovery using `enableEndpointsDiscovery` will still work for failed requests. */
29
29
  enableBackgroundEndpointRefreshing?: boolean;
30
- /** Flag to enable/disable the Per Partition Level Failover (PPAF). Defaults to false
31
- * If enablePartitionLevelFailover is set to true, by default enablePartitionLevelCircuitBreaker
32
- * will also be set to true. This is done to improve the read availability and latency.*/
30
+ /**
31
+ * Flag to enable/disable Per Partition Level Failover (PPAF). Defaults to true.
32
+ * Automatically failovers to other available partitions when a partition becomes unavailable.
33
+ * When enabled, enablePartitionLevelCircuitBreaker will also be set to true.
34
+ * Note: Requires enableEndpointDiscovery to be true. Has no effect when endpoint discovery is disabled.
35
+ */
33
36
  enablePartitionLevelFailover?: boolean;
34
- /** Flag to enable/disable the Per Partition Level Circuit Breaker (PPCB). Defaults to false */
37
+ /**
38
+ * Flag to enable/disable Per Partition Level Circuit Breaker (PPCB). Defaults to true.
39
+ * Note: Requires enableEndpointDiscovery to be true. Has no effect when endpoint discovery is disabled.
40
+ */
35
41
  enablePartitionLevelCircuitBreaker?: boolean;
36
42
  }
37
43
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"ConnectionPolicy.d.ts","sourceRoot":"","sources":["../../../src/documents/ConnectionPolicy.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,gGAAgG;IAChG,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,kGAAkG;IAClG,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;OAGG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,iFAAiF;IACjF,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC9B,2FAA2F;IAC3F,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B;;;OAGG;IACH,yBAAyB,CAAC,EAAE,OAAO,CAAC;IACpC,iGAAiG;IACjG,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC;kGAC8F;IAC9F,kCAAkC,CAAC,EAAE,OAAO,CAAC;IAC7C;;6FAEyF;IACzF,4BAA4B,CAAC,EAAE,OAAO,CAAC;IACvC,+FAA+F;IAC/F,kCAAkC,CAAC,EAAE,OAAO,CAAC;CAC9C;AAED;;GAEG;AACH,eAAO,MAAM,uBAAuB,EAAE,gBAepC,CAAC"}
1
+ {"version":3,"file":"ConnectionPolicy.d.ts","sourceRoot":"","sources":["../../../src/documents/ConnectionPolicy.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,gGAAgG;IAChG,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,kGAAkG;IAClG,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;OAGG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,iFAAiF;IACjF,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC9B,2FAA2F;IAC3F,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B;;;OAGG;IACH,yBAAyB,CAAC,EAAE,OAAO,CAAC;IACpC,iGAAiG;IACjG,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC;kGAC8F;IAC9F,kCAAkC,CAAC,EAAE,OAAO,CAAC;IAC7C;;;;;OAKG;IACH,4BAA4B,CAAC,EAAE,OAAO,CAAC;IAEvC;;;OAGG;IACH,kCAAkC,CAAC,EAAE,OAAO,CAAC;CAC9C;AAED;;GAEG;AACH,eAAO,MAAM,uBAAuB,EAAE,gBAepC,CAAC"}
@@ -21,7 +21,7 @@ exports.defaultConnectionPolicy = Object.freeze({
21
21
  useMultipleWriteLocations: true,
22
22
  endpointRefreshRateInMs: 300000,
23
23
  enableBackgroundEndpointRefreshing: true,
24
- enablePartitionLevelFailover: false,
25
- enablePartitionLevelCircuitBreaker: false,
24
+ enablePartitionLevelFailover: true,
25
+ enablePartitionLevelCircuitBreaker: true,
26
26
  });
27
27
  //# sourceMappingURL=ConnectionPolicy.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ConnectionPolicy.js","sourceRoot":"","sources":["../../../src/documents/ConnectionPolicy.ts"],"names":[],"mappings":";;;AAAA,uCAAuC;AACvC,kCAAkC;AAClC,yDAAmD;AAEnD,2DAAqD;AAoCrD;;GAEG;AACU,QAAA,uBAAuB,GAAqB,MAAM,CAAC,MAAM,CAAC;IACrE,cAAc,EAAE,kCAAc,CAAC,OAAO;IACtC,cAAc,EAAE,KAAK;IACrB,uBAAuB,EAAE,IAAI;IAC7B,kBAAkB,EAAE,EAAE;IACtB,YAAY,EAAE;QACZ,oBAAoB,EAAE,wBAAS,CAAC,oCAAoC;QACpE,gCAAgC,EAAE,wBAAS,CAAC,sCAAsC;QAClF,oBAAoB,EAAE,wBAAS,CAAC,oCAAoC;KACrE;IACD,yBAAyB,EAAE,IAAI;IAC/B,uBAAuB,EAAE,MAAM;IAC/B,kCAAkC,EAAE,IAAI;IACxC,4BAA4B,EAAE,KAAK;IACnC,kCAAkC,EAAE,KAAK;CAC1C,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\nimport { Constants } from \"../common/constants.js\";\nimport type { RetryOptions } from \"../retry/retryOptions.js\";\nimport { ConnectionMode } from \"./ConnectionMode.js\";\n/**\n * Represents the Connection policy associated with a CosmosClient in the Azure Cosmos DB database service.\n */\nexport interface ConnectionPolicy {\n /** Determines which mode to connect to Cosmos with. (Currently only supports Gateway option) */\n connectionMode?: ConnectionMode;\n /** Request timeout (time to wait for response from network peer). Represented in milliseconds. */\n requestTimeout?: number;\n /**\n * Flag to enable/disable automatic redirecting of requests based on read/write operations. Default true.\n * Required to call client.dispose() when this is set to true after destroying the CosmosClient inside another process or in the browser.\n */\n enableEndpointDiscovery?: boolean;\n /** List of azure regions to be used as preferred locations for read requests. */\n preferredLocations?: string[];\n /** RetryOptions object which defines several configurable properties used during retry. */\n retryOptions?: RetryOptions;\n /**\n * The flag that enables writes on any locations (regions) for geo-replicated database accounts in the Azure Cosmos DB service.\n * Default is `true`.\n */\n useMultipleWriteLocations?: boolean;\n /** Rate in milliseconds at which the client will refresh the endpoints list in the background */\n endpointRefreshRateInMs?: number;\n /** Flag to enable/disable background refreshing of endpoints. Defaults to true.\n * Endpoint discovery using `enableEndpointsDiscovery` will still work for failed requests. */\n enableBackgroundEndpointRefreshing?: boolean;\n /** Flag to enable/disable the Per Partition Level Failover (PPAF). Defaults to false\n * If enablePartitionLevelFailover is set to true, by default enablePartitionLevelCircuitBreaker\n * will also be set to true. This is done to improve the read availability and latency.*/\n enablePartitionLevelFailover?: boolean;\n /** Flag to enable/disable the Per Partition Level Circuit Breaker (PPCB). Defaults to false */\n enablePartitionLevelCircuitBreaker?: boolean;\n}\n\n/**\n * @hidden\n */\nexport const defaultConnectionPolicy: ConnectionPolicy = Object.freeze({\n connectionMode: ConnectionMode.Gateway,\n requestTimeout: 60000,\n enableEndpointDiscovery: true,\n preferredLocations: [],\n retryOptions: {\n maxRetryAttemptCount: Constants.ThrottledRequestMaxRetryAttemptCount,\n fixedRetryIntervalInMilliseconds: Constants.ThrottledRequestFixedRetryIntervalInMs,\n maxWaitTimeInSeconds: Constants.ThrottledRequestMaxWaitTimeInSeconds,\n },\n useMultipleWriteLocations: true,\n endpointRefreshRateInMs: 300000,\n enableBackgroundEndpointRefreshing: true,\n enablePartitionLevelFailover: false,\n enablePartitionLevelCircuitBreaker: false,\n});\n"]}
1
+ {"version":3,"file":"ConnectionPolicy.js","sourceRoot":"","sources":["../../../src/documents/ConnectionPolicy.ts"],"names":[],"mappings":";;;AAAA,uCAAuC;AACvC,kCAAkC;AAClC,yDAAmD;AAEnD,2DAAqD;AA2CrD;;GAEG;AACU,QAAA,uBAAuB,GAAqB,MAAM,CAAC,MAAM,CAAC;IACrE,cAAc,EAAE,kCAAc,CAAC,OAAO;IACtC,cAAc,EAAE,KAAK;IACrB,uBAAuB,EAAE,IAAI;IAC7B,kBAAkB,EAAE,EAAE;IACtB,YAAY,EAAE;QACZ,oBAAoB,EAAE,wBAAS,CAAC,oCAAoC;QACpE,gCAAgC,EAAE,wBAAS,CAAC,sCAAsC;QAClF,oBAAoB,EAAE,wBAAS,CAAC,oCAAoC;KACrE;IACD,yBAAyB,EAAE,IAAI;IAC/B,uBAAuB,EAAE,MAAM;IAC/B,kCAAkC,EAAE,IAAI;IACxC,4BAA4B,EAAE,IAAI;IAClC,kCAAkC,EAAE,IAAI;CACzC,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\nimport { Constants } from \"../common/constants.js\";\nimport type { RetryOptions } from \"../retry/retryOptions.js\";\nimport { ConnectionMode } from \"./ConnectionMode.js\";\n/**\n * Represents the Connection policy associated with a CosmosClient in the Azure Cosmos DB database service.\n */\nexport interface ConnectionPolicy {\n /** Determines which mode to connect to Cosmos with. (Currently only supports Gateway option) */\n connectionMode?: ConnectionMode;\n /** Request timeout (time to wait for response from network peer). Represented in milliseconds. */\n requestTimeout?: number;\n /**\n * Flag to enable/disable automatic redirecting of requests based on read/write operations. Default true.\n * Required to call client.dispose() when this is set to true after destroying the CosmosClient inside another process or in the browser.\n */\n enableEndpointDiscovery?: boolean;\n /** List of azure regions to be used as preferred locations for read requests. */\n preferredLocations?: string[];\n /** RetryOptions object which defines several configurable properties used during retry. */\n retryOptions?: RetryOptions;\n /**\n * The flag that enables writes on any locations (regions) for geo-replicated database accounts in the Azure Cosmos DB service.\n * Default is `true`.\n */\n useMultipleWriteLocations?: boolean;\n /** Rate in milliseconds at which the client will refresh the endpoints list in the background */\n endpointRefreshRateInMs?: number;\n /** Flag to enable/disable background refreshing of endpoints. Defaults to true.\n * Endpoint discovery using `enableEndpointsDiscovery` will still work for failed requests. */\n enableBackgroundEndpointRefreshing?: boolean;\n /**\n * Flag to enable/disable Per Partition Level Failover (PPAF). Defaults to true.\n * Automatically failovers to other available partitions when a partition becomes unavailable.\n * When enabled, enablePartitionLevelCircuitBreaker will also be set to true.\n * Note: Requires enableEndpointDiscovery to be true. Has no effect when endpoint discovery is disabled.\n */\n enablePartitionLevelFailover?: boolean;\n\n /**\n * Flag to enable/disable Per Partition Level Circuit Breaker (PPCB). Defaults to true.\n * Note: Requires enableEndpointDiscovery to be true. Has no effect when endpoint discovery is disabled.\n */\n enablePartitionLevelCircuitBreaker?: boolean;\n}\n\n/**\n * @hidden\n */\nexport const defaultConnectionPolicy: ConnectionPolicy = Object.freeze({\n connectionMode: ConnectionMode.Gateway,\n requestTimeout: 60000,\n enableEndpointDiscovery: true,\n preferredLocations: [],\n retryOptions: {\n maxRetryAttemptCount: Constants.ThrottledRequestMaxRetryAttemptCount,\n fixedRetryIntervalInMilliseconds: Constants.ThrottledRequestFixedRetryIntervalInMs,\n maxWaitTimeInSeconds: Constants.ThrottledRequestMaxWaitTimeInSeconds,\n },\n useMultipleWriteLocations: true,\n endpointRefreshRateInMs: 300000,\n enableBackgroundEndpointRefreshing: true,\n enablePartitionLevelFailover: true,\n enablePartitionLevelCircuitBreaker: true,\n});\n"]}
@@ -53,6 +53,10 @@ export declare class DatabaseAccount {
53
53
  /** Gets the UserConsistencyPolicy settings. */
54
54
  readonly consistencyPolicy: ConsistencyLevel;
55
55
  readonly enableMultipleWritableLocations: boolean;
56
+ /**
57
+ * Indicates whether per-partition failover behavior is enabled for the database account.
58
+ */
59
+ readonly enablePerPartitionFailover: boolean;
56
60
  constructor(body: {
57
61
  [key: string]: any;
58
62
  }, headers: CosmosHeaders);
@@ -1 +1 @@
1
- {"version":3,"file":"DatabaseAccount.d.ts","sourceRoot":"","sources":["../../../src/documents/DatabaseAccount.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD;;GAEG;AACH,qBAAa,eAAe;IAC1B,4EAA4E;IAC5E,SAAgB,iBAAiB,EAAE,QAAQ,EAAE,CAAM;IACnD,4EAA4E;IAC5E,SAAgB,iBAAiB,EAAE,QAAQ,EAAE,CAAM;IACnD;;;OAGG;IACH,IAAW,aAAa,IAAI,MAAM,CAEjC;IACD,0DAA0D;IAC1D,SAAgB,aAAa,EAAE,MAAM,CAAC;IACtC;;;OAGG;IACH,IAAW,SAAS,IAAI,MAAM,CAE7B;IACD,sDAAsD;IACtD,SAAgB,SAAS,EAAE,MAAM,CAAC;IAClC;;;OAGG;IACH,IAAW,wBAAwB,IAAI,MAAM,CAE5C;IACD,kFAAkF;IAClF,SAAgB,wBAAwB,EAAE,MAAM,CAAC;IACjD;;;;;;;OAOG;IACH,IAAW,4BAA4B,IAAI,MAAM,CAEhD;IACD;;;;;OAKG;IACH,SAAgB,4BAA4B,EAAE,MAAM,CAAC;IACrD;;;OAGG;IACH,IAAW,iBAAiB,IAAI,gBAAgB,CAE/C;IACD,+CAA+C;IAC/C,SAAgB,iBAAiB,EAAE,gBAAgB,CAAC;IACpD,SAAgB,+BAA+B,EAAE,OAAO,CAAC;gBAGtC,IAAI,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,EAAE,OAAO,EAAE,aAAa;CAsBxE;AAED;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,uBAAuB,EAAE,MAAM,CAAC;IAChC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,+BAA+B,CAAC,EAAE,MAAM,CAAC;CAC1C"}
1
+ {"version":3,"file":"DatabaseAccount.d.ts","sourceRoot":"","sources":["../../../src/documents/DatabaseAccount.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD;;GAEG;AACH,qBAAa,eAAe;IAC1B,4EAA4E;IAC5E,SAAgB,iBAAiB,EAAE,QAAQ,EAAE,CAAM;IACnD,4EAA4E;IAC5E,SAAgB,iBAAiB,EAAE,QAAQ,EAAE,CAAM;IACnD;;;OAGG;IACH,IAAW,aAAa,IAAI,MAAM,CAEjC;IACD,0DAA0D;IAC1D,SAAgB,aAAa,EAAE,MAAM,CAAC;IACtC;;;OAGG;IACH,IAAW,SAAS,IAAI,MAAM,CAE7B;IACD,sDAAsD;IACtD,SAAgB,SAAS,EAAE,MAAM,CAAC;IAClC;;;OAGG;IACH,IAAW,wBAAwB,IAAI,MAAM,CAE5C;IACD,kFAAkF;IAClF,SAAgB,wBAAwB,EAAE,MAAM,CAAC;IACjD;;;;;;;OAOG;IACH,IAAW,4BAA4B,IAAI,MAAM,CAEhD;IACD;;;;;OAKG;IACH,SAAgB,4BAA4B,EAAE,MAAM,CAAC;IACrD;;;OAGG;IACH,IAAW,iBAAiB,IAAI,gBAAgB,CAE/C;IACD,+CAA+C;IAC/C,SAAgB,iBAAiB,EAAE,gBAAgB,CAAC;IACpD,SAAgB,+BAA+B,EAAE,OAAO,CAAC;IACzD;;OAEG;IACH,SAAgB,0BAA0B,EAAE,OAAO,CAAS;gBAGzC,IAAI,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,EAAE,OAAO,EAAE,aAAa;CA2BxE;AAED;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,uBAAuB,EAAE,MAAM,CAAC;IAChC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,+BAA+B,CAAC,EAAE,MAAM,CAAC;CAC1C"}
@@ -9,6 +9,10 @@ const ConsistencyLevel_js_1 = require("./ConsistencyLevel.js");
9
9
  * Represents a DatabaseAccount in the Azure Cosmos DB database service.
10
10
  */
11
11
  class DatabaseAccount {
12
+ /** The list of writable locations for a geo-replicated database account. */
13
+ writableLocations = [];
14
+ /** The list of readable locations for a geo-replicated database account. */
15
+ readableLocations = [];
12
16
  /**
13
17
  * The self-link for Databases in the databaseAccount.
14
18
  * @deprecated Use `databasesLink`
@@ -16,6 +20,8 @@ class DatabaseAccount {
16
20
  get DatabasesLink() {
17
21
  return this.databasesLink;
18
22
  }
23
+ /** The self-link for Databases in the databaseAccount. */
24
+ databasesLink;
19
25
  /**
20
26
  * The self-link for Media in the databaseAccount.
21
27
  * @deprecated Use `mediaLink`
@@ -23,6 +29,8 @@ class DatabaseAccount {
23
29
  get MediaLink() {
24
30
  return this.mediaLink;
25
31
  }
32
+ /** The self-link for Media in the databaseAccount. */
33
+ mediaLink;
26
34
  /**
27
35
  * Attachment content (media) storage quota in MBs ( Retrieved from gateway ).
28
36
  * @deprecated use `maxMediaStorageUsageInMB`
@@ -30,6 +38,8 @@ class DatabaseAccount {
30
38
  get MaxMediaStorageUsageInMB() {
31
39
  return this.maxMediaStorageUsageInMB;
32
40
  }
41
+ /** Attachment content (media) storage quota in MBs ( Retrieved from gateway ). */
42
+ maxMediaStorageUsageInMB;
33
43
  /**
34
44
  * Current attachment content (media) usage in MBs (Retrieved from gateway )
35
45
  *
@@ -41,6 +51,13 @@ class DatabaseAccount {
41
51
  get CurrentMediaStorageUsageInMB() {
42
52
  return this.currentMediaStorageUsageInMB;
43
53
  }
54
+ /**
55
+ * Current attachment content (media) usage in MBs (Retrieved from gateway )
56
+ *
57
+ * Value is returned from cached information updated periodically and is not guaranteed
58
+ * to be real time.
59
+ */
60
+ currentMediaStorageUsageInMB;
44
61
  /**
45
62
  * Gets the UserConsistencyPolicy settings.
46
63
  * @deprecated use `consistencyPolicy`
@@ -48,12 +65,15 @@ class DatabaseAccount {
48
65
  get ConsistencyPolicy() {
49
66
  return this.consistencyPolicy;
50
67
  }
68
+ /** Gets the UserConsistencyPolicy settings. */
69
+ consistencyPolicy;
70
+ enableMultipleWritableLocations;
71
+ /**
72
+ * Indicates whether per-partition failover behavior is enabled for the database account.
73
+ */
74
+ enablePerPartitionFailover = false;
51
75
  // TODO: body - any
52
76
  constructor(body, headers) {
53
- /** The list of writable locations for a geo-replicated database account. */
54
- this.writableLocations = [];
55
- /** The list of readable locations for a geo-replicated database account. */
56
- this.readableLocations = [];
57
77
  this.databasesLink = "/dbs/";
58
78
  this.mediaLink = "/media/";
59
79
  this.maxMediaStorageUsageInMB = headers[index_js_1.Constants.HttpHeaders.MaxMediaStorageUsageInMB];
@@ -75,6 +95,11 @@ class DatabaseAccount {
75
95
  else {
76
96
  this.enableMultipleWritableLocations = false;
77
97
  }
98
+ if (body[index_js_1.Constants.EnablePerPartitionFailover]) {
99
+ this.enablePerPartitionFailover =
100
+ body[index_js_1.Constants.EnablePerPartitionFailover] === true ||
101
+ body[index_js_1.Constants.EnablePerPartitionFailover] === "true";
102
+ }
78
103
  }
79
104
  }
80
105
  exports.DatabaseAccount = DatabaseAccount;
@@ -1 +1 @@
1
- {"version":3,"file":"DatabaseAccount.js","sourceRoot":"","sources":["../../../src/documents/DatabaseAccount.ts"],"names":[],"mappings":";;;AAAA,uCAAuC;AACvC,kCAAkC;AAClC,iDAA+C;AAE/C,+DAAyD;AAEzD;;GAEG;AACH,MAAa,eAAe;IAK1B;;;OAGG;IACH,IAAW,aAAa;QACtB,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAGD;;;OAGG;IACH,IAAW,SAAS;QAClB,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAGD;;;OAGG;IACH,IAAW,wBAAwB;QACjC,OAAO,IAAI,CAAC,wBAAwB,CAAC;IACvC,CAAC;IAGD;;;;;;;OAOG;IACH,IAAW,4BAA4B;QACrC,OAAO,IAAI,CAAC,4BAA4B,CAAC;IAC3C,CAAC;IAQD;;;OAGG;IACH,IAAW,iBAAiB;QAC1B,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAChC,CAAC;IAKD,mBAAmB;IACnB,YAAmB,IAA4B,EAAE,OAAsB;QA7DvE,4EAA4E;QAC5D,sBAAiB,GAAe,EAAE,CAAC;QACnD,4EAA4E;QAC5D,sBAAiB,GAAe,EAAE,CAAC;QA2DjD,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC;QAC7B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,wBAAwB,GAAG,OAAO,CAAC,oBAAS,CAAC,WAAW,CAAC,wBAAwB,CAAC,CAAC;QACxF,IAAI,CAAC,4BAA4B,GAAG,OAAO,CAAC,oBAAS,CAAC,WAAW,CAAC,4BAA4B,CAAC,CAAC;QAChG,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,qBAAqB;YACjD,CAAC,CAAE,IAAI,CAAC,qBAAqB,CAAC,uBAA4C;YAC1E,CAAC,CAAC,sCAAgB,CAAC,OAAO,CAAC;QAC7B,IAAI,IAAI,CAAC,oBAAS,CAAC,iBAAiB,CAAC,IAAI,IAAI,CAAC,EAAE,KAAK,WAAW,EAAE,CAAC;YACjE,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,oBAAS,CAAC,iBAAiB,CAAe,CAAC;QAC3E,CAAC;QACD,IAAI,IAAI,CAAC,oBAAS,CAAC,iBAAiB,CAAC,IAAI,IAAI,CAAC,EAAE,KAAK,WAAW,EAAE,CAAC;YACjE,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,oBAAS,CAAC,iBAAiB,CAAe,CAAC;QAC3E,CAAC;QACD,IAAI,IAAI,CAAC,oBAAS,CAAC,kCAAkC,CAAC,EAAE,CAAC;YACvD,IAAI,CAAC,+BAA+B;gBAClC,IAAI,CAAC,oBAAS,CAAC,kCAAkC,CAAC,KAAK,IAAI;oBAC3D,IAAI,CAAC,oBAAS,CAAC,kCAAkC,CAAC,KAAK,MAAM,CAAC;QAClE,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,+BAA+B,GAAG,KAAK,CAAC;QAC/C,CAAC;IACH,CAAC;CACF;AApFD,0CAoFC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\nimport { Constants } from \"../common/index.js\";\nimport type { CosmosHeaders } from \"../queryExecutionContext/index.js\";\nimport { ConsistencyLevel } from \"./ConsistencyLevel.js\";\n\n/**\n * Represents a DatabaseAccount in the Azure Cosmos DB database service.\n */\nexport class DatabaseAccount {\n /** The list of writable locations for a geo-replicated database account. */\n public readonly writableLocations: Location[] = [];\n /** The list of readable locations for a geo-replicated database account. */\n public readonly readableLocations: Location[] = [];\n /**\n * The self-link for Databases in the databaseAccount.\n * @deprecated Use `databasesLink`\n */\n public get DatabasesLink(): string {\n return this.databasesLink;\n }\n /** The self-link for Databases in the databaseAccount. */\n public readonly databasesLink: string;\n /**\n * The self-link for Media in the databaseAccount.\n * @deprecated Use `mediaLink`\n */\n public get MediaLink(): string {\n return this.mediaLink;\n }\n /** The self-link for Media in the databaseAccount. */\n public readonly mediaLink: string;\n /**\n * Attachment content (media) storage quota in MBs ( Retrieved from gateway ).\n * @deprecated use `maxMediaStorageUsageInMB`\n */\n public get MaxMediaStorageUsageInMB(): number {\n return this.maxMediaStorageUsageInMB;\n }\n /** Attachment content (media) storage quota in MBs ( Retrieved from gateway ). */\n public readonly maxMediaStorageUsageInMB: number;\n /**\n * Current attachment content (media) usage in MBs (Retrieved from gateway )\n *\n * Value is returned from cached information updated periodically and is not guaranteed\n * to be real time.\n *\n * @deprecated use `currentMediaStorageUsageInMB`\n */\n public get CurrentMediaStorageUsageInMB(): number {\n return this.currentMediaStorageUsageInMB;\n }\n /**\n * Current attachment content (media) usage in MBs (Retrieved from gateway )\n *\n * Value is returned from cached information updated periodically and is not guaranteed\n * to be real time.\n */\n public readonly currentMediaStorageUsageInMB: number;\n /**\n * Gets the UserConsistencyPolicy settings.\n * @deprecated use `consistencyPolicy`\n */\n public get ConsistencyPolicy(): ConsistencyLevel {\n return this.consistencyPolicy;\n }\n /** Gets the UserConsistencyPolicy settings. */\n public readonly consistencyPolicy: ConsistencyLevel;\n public readonly enableMultipleWritableLocations: boolean;\n\n // TODO: body - any\n public constructor(body: { [key: string]: any }, headers: CosmosHeaders) {\n this.databasesLink = \"/dbs/\";\n this.mediaLink = \"/media/\";\n this.maxMediaStorageUsageInMB = headers[Constants.HttpHeaders.MaxMediaStorageUsageInMB];\n this.currentMediaStorageUsageInMB = headers[Constants.HttpHeaders.CurrentMediaStorageUsageInMB];\n this.consistencyPolicy = body.userConsistencyPolicy\n ? (body.userConsistencyPolicy.defaultConsistencyLevel as ConsistencyLevel)\n : ConsistencyLevel.Session;\n if (body[Constants.WritableLocations] && body.id !== \"localhost\") {\n this.writableLocations = body[Constants.WritableLocations] as Location[];\n }\n if (body[Constants.ReadableLocations] && body.id !== \"localhost\") {\n this.readableLocations = body[Constants.ReadableLocations] as Location[];\n }\n if (body[Constants.ENABLE_MULTIPLE_WRITABLE_LOCATIONS]) {\n this.enableMultipleWritableLocations =\n body[Constants.ENABLE_MULTIPLE_WRITABLE_LOCATIONS] === true ||\n body[Constants.ENABLE_MULTIPLE_WRITABLE_LOCATIONS] === \"true\";\n } else {\n this.enableMultipleWritableLocations = false;\n }\n }\n}\n\n/**\n * Used to specify the locations that are available, read is index 1 and write is index 0.\n */\nexport interface Location {\n name: string;\n databaseAccountEndpoint: string;\n unavailable?: boolean;\n lastUnavailabilityTimestampInMs?: number;\n}\n"]}
1
+ {"version":3,"file":"DatabaseAccount.js","sourceRoot":"","sources":["../../../src/documents/DatabaseAccount.ts"],"names":[],"mappings":";;;AAAA,uCAAuC;AACvC,kCAAkC;AAClC,iDAA+C;AAE/C,+DAAyD;AAEzD;;GAEG;AACH,MAAa,eAAe;IAC1B,4EAA4E;IAC5D,iBAAiB,GAAe,EAAE,CAAC;IACnD,4EAA4E;IAC5D,iBAAiB,GAAe,EAAE,CAAC;IACnD;;;OAGG;IACH,IAAW,aAAa;QACtB,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IACD,0DAA0D;IAC1C,aAAa,CAAS;IACtC;;;OAGG;IACH,IAAW,SAAS;QAClB,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IACD,sDAAsD;IACtC,SAAS,CAAS;IAClC;;;OAGG;IACH,IAAW,wBAAwB;QACjC,OAAO,IAAI,CAAC,wBAAwB,CAAC;IACvC,CAAC;IACD,kFAAkF;IAClE,wBAAwB,CAAS;IACjD;;;;;;;OAOG;IACH,IAAW,4BAA4B;QACrC,OAAO,IAAI,CAAC,4BAA4B,CAAC;IAC3C,CAAC;IACD;;;;;OAKG;IACa,4BAA4B,CAAS;IACrD;;;OAGG;IACH,IAAW,iBAAiB;QAC1B,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAChC,CAAC;IACD,+CAA+C;IAC/B,iBAAiB,CAAmB;IACpC,+BAA+B,CAAU;IACzD;;OAEG;IACa,0BAA0B,GAAY,KAAK,CAAC;IAE5D,mBAAmB;IACnB,YAAmB,IAA4B,EAAE,OAAsB;QACrE,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC;QAC7B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,wBAAwB,GAAG,OAAO,CAAC,oBAAS,CAAC,WAAW,CAAC,wBAAwB,CAAC,CAAC;QACxF,IAAI,CAAC,4BAA4B,GAAG,OAAO,CAAC,oBAAS,CAAC,WAAW,CAAC,4BAA4B,CAAC,CAAC;QAChG,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,qBAAqB;YACjD,CAAC,CAAE,IAAI,CAAC,qBAAqB,CAAC,uBAA4C;YAC1E,CAAC,CAAC,sCAAgB,CAAC,OAAO,CAAC;QAC7B,IAAI,IAAI,CAAC,oBAAS,CAAC,iBAAiB,CAAC,IAAI,IAAI,CAAC,EAAE,KAAK,WAAW,EAAE,CAAC;YACjE,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,oBAAS,CAAC,iBAAiB,CAAe,CAAC;QAC3E,CAAC;QACD,IAAI,IAAI,CAAC,oBAAS,CAAC,iBAAiB,CAAC,IAAI,IAAI,CAAC,EAAE,KAAK,WAAW,EAAE,CAAC;YACjE,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,oBAAS,CAAC,iBAAiB,CAAe,CAAC;QAC3E,CAAC;QACD,IAAI,IAAI,CAAC,oBAAS,CAAC,kCAAkC,CAAC,EAAE,CAAC;YACvD,IAAI,CAAC,+BAA+B;gBAClC,IAAI,CAAC,oBAAS,CAAC,kCAAkC,CAAC,KAAK,IAAI;oBAC3D,IAAI,CAAC,oBAAS,CAAC,kCAAkC,CAAC,KAAK,MAAM,CAAC;QAClE,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,+BAA+B,GAAG,KAAK,CAAC;QAC/C,CAAC;QACD,IAAI,IAAI,CAAC,oBAAS,CAAC,0BAA0B,CAAC,EAAE,CAAC;YAC/C,IAAI,CAAC,0BAA0B;gBAC7B,IAAI,CAAC,oBAAS,CAAC,0BAA0B,CAAC,KAAK,IAAI;oBACnD,IAAI,CAAC,oBAAS,CAAC,0BAA0B,CAAC,KAAK,MAAM,CAAC;QAC1D,CAAC;IACH,CAAC;CACF;AA7FD,0CA6FC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\nimport { Constants } from \"../common/index.js\";\nimport type { CosmosHeaders } from \"../queryExecutionContext/index.js\";\nimport { ConsistencyLevel } from \"./ConsistencyLevel.js\";\n\n/**\n * Represents a DatabaseAccount in the Azure Cosmos DB database service.\n */\nexport class DatabaseAccount {\n /** The list of writable locations for a geo-replicated database account. */\n public readonly writableLocations: Location[] = [];\n /** The list of readable locations for a geo-replicated database account. */\n public readonly readableLocations: Location[] = [];\n /**\n * The self-link for Databases in the databaseAccount.\n * @deprecated Use `databasesLink`\n */\n public get DatabasesLink(): string {\n return this.databasesLink;\n }\n /** The self-link for Databases in the databaseAccount. */\n public readonly databasesLink: string;\n /**\n * The self-link for Media in the databaseAccount.\n * @deprecated Use `mediaLink`\n */\n public get MediaLink(): string {\n return this.mediaLink;\n }\n /** The self-link for Media in the databaseAccount. */\n public readonly mediaLink: string;\n /**\n * Attachment content (media) storage quota in MBs ( Retrieved from gateway ).\n * @deprecated use `maxMediaStorageUsageInMB`\n */\n public get MaxMediaStorageUsageInMB(): number {\n return this.maxMediaStorageUsageInMB;\n }\n /** Attachment content (media) storage quota in MBs ( Retrieved from gateway ). */\n public readonly maxMediaStorageUsageInMB: number;\n /**\n * Current attachment content (media) usage in MBs (Retrieved from gateway )\n *\n * Value is returned from cached information updated periodically and is not guaranteed\n * to be real time.\n *\n * @deprecated use `currentMediaStorageUsageInMB`\n */\n public get CurrentMediaStorageUsageInMB(): number {\n return this.currentMediaStorageUsageInMB;\n }\n /**\n * Current attachment content (media) usage in MBs (Retrieved from gateway )\n *\n * Value is returned from cached information updated periodically and is not guaranteed\n * to be real time.\n */\n public readonly currentMediaStorageUsageInMB: number;\n /**\n * Gets the UserConsistencyPolicy settings.\n * @deprecated use `consistencyPolicy`\n */\n public get ConsistencyPolicy(): ConsistencyLevel {\n return this.consistencyPolicy;\n }\n /** Gets the UserConsistencyPolicy settings. */\n public readonly consistencyPolicy: ConsistencyLevel;\n public readonly enableMultipleWritableLocations: boolean;\n /**\n * Indicates whether per-partition failover behavior is enabled for the database account.\n */\n public readonly enablePerPartitionFailover: boolean = false;\n\n // TODO: body - any\n public constructor(body: { [key: string]: any }, headers: CosmosHeaders) {\n this.databasesLink = \"/dbs/\";\n this.mediaLink = \"/media/\";\n this.maxMediaStorageUsageInMB = headers[Constants.HttpHeaders.MaxMediaStorageUsageInMB];\n this.currentMediaStorageUsageInMB = headers[Constants.HttpHeaders.CurrentMediaStorageUsageInMB];\n this.consistencyPolicy = body.userConsistencyPolicy\n ? (body.userConsistencyPolicy.defaultConsistencyLevel as ConsistencyLevel)\n : ConsistencyLevel.Session;\n if (body[Constants.WritableLocations] && body.id !== \"localhost\") {\n this.writableLocations = body[Constants.WritableLocations] as Location[];\n }\n if (body[Constants.ReadableLocations] && body.id !== \"localhost\") {\n this.readableLocations = body[Constants.ReadableLocations] as Location[];\n }\n if (body[Constants.ENABLE_MULTIPLE_WRITABLE_LOCATIONS]) {\n this.enableMultipleWritableLocations =\n body[Constants.ENABLE_MULTIPLE_WRITABLE_LOCATIONS] === true ||\n body[Constants.ENABLE_MULTIPLE_WRITABLE_LOCATIONS] === \"true\";\n } else {\n this.enableMultipleWritableLocations = false;\n }\n if (body[Constants.EnablePerPartitionFailover]) {\n this.enablePerPartitionFailover =\n body[Constants.EnablePerPartitionFailover] === true ||\n body[Constants.EnablePerPartitionFailover] === \"true\";\n }\n }\n}\n\n/**\n * Used to specify the locations that are available, read is index 1 and write is index 0.\n */\nexport interface Location {\n name: string;\n databaseAccountEndpoint: string;\n unavailable?: boolean;\n lastUnavailabilityTimestampInMs?: number;\n}\n"]}
@@ -8,9 +8,7 @@ const PartitionKeyInternal_js_1 = require("./PartitionKeyInternal.js");
8
8
  * Builder class for building PartitionKey.
9
9
  */
10
10
  class PartitionKeyBuilder {
11
- constructor() {
12
- this.values = [];
13
- }
11
+ values = [];
14
12
  addValue(value) {
15
13
  this.values.push(value);
16
14
  return this;
@@ -1 +1 @@
1
- {"version":3,"file":"PartitionKey.js","sourceRoot":"","sources":["../../../src/documents/PartitionKey.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC,uEAA6F;AAkC7F;;GAEG;AACH,MAAa,mBAAmB;IAAhC;QACW,WAAM,GAAiC,EAAE,CAAC;IAgBrD,CAAC;IAfQ,QAAQ,CAAC,KAAgC;QAC9C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACxB,OAAO,IAAI,CAAC;IACd,CAAC;IACM,YAAY;QACjB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iDAAuB,CAAC,CAAC;QAC1C,OAAO,IAAI,CAAC;IACd,CAAC;IACM,YAAY;QACjB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iDAAuB,CAAC,CAAC;QAC1C,OAAO,IAAI,CAAC;IACd,CAAC;IACM,KAAK;QACV,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;IAC1B,CAAC;CACF;AAjBD,kDAiBC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { NonePartitionKeyLiteral, NullPartitionKeyLiteral } from \"./PartitionKeyInternal.js\";\n\n/**\n * PartitionKey of a container.\n * @remarks\n * - PartitionKeyDefinition is no longer part of PartitionKey. So please use PartitionKeyDefinition\n * type directly where appropriate.\n */\nexport type PartitionKey = PrimitivePartitionKeyValue | PrimitivePartitionKeyValue[];\n\n/**\n * A primitive Partition Key value.\n */\nexport type PrimitivePartitionKeyValue =\n | string\n | number\n | boolean\n | NullPartitionKeyType\n | NonePartitionKeyType;\n\n/**\n * The returned object represents a partition key value that allows creating and accessing items\n * with a null value for the partition key.\n */\nexport type NullPartitionKeyType = null;\n\n/**\n * The returned object represents a partition key value that allows creating and accessing items\n * without a value for partition key\n */\nexport type NonePartitionKeyType = {\n [K in any]: never;\n};\n\n/**\n * Builder class for building PartitionKey.\n */\nexport class PartitionKeyBuilder {\n readonly values: PrimitivePartitionKeyValue[] = [];\n public addValue(value: string | boolean | number): PartitionKeyBuilder {\n this.values.push(value);\n return this;\n }\n public addNullValue(): PartitionKeyBuilder {\n this.values.push(NullPartitionKeyLiteral);\n return this;\n }\n public addNoneValue(): PartitionKeyBuilder {\n this.values.push(NonePartitionKeyLiteral);\n return this;\n }\n public build(): PartitionKey {\n return [...this.values];\n }\n}\n"]}
1
+ {"version":3,"file":"PartitionKey.js","sourceRoot":"","sources":["../../../src/documents/PartitionKey.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC,uEAA6F;AAkC7F;;GAEG;AACH,MAAa,mBAAmB;IACrB,MAAM,GAAiC,EAAE,CAAC;IAC5C,QAAQ,CAAC,KAAgC;QAC9C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACxB,OAAO,IAAI,CAAC;IACd,CAAC;IACM,YAAY;QACjB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iDAAuB,CAAC,CAAC;QAC1C,OAAO,IAAI,CAAC;IACd,CAAC;IACM,YAAY;QACjB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iDAAuB,CAAC,CAAC;QAC1C,OAAO,IAAI,CAAC;IACd,CAAC;IACM,KAAK;QACV,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;IAC1B,CAAC;CACF;AAjBD,kDAiBC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { NonePartitionKeyLiteral, NullPartitionKeyLiteral } from \"./PartitionKeyInternal.js\";\n\n/**\n * PartitionKey of a container.\n * @remarks\n * - PartitionKeyDefinition is no longer part of PartitionKey. So please use PartitionKeyDefinition\n * type directly where appropriate.\n */\nexport type PartitionKey = PrimitivePartitionKeyValue | PrimitivePartitionKeyValue[];\n\n/**\n * A primitive Partition Key value.\n */\nexport type PrimitivePartitionKeyValue =\n | string\n | number\n | boolean\n | NullPartitionKeyType\n | NonePartitionKeyType;\n\n/**\n * The returned object represents a partition key value that allows creating and accessing items\n * with a null value for the partition key.\n */\nexport type NullPartitionKeyType = null;\n\n/**\n * The returned object represents a partition key value that allows creating and accessing items\n * without a value for partition key\n */\nexport type NonePartitionKeyType = {\n [K in any]: never;\n};\n\n/**\n * Builder class for building PartitionKey.\n */\nexport class PartitionKeyBuilder {\n readonly values: PrimitivePartitionKeyValue[] = [];\n public addValue(value: string | boolean | number): PartitionKeyBuilder {\n this.values.push(value);\n return this;\n }\n public addNullValue(): PartitionKeyBuilder {\n this.values.push(NullPartitionKeyLiteral);\n return this;\n }\n public addNoneValue(): PartitionKeyBuilder {\n this.values.push(NonePartitionKeyLiteral);\n return this;\n }\n public build(): PartitionKey {\n return [...this.values];\n }\n}\n"]}