@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.
- package/README.md +32 -0
- package/dist/browser/ChangeFeedIterator.js +17 -11
- package/dist/browser/ChangeFeedIterator.js.map +1 -1
- package/dist/browser/ChangeFeedResponse.js +8 -0
- package/dist/browser/ChangeFeedResponse.js.map +1 -1
- package/dist/browser/ClientContext.d.ts.map +1 -1
- package/dist/browser/ClientContext.js +232 -48
- package/dist/browser/ClientContext.js.map +1 -1
- package/dist/browser/CosmosClient.d.ts +13 -0
- package/dist/browser/CosmosClient.d.ts.map +1 -1
- package/dist/browser/CosmosClient.js +53 -6
- package/dist/browser/CosmosClient.js.map +1 -1
- package/dist/browser/CosmosClientOptions.d.ts.map +1 -1
- package/dist/browser/CosmosClientOptions.js.map +1 -1
- package/dist/browser/CosmosDiagnostics.d.ts +4 -0
- package/dist/browser/CosmosDiagnostics.d.ts.map +1 -1
- package/dist/browser/CosmosDiagnostics.js +3 -0
- package/dist/browser/CosmosDiagnostics.js.map +1 -1
- package/dist/browser/GlobalEndpointManagerOptions.d.ts +2 -0
- package/dist/browser/GlobalEndpointManagerOptions.d.ts.map +1 -0
- package/dist/browser/GlobalEndpointManagerOptions.js +2 -0
- package/dist/browser/GlobalEndpointManagerOptions.js.map +1 -0
- package/dist/browser/PartitionKeyRangeFailoverInfo.js +8 -5
- package/dist/browser/PartitionKeyRangeFailoverInfo.js.map +1 -1
- package/dist/browser/bulk/Batcher.js +13 -3
- package/dist/browser/bulk/Batcher.js.map +1 -1
- package/dist/browser/bulk/BulkHelper.js +26 -11
- package/dist/browser/bulk/BulkHelper.js.map +1 -1
- package/dist/browser/bulk/BulkResponse.js +22 -20
- package/dist/browser/bulk/BulkResponse.js.map +1 -1
- package/dist/browser/bulk/CongestionAlgorithm.js +11 -4
- package/dist/browser/bulk/CongestionAlgorithm.js.map +1 -1
- package/dist/browser/bulk/HelperPerPartition.js +14 -1
- package/dist/browser/bulk/HelperPerPartition.js.map +1 -1
- package/dist/browser/bulk/ItemOperationContext.js +4 -0
- package/dist/browser/bulk/ItemOperationContext.js.map +1 -1
- package/dist/browser/bulk/Limiter.js +27 -18
- package/dist/browser/bulk/Limiter.js.map +1 -1
- package/dist/browser/bulk/PartitionMetric.js +4 -0
- package/dist/browser/bulk/PartitionMetric.js.map +1 -1
- package/dist/browser/client/ChangeFeed/ChangeFeedForEpkRange.d.ts.map +1 -1
- package/dist/browser/client/ChangeFeed/ChangeFeedForEpkRange.js +29 -15
- package/dist/browser/client/ChangeFeed/ChangeFeedForEpkRange.js.map +1 -1
- package/dist/browser/client/ChangeFeed/ChangeFeedForPartitionKey.d.ts.map +1 -1
- package/dist/browser/client/ChangeFeed/ChangeFeedForPartitionKey.js +19 -8
- package/dist/browser/client/ChangeFeed/ChangeFeedForPartitionKey.js.map +1 -1
- package/dist/browser/client/ChangeFeed/ChangeFeedIteratorBuilder.js +12 -9
- package/dist/browser/client/ChangeFeed/ChangeFeedIteratorBuilder.js.map +1 -1
- package/dist/browser/client/ChangeFeed/ChangeFeedIteratorOptions.d.ts +5 -0
- package/dist/browser/client/ChangeFeed/ChangeFeedIteratorOptions.d.ts.map +1 -1
- package/dist/browser/client/ChangeFeed/ChangeFeedIteratorOptions.js.map +1 -1
- package/dist/browser/client/ChangeFeed/ChangeFeedIteratorResponse.js +9 -0
- package/dist/browser/client/ChangeFeed/ChangeFeedIteratorResponse.js.map +1 -1
- package/dist/browser/client/ChangeFeed/ChangeFeedPolicy.js +1 -0
- package/dist/browser/client/ChangeFeed/ChangeFeedPolicy.js.map +1 -1
- package/dist/browser/client/ChangeFeed/ChangeFeedRange.js +20 -0
- package/dist/browser/client/ChangeFeed/ChangeFeedRange.js.map +1 -1
- package/dist/browser/client/ChangeFeed/ChangeFeedRetentionTimeSpan.js +1 -0
- package/dist/browser/client/ChangeFeed/ChangeFeedRetentionTimeSpan.js.map +1 -1
- package/dist/browser/client/ChangeFeed/ChangeFeedStartFromBeginning.js +1 -0
- package/dist/browser/client/ChangeFeed/ChangeFeedStartFromBeginning.js.map +1 -1
- package/dist/browser/client/ChangeFeed/ChangeFeedStartFromContinuation.js +1 -0
- package/dist/browser/client/ChangeFeed/ChangeFeedStartFromContinuation.js.map +1 -1
- package/dist/browser/client/ChangeFeed/ChangeFeedStartFromNow.js +1 -0
- package/dist/browser/client/ChangeFeed/ChangeFeedStartFromNow.js.map +1 -1
- package/dist/browser/client/ChangeFeed/ChangeFeedStartFromTime.js +2 -0
- package/dist/browser/client/ChangeFeed/ChangeFeedStartFromTime.js.map +1 -1
- package/dist/browser/client/ChangeFeed/CompositeContinuationToken.js +8 -0
- package/dist/browser/client/ChangeFeed/CompositeContinuationToken.js.map +1 -1
- package/dist/browser/client/ChangeFeed/ContinuationTokenForPartitionKey.js +12 -0
- package/dist/browser/client/ChangeFeed/ContinuationTokenForPartitionKey.js.map +1 -1
- package/dist/browser/client/ChangeFeed/FeedRange.js +8 -0
- package/dist/browser/client/ChangeFeed/FeedRange.js.map +1 -1
- package/dist/browser/client/ChangeFeed/FeedRangeQueue.js +1 -0
- package/dist/browser/client/ChangeFeed/FeedRangeQueue.js.map +1 -1
- package/dist/browser/client/ChangeFeed/InternalChangeFeedOptions.d.ts +1 -0
- package/dist/browser/client/ChangeFeed/InternalChangeFeedOptions.d.ts.map +1 -1
- package/dist/browser/client/ChangeFeed/InternalChangeFeedOptions.js.map +1 -1
- package/dist/browser/client/ChangeFeed/changeFeedUtils.d.ts.map +1 -1
- package/dist/browser/client/ChangeFeed/changeFeedUtils.js +6 -5
- package/dist/browser/client/ChangeFeed/changeFeedUtils.js.map +1 -1
- package/dist/browser/client/ClientUtils.js +1 -1
- package/dist/browser/client/ClientUtils.js.map +1 -1
- package/dist/browser/client/Conflict/Conflict.js +4 -0
- package/dist/browser/client/Conflict/Conflict.js.map +1 -1
- package/dist/browser/client/Conflict/ConflictResponse.js +2 -0
- package/dist/browser/client/Conflict/ConflictResponse.js.map +1 -1
- package/dist/browser/client/Conflict/Conflicts.js +2 -0
- package/dist/browser/client/Conflict/Conflicts.js.map +1 -1
- package/dist/browser/client/Container/Container.js +18 -3
- package/dist/browser/client/Container/Container.js.map +1 -1
- package/dist/browser/client/Container/ContainerResponse.js +2 -0
- package/dist/browser/client/Container/ContainerResponse.js.map +1 -1
- package/dist/browser/client/Container/Containers.js +4 -2
- package/dist/browser/client/Container/Containers.js.map +1 -1
- package/dist/browser/client/Database/Database.js +33 -0
- package/dist/browser/client/Database/Database.js.map +1 -1
- package/dist/browser/client/Database/DatabaseResponse.js +2 -0
- package/dist/browser/client/Database/DatabaseResponse.js.map +1 -1
- package/dist/browser/client/Database/Databases.js +3 -0
- package/dist/browser/client/Database/Databases.js.map +1 -1
- package/dist/browser/client/Item/Item.js +4 -0
- package/dist/browser/client/Item/Item.js.map +1 -1
- package/dist/browser/client/Item/ItemResponse.js +2 -0
- package/dist/browser/client/Item/ItemResponse.js.map +1 -1
- package/dist/browser/client/Item/Items.d.ts.map +1 -1
- package/dist/browser/client/Item/Items.js +8 -0
- package/dist/browser/client/Item/Items.js.map +1 -1
- package/dist/browser/client/Offer/Offer.js +3 -0
- package/dist/browser/client/Offer/Offer.js.map +1 -1
- package/dist/browser/client/Offer/OfferResponse.js +2 -0
- package/dist/browser/client/Offer/OfferResponse.js.map +1 -1
- package/dist/browser/client/Offer/Offers.js +2 -0
- package/dist/browser/client/Offer/Offers.js.map +1 -1
- package/dist/browser/client/Permission/Permission.js +3 -0
- package/dist/browser/client/Permission/Permission.js.map +1 -1
- package/dist/browser/client/Permission/PermissionResponse.js +2 -0
- package/dist/browser/client/Permission/PermissionResponse.js.map +1 -1
- package/dist/browser/client/Permission/Permissions.js +2 -0
- package/dist/browser/client/Permission/Permissions.js.map +1 -1
- package/dist/browser/client/SasToken/SasTokenProperties.js +17 -0
- package/dist/browser/client/SasToken/SasTokenProperties.js.map +1 -1
- package/dist/browser/client/Script/Scripts.js +5 -0
- package/dist/browser/client/Script/Scripts.js.map +1 -1
- package/dist/browser/client/StoredProcedure/StoredProcedure.js +3 -0
- package/dist/browser/client/StoredProcedure/StoredProcedure.js.map +1 -1
- package/dist/browser/client/StoredProcedure/StoredProcedureResponse.js +4 -0
- package/dist/browser/client/StoredProcedure/StoredProcedureResponse.js.map +1 -1
- package/dist/browser/client/StoredProcedure/StoredProcedures.js +2 -0
- package/dist/browser/client/StoredProcedure/StoredProcedures.js.map +1 -1
- package/dist/browser/client/Trigger/Trigger.js +3 -0
- package/dist/browser/client/Trigger/Trigger.js.map +1 -1
- package/dist/browser/client/Trigger/TriggerResponse.js +2 -0
- package/dist/browser/client/Trigger/TriggerResponse.js.map +1 -1
- package/dist/browser/client/Trigger/Triggers.js +2 -0
- package/dist/browser/client/Trigger/Triggers.js.map +1 -1
- package/dist/browser/client/User/User.js +9 -0
- package/dist/browser/client/User/User.js.map +1 -1
- package/dist/browser/client/User/UserResponse.js +2 -0
- package/dist/browser/client/User/UserResponse.js.map +1 -1
- package/dist/browser/client/User/Users.js +2 -0
- package/dist/browser/client/User/Users.js.map +1 -1
- package/dist/browser/client/UserDefinedFunction/UserDefinedFunction.js +3 -0
- package/dist/browser/client/UserDefinedFunction/UserDefinedFunction.js.map +1 -1
- package/dist/browser/client/UserDefinedFunction/UserDefinedFunctionResponse.js +2 -0
- package/dist/browser/client/UserDefinedFunction/UserDefinedFunctionResponse.js.map +1 -1
- package/dist/browser/client/UserDefinedFunction/UserDefinedFunctions.js +2 -0
- package/dist/browser/client/UserDefinedFunction/UserDefinedFunctions.js.map +1 -1
- package/dist/browser/common/constants.d.ts +4 -0
- package/dist/browser/common/constants.d.ts.map +1 -1
- package/dist/browser/common/constants.js +5 -1
- package/dist/browser/common/constants.js.map +1 -1
- package/dist/browser/common/helper.d.ts +6 -0
- package/dist/browser/common/helper.d.ts.map +1 -1
- package/dist/browser/common/helper.js +9 -1
- package/dist/browser/common/helper.js.map +1 -1
- package/dist/browser/common/platform.d.ts +1 -0
- package/dist/browser/common/platform.d.ts.map +1 -1
- package/dist/browser/common/platform.js +1 -3
- package/dist/browser/common/platform.js.map +1 -1
- package/dist/browser/diagnostics/CosmosDiagnosticsContext.js +8 -7
- package/dist/browser/diagnostics/CosmosDiagnosticsContext.js.map +1 -1
- package/dist/browser/diagnostics/DiagnosticNodeInternal.d.ts +1 -0
- package/dist/browser/diagnostics/DiagnosticNodeInternal.d.ts.map +1 -1
- package/dist/browser/diagnostics/DiagnosticNodeInternal.js +26 -7
- package/dist/browser/diagnostics/DiagnosticNodeInternal.js.map +1 -1
- package/dist/browser/diagnostics/DiagnosticWriter.js +1 -3
- package/dist/browser/diagnostics/DiagnosticWriter.js.map +1 -1
- package/dist/browser/diagnostics/index.js +2 -2
- package/dist/browser/diagnostics/index.js.map +1 -1
- package/dist/browser/documents/ConnectionPolicy.d.ts +10 -4
- package/dist/browser/documents/ConnectionPolicy.d.ts.map +1 -1
- package/dist/browser/documents/ConnectionPolicy.js +2 -2
- package/dist/browser/documents/ConnectionPolicy.js.map +1 -1
- package/dist/browser/documents/DatabaseAccount.d.ts +4 -0
- package/dist/browser/documents/DatabaseAccount.d.ts.map +1 -1
- package/dist/browser/documents/DatabaseAccount.js +29 -4
- package/dist/browser/documents/DatabaseAccount.js.map +1 -1
- package/dist/browser/documents/PartitionKey.js +1 -3
- package/dist/browser/documents/PartitionKey.js.map +1 -1
- package/dist/browser/encryption/Cache/ClientEncryptionKeyPropertiesCache.js +2 -0
- package/dist/browser/encryption/Cache/ClientEncryptionKeyPropertiesCache.js.map +1 -1
- package/dist/browser/encryption/Cache/EncryptionSettingsCache.js +2 -0
- package/dist/browser/encryption/Cache/EncryptionSettingsCache.js.map +1 -1
- package/dist/browser/encryption/Cache/KeyEncryptionKeyCache.js +2 -0
- package/dist/browser/encryption/Cache/KeyEncryptionKeyCache.js.map +1 -1
- package/dist/browser/encryption/ClientEncryptionKey/ClientEncryptionKeyResponse.js +2 -0
- package/dist/browser/encryption/ClientEncryptionKey/ClientEncryptionKeyResponse.js.map +1 -1
- package/dist/browser/encryption/EncryptionItemQueryIterator.js +24 -27
- package/dist/browser/encryption/EncryptionItemQueryIterator.js.map +1 -1
- package/dist/browser/encryption/EncryptionKey/ProtectedDataEncryptionKey.d.ts +0 -1
- package/dist/browser/encryption/EncryptionKey/ProtectedDataEncryptionKey.d.ts.map +1 -1
- package/dist/browser/encryption/EncryptionKey/ProtectedDataEncryptionKey.js +2 -0
- package/dist/browser/encryption/EncryptionKey/ProtectedDataEncryptionKey.js.map +1 -1
- package/dist/browser/encryption/EncryptionKeyResolver/AzureKeyVaultEncryptionKeyResolver.js +6 -5
- package/dist/browser/encryption/EncryptionKeyResolver/AzureKeyVaultEncryptionKeyResolver.js.map +1 -1
- package/dist/browser/encryption/EncryptionKeyStoreProvider.js +8 -1
- package/dist/browser/encryption/EncryptionKeyStoreProvider.js.map +1 -1
- package/dist/browser/encryption/EncryptionManager.js +6 -0
- package/dist/browser/encryption/EncryptionManager.js.map +1 -1
- package/dist/browser/encryption/EncryptionProcessor.js +5 -0
- package/dist/browser/encryption/EncryptionProcessor.js.map +1 -1
- package/dist/browser/encryption/EncryptionQueryBuilder.js +2 -0
- package/dist/browser/encryption/EncryptionQueryBuilder.js.map +1 -1
- package/dist/browser/encryption/EncryptionSettingForProperty.js +6 -0
- package/dist/browser/encryption/EncryptionSettingForProperty.js.map +1 -1
- package/dist/browser/encryption/EncryptionSettings.js +6 -3
- package/dist/browser/encryption/EncryptionSettings.js.map +1 -1
- package/dist/browser/encryption/KeyEncryptionKey.js +4 -0
- package/dist/browser/encryption/KeyEncryptionKey.js.map +1 -1
- package/dist/browser/encryption/Serializers/StringSerializer.js +1 -1
- package/dist/browser/encryption/Serializers/StringSerializer.js.map +1 -1
- package/dist/browser/extractPartitionKey.js +2 -2
- package/dist/browser/extractPartitionKey.js.map +1 -1
- package/dist/browser/globalEndpointManager.d.ts +8 -0
- package/dist/browser/globalEndpointManager.d.ts.map +1 -1
- package/dist/browser/globalEndpointManager.js +104 -29
- package/dist/browser/globalEndpointManager.js.map +1 -1
- package/dist/browser/globalPartitionEndpointManager.d.ts +0 -2
- package/dist/browser/globalPartitionEndpointManager.d.ts.map +1 -1
- package/dist/browser/globalPartitionEndpointManager.js +19 -7
- package/dist/browser/globalPartitionEndpointManager.js.map +1 -1
- package/dist/browser/queryExecutionContext/Aggregators/AverageAggregator.js +2 -0
- package/dist/browser/queryExecutionContext/Aggregators/AverageAggregator.js.map +1 -1
- package/dist/browser/queryExecutionContext/Aggregators/CountAggregator.js +1 -0
- package/dist/browser/queryExecutionContext/Aggregators/CountAggregator.js.map +1 -1
- package/dist/browser/queryExecutionContext/Aggregators/GlobalStatisticsAggregator.js +1 -0
- package/dist/browser/queryExecutionContext/Aggregators/GlobalStatisticsAggregator.js.map +1 -1
- package/dist/browser/queryExecutionContext/Aggregators/MakeListAggregator.js +1 -0
- package/dist/browser/queryExecutionContext/Aggregators/MakeListAggregator.js.map +1 -1
- package/dist/browser/queryExecutionContext/Aggregators/MakeSetAggregator.js +1 -0
- package/dist/browser/queryExecutionContext/Aggregators/MakeSetAggregator.js.map +1 -1
- package/dist/browser/queryExecutionContext/Aggregators/MaxAggregator.js +2 -0
- package/dist/browser/queryExecutionContext/Aggregators/MaxAggregator.js.map +1 -1
- package/dist/browser/queryExecutionContext/Aggregators/MinAggregator.js +2 -0
- package/dist/browser/queryExecutionContext/Aggregators/MinAggregator.js.map +1 -1
- package/dist/browser/queryExecutionContext/Aggregators/StaticValueAggregator.js +1 -0
- package/dist/browser/queryExecutionContext/Aggregators/StaticValueAggregator.js.map +1 -1
- package/dist/browser/queryExecutionContext/Aggregators/SumAggregator.js +1 -0
- package/dist/browser/queryExecutionContext/Aggregators/SumAggregator.js.map +1 -1
- package/dist/browser/queryExecutionContext/EndpointComponent/GroupByEndpointComponent.js +5 -3
- package/dist/browser/queryExecutionContext/EndpointComponent/GroupByEndpointComponent.js.map +1 -1
- package/dist/browser/queryExecutionContext/EndpointComponent/GroupByValueEndpointComponent.js +6 -3
- package/dist/browser/queryExecutionContext/EndpointComponent/GroupByValueEndpointComponent.js.map +1 -1
- package/dist/browser/queryExecutionContext/EndpointComponent/NonStreamingOrderByDistinctEndpointComponent.js +23 -7
- package/dist/browser/queryExecutionContext/EndpointComponent/NonStreamingOrderByDistinctEndpointComponent.js.map +1 -1
- package/dist/browser/queryExecutionContext/EndpointComponent/NonStreamingOrderByEndpointComponent.js +14 -6
- package/dist/browser/queryExecutionContext/EndpointComponent/NonStreamingOrderByEndpointComponent.js.map +1 -1
- package/dist/browser/queryExecutionContext/EndpointComponent/OffsetLimitEndpointComponent.js +3 -0
- package/dist/browser/queryExecutionContext/EndpointComponent/OffsetLimitEndpointComponent.js.map +1 -1
- package/dist/browser/queryExecutionContext/EndpointComponent/OrderByEndpointComponent.js +2 -0
- package/dist/browser/queryExecutionContext/EndpointComponent/OrderByEndpointComponent.js.map +1 -1
- package/dist/browser/queryExecutionContext/EndpointComponent/OrderedDistinctEndpointComponent.js +2 -0
- package/dist/browser/queryExecutionContext/EndpointComponent/OrderedDistinctEndpointComponent.js.map +1 -1
- package/dist/browser/queryExecutionContext/EndpointComponent/UnorderedDistinctEndpointComponent.js +2 -0
- package/dist/browser/queryExecutionContext/EndpointComponent/UnorderedDistinctEndpointComponent.js.map +1 -1
- package/dist/browser/queryExecutionContext/FetchResult.js +4 -0
- package/dist/browser/queryExecutionContext/FetchResult.js.map +1 -1
- package/dist/browser/queryExecutionContext/defaultQueryExecutionContext.js +14 -2
- package/dist/browser/queryExecutionContext/defaultQueryExecutionContext.js.map +1 -1
- package/dist/browser/queryExecutionContext/documentProducer.js +34 -21
- package/dist/browser/queryExecutionContext/documentProducer.js.map +1 -1
- package/dist/browser/queryExecutionContext/hybridQueryExecutionContext.js +41 -27
- package/dist/browser/queryExecutionContext/hybridQueryExecutionContext.js.map +1 -1
- package/dist/browser/queryExecutionContext/orderByComparator.js +1 -0
- package/dist/browser/queryExecutionContext/orderByComparator.js.map +1 -1
- package/dist/browser/queryExecutionContext/orderByDocumentProducerComparator.js +1 -0
- package/dist/browser/queryExecutionContext/orderByDocumentProducerComparator.js.map +1 -1
- package/dist/browser/queryExecutionContext/orderByQueryExecutionContext.js +1 -0
- package/dist/browser/queryExecutionContext/orderByQueryExecutionContext.js.map +1 -1
- package/dist/browser/queryExecutionContext/parallelQueryExecutionContextBase.js +20 -2
- package/dist/browser/queryExecutionContext/parallelQueryExecutionContextBase.js.map +1 -1
- package/dist/browser/queryExecutionContext/pipelinedQueryExecutionContext.js +14 -4
- package/dist/browser/queryExecutionContext/pipelinedQueryExecutionContext.js.map +1 -1
- package/dist/browser/queryIterator.js +41 -33
- package/dist/browser/queryIterator.js.map +1 -1
- package/dist/browser/queryMetrics/clientSideMetrics.js +2 -1
- package/dist/browser/queryMetrics/clientSideMetrics.js.map +1 -1
- package/dist/browser/queryMetrics/queryMetrics.js +14 -1
- package/dist/browser/queryMetrics/queryMetrics.js.map +1 -1
- package/dist/browser/queryMetrics/queryPreparationTime.js +5 -1
- package/dist/browser/queryMetrics/queryPreparationTime.js.map +1 -1
- package/dist/browser/queryMetrics/runtimeExecutionTimes.js +4 -1
- package/dist/browser/queryMetrics/runtimeExecutionTimes.js.map +1 -1
- package/dist/browser/queryMetrics/timeSpan.js +4 -3
- package/dist/browser/queryMetrics/timeSpan.js.map +1 -1
- package/dist/browser/request/ErrorResponse.js +19 -0
- package/dist/browser/request/ErrorResponse.js.map +1 -1
- package/dist/browser/request/FeedResponse.js +4 -0
- package/dist/browser/request/FeedResponse.js.map +1 -1
- package/dist/browser/request/RequestHandler.js +3 -4
- package/dist/browser/request/RequestHandler.js.map +1 -1
- package/dist/browser/request/ResourceResponse.js +5 -0
- package/dist/browser/request/ResourceResponse.js.map +1 -1
- package/dist/browser/request/SharedOptions.d.ts +5 -0
- package/dist/browser/request/SharedOptions.d.ts.map +1 -1
- package/dist/browser/request/SharedOptions.js.map +1 -1
- package/dist/browser/request/TimeoutError.js +1 -1
- package/dist/browser/request/TimeoutError.js.map +1 -1
- package/dist/browser/request/hybridSearchQueryResult.js +5 -0
- package/dist/browser/request/hybridSearchQueryResult.js.map +1 -1
- package/dist/browser/request/request.js +5 -1
- package/dist/browser/request/request.js.map +1 -1
- package/dist/browser/retry/bulkExecutionRetryPolicy.js +5 -2
- package/dist/browser/retry/bulkExecutionRetryPolicy.js.map +1 -1
- package/dist/browser/retry/defaultRetryPolicy.d.ts.map +1 -1
- package/dist/browser/retry/defaultRetryPolicy.js +7 -7
- package/dist/browser/retry/defaultRetryPolicy.js.map +1 -1
- package/dist/browser/retry/endpointDiscoveryRetryPolicy.d.ts +3 -2
- package/dist/browser/retry/endpointDiscoveryRetryPolicy.d.ts.map +1 -1
- package/dist/browser/retry/endpointDiscoveryRetryPolicy.js +24 -7
- package/dist/browser/retry/endpointDiscoveryRetryPolicy.js.map +1 -1
- package/dist/browser/retry/resourceThrottleRetryPolicy.js +20 -10
- package/dist/browser/retry/resourceThrottleRetryPolicy.js.map +1 -1
- package/dist/browser/retry/retryUtility.d.ts.map +1 -1
- package/dist/browser/retry/retryUtility.js +22 -8
- package/dist/browser/retry/retryUtility.js.map +1 -1
- package/dist/browser/retry/sessionRetryPolicy.js +8 -4
- package/dist/browser/retry/sessionRetryPolicy.js.map +1 -1
- package/dist/browser/retry/timeoutFailoverRetryPolicy.d.ts +1 -2
- package/dist/browser/retry/timeoutFailoverRetryPolicy.d.ts.map +1 -1
- package/dist/browser/retry/timeoutFailoverRetryPolicy.js +17 -7
- package/dist/browser/retry/timeoutFailoverRetryPolicy.js.map +1 -1
- package/dist/browser/routing/QueryRange.js +4 -0
- package/dist/browser/routing/QueryRange.js.map +1 -1
- package/dist/browser/routing/inMemoryCollectionRoutingMap.js +4 -0
- package/dist/browser/routing/inMemoryCollectionRoutingMap.js.map +1 -1
- package/dist/browser/routing/partitionKeyRangeCache.js +2 -0
- package/dist/browser/routing/partitionKeyRangeCache.js.map +1 -1
- package/dist/browser/routing/smartRoutingMapProvider.js +1 -0
- package/dist/browser/routing/smartRoutingMapProvider.js.map +1 -1
- package/dist/browser/session/VectorSessionToken.js +6 -2
- package/dist/browser/session/VectorSessionToken.js.map +1 -1
- package/dist/browser/session/sessionContainer.js +5 -3
- package/dist/browser/session/sessionContainer.js.map +1 -1
- package/dist/browser/utils/batch.js +15 -4
- package/dist/browser/utils/batch.js.map +1 -1
- package/dist/browser/utils/encode.d.ts +1 -1
- package/dist/browser/utils/encode.d.ts.map +1 -1
- package/dist/browser/utils/encode.js.map +1 -1
- package/dist/browser/utils/fixedSizePriorityQueue.js +4 -0
- package/dist/browser/utils/fixedSizePriorityQueue.js.map +1 -1
- package/dist/browser/utils/hashing/hash.js +1 -1
- package/dist/browser/utils/hashing/hash.js.map +1 -1
- package/dist/browser/utils/nonStreamingOrderByMap.js +2 -0
- package/dist/browser/utils/nonStreamingOrderByMap.js.map +1 -1
- package/dist/commonjs/ChangeFeedIterator.js +17 -11
- package/dist/commonjs/ChangeFeedIterator.js.map +1 -1
- package/dist/commonjs/ChangeFeedResponse.js +8 -0
- package/dist/commonjs/ChangeFeedResponse.js.map +1 -1
- package/dist/commonjs/ClientContext.d.ts.map +1 -1
- package/dist/commonjs/ClientContext.js +232 -48
- package/dist/commonjs/ClientContext.js.map +1 -1
- package/dist/commonjs/CosmosClient.d.ts +13 -0
- package/dist/commonjs/CosmosClient.d.ts.map +1 -1
- package/dist/commonjs/CosmosClient.js +53 -6
- package/dist/commonjs/CosmosClient.js.map +1 -1
- package/dist/commonjs/CosmosClientOptions.d.ts.map +1 -1
- package/dist/commonjs/CosmosClientOptions.js.map +1 -1
- package/dist/commonjs/CosmosDiagnostics.d.ts +4 -0
- package/dist/commonjs/CosmosDiagnostics.d.ts.map +1 -1
- package/dist/commonjs/CosmosDiagnostics.js +3 -0
- package/dist/commonjs/CosmosDiagnostics.js.map +1 -1
- package/dist/commonjs/GlobalEndpointManagerOptions.d.ts +2 -0
- package/dist/commonjs/GlobalEndpointManagerOptions.d.ts.map +1 -0
- package/dist/commonjs/GlobalEndpointManagerOptions.js +3 -0
- package/dist/commonjs/GlobalEndpointManagerOptions.js.map +1 -0
- package/dist/commonjs/PartitionKeyRangeFailoverInfo.js +8 -5
- package/dist/commonjs/PartitionKeyRangeFailoverInfo.js.map +1 -1
- package/dist/commonjs/bulk/Batcher.js +13 -3
- package/dist/commonjs/bulk/Batcher.js.map +1 -1
- package/dist/commonjs/bulk/BulkHelper.js +26 -11
- package/dist/commonjs/bulk/BulkHelper.js.map +1 -1
- package/dist/commonjs/bulk/BulkResponse.js +22 -20
- package/dist/commonjs/bulk/BulkResponse.js.map +1 -1
- package/dist/commonjs/bulk/CongestionAlgorithm.js +11 -4
- package/dist/commonjs/bulk/CongestionAlgorithm.js.map +1 -1
- package/dist/commonjs/bulk/HelperPerPartition.js +14 -1
- package/dist/commonjs/bulk/HelperPerPartition.js.map +1 -1
- package/dist/commonjs/bulk/ItemOperationContext.js +4 -0
- package/dist/commonjs/bulk/ItemOperationContext.js.map +1 -1
- package/dist/commonjs/bulk/Limiter.js +27 -18
- package/dist/commonjs/bulk/Limiter.js.map +1 -1
- package/dist/commonjs/bulk/PartitionMetric.js +4 -0
- package/dist/commonjs/bulk/PartitionMetric.js.map +1 -1
- package/dist/commonjs/client/ChangeFeed/ChangeFeedForEpkRange.d.ts.map +1 -1
- package/dist/commonjs/client/ChangeFeed/ChangeFeedForEpkRange.js +29 -15
- package/dist/commonjs/client/ChangeFeed/ChangeFeedForEpkRange.js.map +1 -1
- package/dist/commonjs/client/ChangeFeed/ChangeFeedForPartitionKey.d.ts.map +1 -1
- package/dist/commonjs/client/ChangeFeed/ChangeFeedForPartitionKey.js +19 -8
- package/dist/commonjs/client/ChangeFeed/ChangeFeedForPartitionKey.js.map +1 -1
- package/dist/commonjs/client/ChangeFeed/ChangeFeedIteratorBuilder.js +12 -9
- package/dist/commonjs/client/ChangeFeed/ChangeFeedIteratorBuilder.js.map +1 -1
- package/dist/commonjs/client/ChangeFeed/ChangeFeedIteratorOptions.d.ts +5 -0
- package/dist/commonjs/client/ChangeFeed/ChangeFeedIteratorOptions.d.ts.map +1 -1
- package/dist/commonjs/client/ChangeFeed/ChangeFeedIteratorOptions.js.map +1 -1
- package/dist/commonjs/client/ChangeFeed/ChangeFeedIteratorResponse.js +9 -0
- package/dist/commonjs/client/ChangeFeed/ChangeFeedIteratorResponse.js.map +1 -1
- package/dist/commonjs/client/ChangeFeed/ChangeFeedPolicy.js +1 -0
- package/dist/commonjs/client/ChangeFeed/ChangeFeedPolicy.js.map +1 -1
- package/dist/commonjs/client/ChangeFeed/ChangeFeedRange.js +20 -0
- package/dist/commonjs/client/ChangeFeed/ChangeFeedRange.js.map +1 -1
- package/dist/commonjs/client/ChangeFeed/ChangeFeedRetentionTimeSpan.js +1 -0
- package/dist/commonjs/client/ChangeFeed/ChangeFeedRetentionTimeSpan.js.map +1 -1
- package/dist/commonjs/client/ChangeFeed/ChangeFeedStartFromBeginning.js +1 -0
- package/dist/commonjs/client/ChangeFeed/ChangeFeedStartFromBeginning.js.map +1 -1
- package/dist/commonjs/client/ChangeFeed/ChangeFeedStartFromContinuation.js +1 -0
- package/dist/commonjs/client/ChangeFeed/ChangeFeedStartFromContinuation.js.map +1 -1
- package/dist/commonjs/client/ChangeFeed/ChangeFeedStartFromNow.js +1 -0
- package/dist/commonjs/client/ChangeFeed/ChangeFeedStartFromNow.js.map +1 -1
- package/dist/commonjs/client/ChangeFeed/ChangeFeedStartFromTime.js +2 -0
- package/dist/commonjs/client/ChangeFeed/ChangeFeedStartFromTime.js.map +1 -1
- package/dist/commonjs/client/ChangeFeed/CompositeContinuationToken.js +8 -0
- package/dist/commonjs/client/ChangeFeed/CompositeContinuationToken.js.map +1 -1
- package/dist/commonjs/client/ChangeFeed/ContinuationTokenForPartitionKey.js +12 -0
- package/dist/commonjs/client/ChangeFeed/ContinuationTokenForPartitionKey.js.map +1 -1
- package/dist/commonjs/client/ChangeFeed/FeedRange.js +8 -0
- package/dist/commonjs/client/ChangeFeed/FeedRange.js.map +1 -1
- package/dist/commonjs/client/ChangeFeed/FeedRangeQueue.js +1 -0
- package/dist/commonjs/client/ChangeFeed/FeedRangeQueue.js.map +1 -1
- package/dist/commonjs/client/ChangeFeed/InternalChangeFeedOptions.d.ts +1 -0
- package/dist/commonjs/client/ChangeFeed/InternalChangeFeedOptions.d.ts.map +1 -1
- package/dist/commonjs/client/ChangeFeed/InternalChangeFeedOptions.js.map +1 -1
- package/dist/commonjs/client/ChangeFeed/changeFeedUtils.d.ts.map +1 -1
- package/dist/commonjs/client/ChangeFeed/changeFeedUtils.js +6 -5
- package/dist/commonjs/client/ChangeFeed/changeFeedUtils.js.map +1 -1
- package/dist/commonjs/client/ClientUtils.js +1 -1
- package/dist/commonjs/client/ClientUtils.js.map +1 -1
- package/dist/commonjs/client/Conflict/Conflict.js +4 -0
- package/dist/commonjs/client/Conflict/Conflict.js.map +1 -1
- package/dist/commonjs/client/Conflict/ConflictResponse.js +2 -0
- package/dist/commonjs/client/Conflict/ConflictResponse.js.map +1 -1
- package/dist/commonjs/client/Conflict/Conflicts.js +2 -0
- package/dist/commonjs/client/Conflict/Conflicts.js.map +1 -1
- package/dist/commonjs/client/Container/Container.js +18 -3
- package/dist/commonjs/client/Container/Container.js.map +1 -1
- package/dist/commonjs/client/Container/ContainerResponse.js +2 -0
- package/dist/commonjs/client/Container/ContainerResponse.js.map +1 -1
- package/dist/commonjs/client/Container/Containers.js +4 -2
- package/dist/commonjs/client/Container/Containers.js.map +1 -1
- package/dist/commonjs/client/Database/Database.js +33 -0
- package/dist/commonjs/client/Database/Database.js.map +1 -1
- package/dist/commonjs/client/Database/DatabaseResponse.js +2 -0
- package/dist/commonjs/client/Database/DatabaseResponse.js.map +1 -1
- package/dist/commonjs/client/Database/Databases.js +3 -0
- package/dist/commonjs/client/Database/Databases.js.map +1 -1
- package/dist/commonjs/client/Item/Item.js +4 -0
- package/dist/commonjs/client/Item/Item.js.map +1 -1
- package/dist/commonjs/client/Item/ItemResponse.js +2 -0
- package/dist/commonjs/client/Item/ItemResponse.js.map +1 -1
- package/dist/commonjs/client/Item/Items.d.ts.map +1 -1
- package/dist/commonjs/client/Item/Items.js +8 -0
- package/dist/commonjs/client/Item/Items.js.map +1 -1
- package/dist/commonjs/client/Offer/Offer.js +3 -0
- package/dist/commonjs/client/Offer/Offer.js.map +1 -1
- package/dist/commonjs/client/Offer/OfferResponse.js +2 -0
- package/dist/commonjs/client/Offer/OfferResponse.js.map +1 -1
- package/dist/commonjs/client/Offer/Offers.js +2 -0
- package/dist/commonjs/client/Offer/Offers.js.map +1 -1
- package/dist/commonjs/client/Permission/Permission.js +3 -0
- package/dist/commonjs/client/Permission/Permission.js.map +1 -1
- package/dist/commonjs/client/Permission/PermissionResponse.js +2 -0
- package/dist/commonjs/client/Permission/PermissionResponse.js.map +1 -1
- package/dist/commonjs/client/Permission/Permissions.js +2 -0
- package/dist/commonjs/client/Permission/Permissions.js.map +1 -1
- package/dist/commonjs/client/SasToken/SasTokenProperties.js +17 -0
- package/dist/commonjs/client/SasToken/SasTokenProperties.js.map +1 -1
- package/dist/commonjs/client/Script/Scripts.js +5 -0
- package/dist/commonjs/client/Script/Scripts.js.map +1 -1
- package/dist/commonjs/client/StoredProcedure/StoredProcedure.js +3 -0
- package/dist/commonjs/client/StoredProcedure/StoredProcedure.js.map +1 -1
- package/dist/commonjs/client/StoredProcedure/StoredProcedureResponse.js +4 -0
- package/dist/commonjs/client/StoredProcedure/StoredProcedureResponse.js.map +1 -1
- package/dist/commonjs/client/StoredProcedure/StoredProcedures.js +2 -0
- package/dist/commonjs/client/StoredProcedure/StoredProcedures.js.map +1 -1
- package/dist/commonjs/client/Trigger/Trigger.js +3 -0
- package/dist/commonjs/client/Trigger/Trigger.js.map +1 -1
- package/dist/commonjs/client/Trigger/TriggerResponse.js +2 -0
- package/dist/commonjs/client/Trigger/TriggerResponse.js.map +1 -1
- package/dist/commonjs/client/Trigger/Triggers.js +2 -0
- package/dist/commonjs/client/Trigger/Triggers.js.map +1 -1
- package/dist/commonjs/client/User/User.js +9 -0
- package/dist/commonjs/client/User/User.js.map +1 -1
- package/dist/commonjs/client/User/UserResponse.js +2 -0
- package/dist/commonjs/client/User/UserResponse.js.map +1 -1
- package/dist/commonjs/client/User/Users.js +2 -0
- package/dist/commonjs/client/User/Users.js.map +1 -1
- package/dist/commonjs/client/UserDefinedFunction/UserDefinedFunction.js +3 -0
- package/dist/commonjs/client/UserDefinedFunction/UserDefinedFunction.js.map +1 -1
- package/dist/commonjs/client/UserDefinedFunction/UserDefinedFunctionResponse.js +2 -0
- package/dist/commonjs/client/UserDefinedFunction/UserDefinedFunctionResponse.js.map +1 -1
- package/dist/commonjs/client/UserDefinedFunction/UserDefinedFunctions.js +2 -0
- package/dist/commonjs/client/UserDefinedFunction/UserDefinedFunctions.js.map +1 -1
- package/dist/commonjs/common/constants.d.ts +4 -0
- package/dist/commonjs/common/constants.d.ts.map +1 -1
- package/dist/commonjs/common/constants.js +6 -2
- package/dist/commonjs/common/constants.js.map +1 -1
- package/dist/commonjs/common/helper.d.ts +6 -0
- package/dist/commonjs/common/helper.d.ts.map +1 -1
- package/dist/commonjs/common/helper.js +9 -0
- package/dist/commonjs/common/helper.js.map +1 -1
- package/dist/commonjs/common/platform.d.ts +1 -0
- package/dist/commonjs/common/platform.d.ts.map +1 -1
- package/dist/commonjs/common/platform.js +1 -3
- package/dist/commonjs/common/platform.js.map +1 -1
- package/dist/commonjs/diagnostics/CosmosDiagnosticsContext.js +8 -7
- package/dist/commonjs/diagnostics/CosmosDiagnosticsContext.js.map +1 -1
- package/dist/commonjs/diagnostics/DiagnosticNodeInternal.d.ts +1 -0
- package/dist/commonjs/diagnostics/DiagnosticNodeInternal.d.ts.map +1 -1
- package/dist/commonjs/diagnostics/DiagnosticNodeInternal.js +26 -7
- package/dist/commonjs/diagnostics/DiagnosticNodeInternal.js.map +1 -1
- package/dist/commonjs/diagnostics/DiagnosticWriter.js +1 -3
- package/dist/commonjs/diagnostics/DiagnosticWriter.js.map +1 -1
- package/dist/commonjs/diagnostics/index.js +2 -2
- package/dist/commonjs/diagnostics/index.js.map +1 -1
- package/dist/commonjs/documents/ConnectionPolicy.d.ts +10 -4
- package/dist/commonjs/documents/ConnectionPolicy.d.ts.map +1 -1
- package/dist/commonjs/documents/ConnectionPolicy.js +2 -2
- package/dist/commonjs/documents/ConnectionPolicy.js.map +1 -1
- package/dist/commonjs/documents/DatabaseAccount.d.ts +4 -0
- package/dist/commonjs/documents/DatabaseAccount.d.ts.map +1 -1
- package/dist/commonjs/documents/DatabaseAccount.js +29 -4
- package/dist/commonjs/documents/DatabaseAccount.js.map +1 -1
- package/dist/commonjs/documents/PartitionKey.js +1 -3
- package/dist/commonjs/documents/PartitionKey.js.map +1 -1
- package/dist/commonjs/encryption/AeadAes256CbcHmacSha256Algorithm/AeadAes256CbcHmacSha256Algorithm.js +8 -2
- package/dist/commonjs/encryption/AeadAes256CbcHmacSha256Algorithm/AeadAes256CbcHmacSha256Algorithm.js.map +1 -1
- package/dist/commonjs/encryption/Cache/ClientEncryptionKeyPropertiesCache.js +2 -0
- package/dist/commonjs/encryption/Cache/ClientEncryptionKeyPropertiesCache.js.map +1 -1
- package/dist/commonjs/encryption/Cache/EncryptionSettingsCache.js +2 -0
- package/dist/commonjs/encryption/Cache/EncryptionSettingsCache.js.map +1 -1
- package/dist/commonjs/encryption/Cache/KeyEncryptionKeyCache.js +2 -0
- package/dist/commonjs/encryption/Cache/KeyEncryptionKeyCache.js.map +1 -1
- package/dist/commonjs/encryption/Cache/ProtectedDataEncryptionKeyCache.js +5 -0
- package/dist/commonjs/encryption/Cache/ProtectedDataEncryptionKeyCache.js.map +1 -1
- package/dist/commonjs/encryption/ClientEncryptionKey/ClientEncryptionKeyResponse.js +2 -0
- package/dist/commonjs/encryption/ClientEncryptionKey/ClientEncryptionKeyResponse.js.map +1 -1
- package/dist/commonjs/encryption/EncryptionItemQueryIterator.js +24 -27
- package/dist/commonjs/encryption/EncryptionItemQueryIterator.js.map +1 -1
- package/dist/commonjs/encryption/EncryptionKey/DataEncryptionKey.js +7 -2
- package/dist/commonjs/encryption/EncryptionKey/DataEncryptionKey.js.map +1 -1
- package/dist/commonjs/encryption/EncryptionKey/ProtectedDataEncryptionKey.d.ts +0 -1
- package/dist/commonjs/encryption/EncryptionKey/ProtectedDataEncryptionKey.d.ts.map +1 -1
- package/dist/commonjs/encryption/EncryptionKey/ProtectedDataEncryptionKey.js +2 -0
- package/dist/commonjs/encryption/EncryptionKey/ProtectedDataEncryptionKey.js.map +1 -1
- package/dist/commonjs/encryption/EncryptionKeyResolver/AzureKeyVaultEncryptionKeyResolver.js +6 -5
- package/dist/commonjs/encryption/EncryptionKeyResolver/AzureKeyVaultEncryptionKeyResolver.js.map +1 -1
- package/dist/commonjs/encryption/EncryptionKeyStoreProvider.js +8 -1
- package/dist/commonjs/encryption/EncryptionKeyStoreProvider.js.map +1 -1
- package/dist/commonjs/encryption/EncryptionManager.js +6 -0
- package/dist/commonjs/encryption/EncryptionManager.js.map +1 -1
- package/dist/commonjs/encryption/EncryptionProcessor.js +5 -0
- package/dist/commonjs/encryption/EncryptionProcessor.js.map +1 -1
- package/dist/commonjs/encryption/EncryptionQueryBuilder.js +2 -0
- package/dist/commonjs/encryption/EncryptionQueryBuilder.js.map +1 -1
- package/dist/commonjs/encryption/EncryptionSettingForProperty.js +6 -0
- package/dist/commonjs/encryption/EncryptionSettingForProperty.js.map +1 -1
- package/dist/commonjs/encryption/EncryptionSettings.js +6 -3
- package/dist/commonjs/encryption/EncryptionSettings.js.map +1 -1
- package/dist/commonjs/encryption/KeyEncryptionKey.js +4 -0
- package/dist/commonjs/encryption/KeyEncryptionKey.js.map +1 -1
- package/dist/commonjs/encryption/Serializers/StringSerializer.js +1 -1
- package/dist/commonjs/encryption/Serializers/StringSerializer.js.map +1 -1
- package/dist/commonjs/extractPartitionKey.js +2 -2
- package/dist/commonjs/extractPartitionKey.js.map +1 -1
- package/dist/commonjs/globalEndpointManager.d.ts +8 -0
- package/dist/commonjs/globalEndpointManager.d.ts.map +1 -1
- package/dist/commonjs/globalEndpointManager.js +104 -29
- package/dist/commonjs/globalEndpointManager.js.map +1 -1
- package/dist/commonjs/globalPartitionEndpointManager.d.ts +0 -2
- package/dist/commonjs/globalPartitionEndpointManager.d.ts.map +1 -1
- package/dist/commonjs/globalPartitionEndpointManager.js +19 -7
- package/dist/commonjs/globalPartitionEndpointManager.js.map +1 -1
- package/dist/commonjs/queryExecutionContext/Aggregators/AverageAggregator.js +2 -0
- package/dist/commonjs/queryExecutionContext/Aggregators/AverageAggregator.js.map +1 -1
- package/dist/commonjs/queryExecutionContext/Aggregators/CountAggregator.js +1 -0
- package/dist/commonjs/queryExecutionContext/Aggregators/CountAggregator.js.map +1 -1
- package/dist/commonjs/queryExecutionContext/Aggregators/GlobalStatisticsAggregator.js +1 -0
- package/dist/commonjs/queryExecutionContext/Aggregators/GlobalStatisticsAggregator.js.map +1 -1
- package/dist/commonjs/queryExecutionContext/Aggregators/MakeListAggregator.js +1 -0
- package/dist/commonjs/queryExecutionContext/Aggregators/MakeListAggregator.js.map +1 -1
- package/dist/commonjs/queryExecutionContext/Aggregators/MakeSetAggregator.js +1 -0
- package/dist/commonjs/queryExecutionContext/Aggregators/MakeSetAggregator.js.map +1 -1
- package/dist/commonjs/queryExecutionContext/Aggregators/MaxAggregator.js +2 -0
- package/dist/commonjs/queryExecutionContext/Aggregators/MaxAggregator.js.map +1 -1
- package/dist/commonjs/queryExecutionContext/Aggregators/MinAggregator.js +2 -0
- package/dist/commonjs/queryExecutionContext/Aggregators/MinAggregator.js.map +1 -1
- package/dist/commonjs/queryExecutionContext/Aggregators/StaticValueAggregator.js +1 -0
- package/dist/commonjs/queryExecutionContext/Aggregators/StaticValueAggregator.js.map +1 -1
- package/dist/commonjs/queryExecutionContext/Aggregators/SumAggregator.js +1 -0
- package/dist/commonjs/queryExecutionContext/Aggregators/SumAggregator.js.map +1 -1
- package/dist/commonjs/queryExecutionContext/EndpointComponent/GroupByEndpointComponent.js +5 -3
- package/dist/commonjs/queryExecutionContext/EndpointComponent/GroupByEndpointComponent.js.map +1 -1
- package/dist/commonjs/queryExecutionContext/EndpointComponent/GroupByValueEndpointComponent.js +6 -3
- package/dist/commonjs/queryExecutionContext/EndpointComponent/GroupByValueEndpointComponent.js.map +1 -1
- package/dist/commonjs/queryExecutionContext/EndpointComponent/NonStreamingOrderByDistinctEndpointComponent.js +23 -7
- package/dist/commonjs/queryExecutionContext/EndpointComponent/NonStreamingOrderByDistinctEndpointComponent.js.map +1 -1
- package/dist/commonjs/queryExecutionContext/EndpointComponent/NonStreamingOrderByEndpointComponent.js +14 -6
- package/dist/commonjs/queryExecutionContext/EndpointComponent/NonStreamingOrderByEndpointComponent.js.map +1 -1
- package/dist/commonjs/queryExecutionContext/EndpointComponent/OffsetLimitEndpointComponent.js +3 -0
- package/dist/commonjs/queryExecutionContext/EndpointComponent/OffsetLimitEndpointComponent.js.map +1 -1
- package/dist/commonjs/queryExecutionContext/EndpointComponent/OrderByEndpointComponent.js +2 -0
- package/dist/commonjs/queryExecutionContext/EndpointComponent/OrderByEndpointComponent.js.map +1 -1
- package/dist/commonjs/queryExecutionContext/EndpointComponent/OrderedDistinctEndpointComponent.js +2 -0
- package/dist/commonjs/queryExecutionContext/EndpointComponent/OrderedDistinctEndpointComponent.js.map +1 -1
- package/dist/commonjs/queryExecutionContext/EndpointComponent/UnorderedDistinctEndpointComponent.js +2 -0
- package/dist/commonjs/queryExecutionContext/EndpointComponent/UnorderedDistinctEndpointComponent.js.map +1 -1
- package/dist/commonjs/queryExecutionContext/FetchResult.js +4 -0
- package/dist/commonjs/queryExecutionContext/FetchResult.js.map +1 -1
- package/dist/commonjs/queryExecutionContext/defaultQueryExecutionContext.js +14 -2
- package/dist/commonjs/queryExecutionContext/defaultQueryExecutionContext.js.map +1 -1
- package/dist/commonjs/queryExecutionContext/documentProducer.js +34 -21
- package/dist/commonjs/queryExecutionContext/documentProducer.js.map +1 -1
- package/dist/commonjs/queryExecutionContext/hybridQueryExecutionContext.js +41 -27
- package/dist/commonjs/queryExecutionContext/hybridQueryExecutionContext.js.map +1 -1
- package/dist/commonjs/queryExecutionContext/orderByComparator.js +1 -0
- package/dist/commonjs/queryExecutionContext/orderByComparator.js.map +1 -1
- package/dist/commonjs/queryExecutionContext/orderByDocumentProducerComparator.js +1 -0
- package/dist/commonjs/queryExecutionContext/orderByDocumentProducerComparator.js.map +1 -1
- package/dist/commonjs/queryExecutionContext/orderByQueryExecutionContext.js +1 -0
- package/dist/commonjs/queryExecutionContext/orderByQueryExecutionContext.js.map +1 -1
- package/dist/commonjs/queryExecutionContext/parallelQueryExecutionContextBase.js +20 -2
- package/dist/commonjs/queryExecutionContext/parallelQueryExecutionContextBase.js.map +1 -1
- package/dist/commonjs/queryExecutionContext/pipelinedQueryExecutionContext.js +14 -4
- package/dist/commonjs/queryExecutionContext/pipelinedQueryExecutionContext.js.map +1 -1
- package/dist/commonjs/queryIterator.js +41 -33
- package/dist/commonjs/queryIterator.js.map +1 -1
- package/dist/commonjs/queryMetrics/clientSideMetrics.js +2 -1
- package/dist/commonjs/queryMetrics/clientSideMetrics.js.map +1 -1
- package/dist/commonjs/queryMetrics/queryMetrics.js +14 -1
- package/dist/commonjs/queryMetrics/queryMetrics.js.map +1 -1
- package/dist/commonjs/queryMetrics/queryPreparationTime.js +5 -1
- package/dist/commonjs/queryMetrics/queryPreparationTime.js.map +1 -1
- package/dist/commonjs/queryMetrics/runtimeExecutionTimes.js +4 -1
- package/dist/commonjs/queryMetrics/runtimeExecutionTimes.js.map +1 -1
- package/dist/commonjs/queryMetrics/timeSpan.js +4 -3
- package/dist/commonjs/queryMetrics/timeSpan.js.map +1 -1
- package/dist/commonjs/request/ErrorResponse.js +19 -0
- package/dist/commonjs/request/ErrorResponse.js.map +1 -1
- package/dist/commonjs/request/FeedResponse.js +4 -0
- package/dist/commonjs/request/FeedResponse.js.map +1 -1
- package/dist/commonjs/request/RequestHandler.js +3 -4
- package/dist/commonjs/request/RequestHandler.js.map +1 -1
- package/dist/commonjs/request/ResourceResponse.js +5 -0
- package/dist/commonjs/request/ResourceResponse.js.map +1 -1
- package/dist/commonjs/request/SharedOptions.d.ts +5 -0
- package/dist/commonjs/request/SharedOptions.d.ts.map +1 -1
- package/dist/commonjs/request/SharedOptions.js.map +1 -1
- package/dist/commonjs/request/TimeoutError.js +1 -1
- package/dist/commonjs/request/TimeoutError.js.map +1 -1
- package/dist/commonjs/request/hybridSearchQueryResult.js +5 -0
- package/dist/commonjs/request/hybridSearchQueryResult.js.map +1 -1
- package/dist/commonjs/request/request.js +5 -1
- package/dist/commonjs/request/request.js.map +1 -1
- package/dist/commonjs/retry/bulkExecutionRetryPolicy.js +5 -2
- package/dist/commonjs/retry/bulkExecutionRetryPolicy.js.map +1 -1
- package/dist/commonjs/retry/defaultRetryPolicy.d.ts.map +1 -1
- package/dist/commonjs/retry/defaultRetryPolicy.js +6 -6
- package/dist/commonjs/retry/defaultRetryPolicy.js.map +1 -1
- package/dist/commonjs/retry/endpointDiscoveryRetryPolicy.d.ts +3 -2
- package/dist/commonjs/retry/endpointDiscoveryRetryPolicy.d.ts.map +1 -1
- package/dist/commonjs/retry/endpointDiscoveryRetryPolicy.js +24 -7
- package/dist/commonjs/retry/endpointDiscoveryRetryPolicy.js.map +1 -1
- package/dist/commonjs/retry/resourceThrottleRetryPolicy.js +20 -10
- package/dist/commonjs/retry/resourceThrottleRetryPolicy.js.map +1 -1
- package/dist/commonjs/retry/retryUtility.d.ts.map +1 -1
- package/dist/commonjs/retry/retryUtility.js +22 -8
- package/dist/commonjs/retry/retryUtility.js.map +1 -1
- package/dist/commonjs/retry/sessionRetryPolicy.js +8 -4
- package/dist/commonjs/retry/sessionRetryPolicy.js.map +1 -1
- package/dist/commonjs/retry/timeoutFailoverRetryPolicy.d.ts +1 -2
- package/dist/commonjs/retry/timeoutFailoverRetryPolicy.d.ts.map +1 -1
- package/dist/commonjs/retry/timeoutFailoverRetryPolicy.js +17 -7
- package/dist/commonjs/retry/timeoutFailoverRetryPolicy.js.map +1 -1
- package/dist/commonjs/routing/QueryRange.js +4 -0
- package/dist/commonjs/routing/QueryRange.js.map +1 -1
- package/dist/commonjs/routing/inMemoryCollectionRoutingMap.js +4 -0
- package/dist/commonjs/routing/inMemoryCollectionRoutingMap.js.map +1 -1
- package/dist/commonjs/routing/partitionKeyRangeCache.js +2 -0
- package/dist/commonjs/routing/partitionKeyRangeCache.js.map +1 -1
- package/dist/commonjs/routing/smartRoutingMapProvider.js +1 -0
- package/dist/commonjs/routing/smartRoutingMapProvider.js.map +1 -1
- package/dist/commonjs/session/VectorSessionToken.js +6 -2
- package/dist/commonjs/session/VectorSessionToken.js.map +1 -1
- package/dist/commonjs/session/sessionContainer.js +5 -3
- package/dist/commonjs/session/sessionContainer.js.map +1 -1
- package/dist/commonjs/tsdoc-metadata.json +1 -1
- package/dist/commonjs/utils/batch.js +15 -4
- package/dist/commonjs/utils/batch.js.map +1 -1
- package/dist/commonjs/utils/encode.d.ts +1 -1
- package/dist/commonjs/utils/encode.d.ts.map +1 -1
- package/dist/commonjs/utils/encode.js.map +1 -1
- package/dist/commonjs/utils/fixedSizePriorityQueue.js +4 -0
- package/dist/commonjs/utils/fixedSizePriorityQueue.js.map +1 -1
- package/dist/commonjs/utils/hashing/hash.js +1 -1
- package/dist/commonjs/utils/hashing/hash.js.map +1 -1
- package/dist/commonjs/utils/nonStreamingOrderByMap.js +2 -0
- package/dist/commonjs/utils/nonStreamingOrderByMap.js.map +1 -1
- package/dist/esm/ChangeFeedIterator.js +17 -11
- package/dist/esm/ChangeFeedIterator.js.map +1 -1
- package/dist/esm/ChangeFeedResponse.js +8 -0
- package/dist/esm/ChangeFeedResponse.js.map +1 -1
- package/dist/esm/ClientContext.d.ts.map +1 -1
- package/dist/esm/ClientContext.js +232 -48
- package/dist/esm/ClientContext.js.map +1 -1
- package/dist/esm/CosmosClient.d.ts +13 -0
- package/dist/esm/CosmosClient.d.ts.map +1 -1
- package/dist/esm/CosmosClient.js +53 -6
- package/dist/esm/CosmosClient.js.map +1 -1
- package/dist/esm/CosmosClientOptions.d.ts.map +1 -1
- package/dist/esm/CosmosClientOptions.js.map +1 -1
- package/dist/esm/CosmosDiagnostics.d.ts +4 -0
- package/dist/esm/CosmosDiagnostics.d.ts.map +1 -1
- package/dist/esm/CosmosDiagnostics.js +3 -0
- package/dist/esm/CosmosDiagnostics.js.map +1 -1
- package/dist/esm/GlobalEndpointManagerOptions.d.ts +2 -0
- package/dist/esm/GlobalEndpointManagerOptions.d.ts.map +1 -0
- package/dist/esm/GlobalEndpointManagerOptions.js +2 -0
- package/dist/esm/GlobalEndpointManagerOptions.js.map +1 -0
- package/dist/esm/PartitionKeyRangeFailoverInfo.js +8 -5
- package/dist/esm/PartitionKeyRangeFailoverInfo.js.map +1 -1
- package/dist/esm/bulk/Batcher.js +13 -3
- package/dist/esm/bulk/Batcher.js.map +1 -1
- package/dist/esm/bulk/BulkHelper.js +26 -11
- package/dist/esm/bulk/BulkHelper.js.map +1 -1
- package/dist/esm/bulk/BulkResponse.js +22 -20
- package/dist/esm/bulk/BulkResponse.js.map +1 -1
- package/dist/esm/bulk/CongestionAlgorithm.js +11 -4
- package/dist/esm/bulk/CongestionAlgorithm.js.map +1 -1
- package/dist/esm/bulk/HelperPerPartition.js +14 -1
- package/dist/esm/bulk/HelperPerPartition.js.map +1 -1
- package/dist/esm/bulk/ItemOperationContext.js +4 -0
- package/dist/esm/bulk/ItemOperationContext.js.map +1 -1
- package/dist/esm/bulk/Limiter.js +27 -18
- package/dist/esm/bulk/Limiter.js.map +1 -1
- package/dist/esm/bulk/PartitionMetric.js +4 -0
- package/dist/esm/bulk/PartitionMetric.js.map +1 -1
- package/dist/esm/client/ChangeFeed/ChangeFeedForEpkRange.d.ts.map +1 -1
- package/dist/esm/client/ChangeFeed/ChangeFeedForEpkRange.js +29 -15
- package/dist/esm/client/ChangeFeed/ChangeFeedForEpkRange.js.map +1 -1
- package/dist/esm/client/ChangeFeed/ChangeFeedForPartitionKey.d.ts.map +1 -1
- package/dist/esm/client/ChangeFeed/ChangeFeedForPartitionKey.js +19 -8
- package/dist/esm/client/ChangeFeed/ChangeFeedForPartitionKey.js.map +1 -1
- package/dist/esm/client/ChangeFeed/ChangeFeedIteratorBuilder.js +12 -9
- package/dist/esm/client/ChangeFeed/ChangeFeedIteratorBuilder.js.map +1 -1
- package/dist/esm/client/ChangeFeed/ChangeFeedIteratorOptions.d.ts +5 -0
- package/dist/esm/client/ChangeFeed/ChangeFeedIteratorOptions.d.ts.map +1 -1
- package/dist/esm/client/ChangeFeed/ChangeFeedIteratorOptions.js.map +1 -1
- package/dist/esm/client/ChangeFeed/ChangeFeedIteratorResponse.js +9 -0
- package/dist/esm/client/ChangeFeed/ChangeFeedIteratorResponse.js.map +1 -1
- package/dist/esm/client/ChangeFeed/ChangeFeedPolicy.js +1 -0
- package/dist/esm/client/ChangeFeed/ChangeFeedPolicy.js.map +1 -1
- package/dist/esm/client/ChangeFeed/ChangeFeedRange.js +20 -0
- package/dist/esm/client/ChangeFeed/ChangeFeedRange.js.map +1 -1
- package/dist/esm/client/ChangeFeed/ChangeFeedRetentionTimeSpan.js +1 -0
- package/dist/esm/client/ChangeFeed/ChangeFeedRetentionTimeSpan.js.map +1 -1
- package/dist/esm/client/ChangeFeed/ChangeFeedStartFromBeginning.js +1 -0
- package/dist/esm/client/ChangeFeed/ChangeFeedStartFromBeginning.js.map +1 -1
- package/dist/esm/client/ChangeFeed/ChangeFeedStartFromContinuation.js +1 -0
- package/dist/esm/client/ChangeFeed/ChangeFeedStartFromContinuation.js.map +1 -1
- package/dist/esm/client/ChangeFeed/ChangeFeedStartFromNow.js +1 -0
- package/dist/esm/client/ChangeFeed/ChangeFeedStartFromNow.js.map +1 -1
- package/dist/esm/client/ChangeFeed/ChangeFeedStartFromTime.js +2 -0
- package/dist/esm/client/ChangeFeed/ChangeFeedStartFromTime.js.map +1 -1
- package/dist/esm/client/ChangeFeed/CompositeContinuationToken.js +8 -0
- package/dist/esm/client/ChangeFeed/CompositeContinuationToken.js.map +1 -1
- package/dist/esm/client/ChangeFeed/ContinuationTokenForPartitionKey.js +12 -0
- package/dist/esm/client/ChangeFeed/ContinuationTokenForPartitionKey.js.map +1 -1
- package/dist/esm/client/ChangeFeed/FeedRange.js +8 -0
- package/dist/esm/client/ChangeFeed/FeedRange.js.map +1 -1
- package/dist/esm/client/ChangeFeed/FeedRangeQueue.js +1 -0
- package/dist/esm/client/ChangeFeed/FeedRangeQueue.js.map +1 -1
- package/dist/esm/client/ChangeFeed/InternalChangeFeedOptions.d.ts +1 -0
- package/dist/esm/client/ChangeFeed/InternalChangeFeedOptions.d.ts.map +1 -1
- package/dist/esm/client/ChangeFeed/InternalChangeFeedOptions.js.map +1 -1
- package/dist/esm/client/ChangeFeed/changeFeedUtils.d.ts.map +1 -1
- package/dist/esm/client/ChangeFeed/changeFeedUtils.js +6 -5
- package/dist/esm/client/ChangeFeed/changeFeedUtils.js.map +1 -1
- package/dist/esm/client/ClientUtils.js +1 -1
- package/dist/esm/client/ClientUtils.js.map +1 -1
- package/dist/esm/client/Conflict/Conflict.js +4 -0
- package/dist/esm/client/Conflict/Conflict.js.map +1 -1
- package/dist/esm/client/Conflict/ConflictResponse.js +2 -0
- package/dist/esm/client/Conflict/ConflictResponse.js.map +1 -1
- package/dist/esm/client/Conflict/Conflicts.js +2 -0
- package/dist/esm/client/Conflict/Conflicts.js.map +1 -1
- package/dist/esm/client/Container/Container.js +18 -3
- package/dist/esm/client/Container/Container.js.map +1 -1
- package/dist/esm/client/Container/ContainerResponse.js +2 -0
- package/dist/esm/client/Container/ContainerResponse.js.map +1 -1
- package/dist/esm/client/Container/Containers.js +4 -2
- package/dist/esm/client/Container/Containers.js.map +1 -1
- package/dist/esm/client/Database/Database.js +33 -0
- package/dist/esm/client/Database/Database.js.map +1 -1
- package/dist/esm/client/Database/DatabaseResponse.js +2 -0
- package/dist/esm/client/Database/DatabaseResponse.js.map +1 -1
- package/dist/esm/client/Database/Databases.js +3 -0
- package/dist/esm/client/Database/Databases.js.map +1 -1
- package/dist/esm/client/Item/Item.js +4 -0
- package/dist/esm/client/Item/Item.js.map +1 -1
- package/dist/esm/client/Item/ItemResponse.js +2 -0
- package/dist/esm/client/Item/ItemResponse.js.map +1 -1
- package/dist/esm/client/Item/Items.d.ts.map +1 -1
- package/dist/esm/client/Item/Items.js +8 -0
- package/dist/esm/client/Item/Items.js.map +1 -1
- package/dist/esm/client/Offer/Offer.js +3 -0
- package/dist/esm/client/Offer/Offer.js.map +1 -1
- package/dist/esm/client/Offer/OfferResponse.js +2 -0
- package/dist/esm/client/Offer/OfferResponse.js.map +1 -1
- package/dist/esm/client/Offer/Offers.js +2 -0
- package/dist/esm/client/Offer/Offers.js.map +1 -1
- package/dist/esm/client/Permission/Permission.js +3 -0
- package/dist/esm/client/Permission/Permission.js.map +1 -1
- package/dist/esm/client/Permission/PermissionResponse.js +2 -0
- package/dist/esm/client/Permission/PermissionResponse.js.map +1 -1
- package/dist/esm/client/Permission/Permissions.js +2 -0
- package/dist/esm/client/Permission/Permissions.js.map +1 -1
- package/dist/esm/client/SasToken/SasTokenProperties.js +17 -0
- package/dist/esm/client/SasToken/SasTokenProperties.js.map +1 -1
- package/dist/esm/client/Script/Scripts.js +5 -0
- package/dist/esm/client/Script/Scripts.js.map +1 -1
- package/dist/esm/client/StoredProcedure/StoredProcedure.js +3 -0
- package/dist/esm/client/StoredProcedure/StoredProcedure.js.map +1 -1
- package/dist/esm/client/StoredProcedure/StoredProcedureResponse.js +4 -0
- package/dist/esm/client/StoredProcedure/StoredProcedureResponse.js.map +1 -1
- package/dist/esm/client/StoredProcedure/StoredProcedures.js +2 -0
- package/dist/esm/client/StoredProcedure/StoredProcedures.js.map +1 -1
- package/dist/esm/client/Trigger/Trigger.js +3 -0
- package/dist/esm/client/Trigger/Trigger.js.map +1 -1
- package/dist/esm/client/Trigger/TriggerResponse.js +2 -0
- package/dist/esm/client/Trigger/TriggerResponse.js.map +1 -1
- package/dist/esm/client/Trigger/Triggers.js +2 -0
- package/dist/esm/client/Trigger/Triggers.js.map +1 -1
- package/dist/esm/client/User/User.js +9 -0
- package/dist/esm/client/User/User.js.map +1 -1
- package/dist/esm/client/User/UserResponse.js +2 -0
- package/dist/esm/client/User/UserResponse.js.map +1 -1
- package/dist/esm/client/User/Users.js +2 -0
- package/dist/esm/client/User/Users.js.map +1 -1
- package/dist/esm/client/UserDefinedFunction/UserDefinedFunction.js +3 -0
- package/dist/esm/client/UserDefinedFunction/UserDefinedFunction.js.map +1 -1
- package/dist/esm/client/UserDefinedFunction/UserDefinedFunctionResponse.js +2 -0
- package/dist/esm/client/UserDefinedFunction/UserDefinedFunctionResponse.js.map +1 -1
- package/dist/esm/client/UserDefinedFunction/UserDefinedFunctions.js +2 -0
- package/dist/esm/client/UserDefinedFunction/UserDefinedFunctions.js.map +1 -1
- package/dist/esm/common/constants.d.ts +4 -0
- package/dist/esm/common/constants.d.ts.map +1 -1
- package/dist/esm/common/constants.js +5 -1
- package/dist/esm/common/constants.js.map +1 -1
- package/dist/esm/common/helper.d.ts +6 -0
- package/dist/esm/common/helper.d.ts.map +1 -1
- package/dist/esm/common/helper.js +9 -1
- package/dist/esm/common/helper.js.map +1 -1
- package/dist/esm/common/platform.d.ts +1 -0
- package/dist/esm/common/platform.d.ts.map +1 -1
- package/dist/esm/common/platform.js +1 -3
- package/dist/esm/common/platform.js.map +1 -1
- package/dist/esm/diagnostics/CosmosDiagnosticsContext.js +8 -7
- package/dist/esm/diagnostics/CosmosDiagnosticsContext.js.map +1 -1
- package/dist/esm/diagnostics/DiagnosticNodeInternal.d.ts +1 -0
- package/dist/esm/diagnostics/DiagnosticNodeInternal.d.ts.map +1 -1
- package/dist/esm/diagnostics/DiagnosticNodeInternal.js +26 -7
- package/dist/esm/diagnostics/DiagnosticNodeInternal.js.map +1 -1
- package/dist/esm/diagnostics/DiagnosticWriter.js +1 -3
- package/dist/esm/diagnostics/DiagnosticWriter.js.map +1 -1
- package/dist/esm/diagnostics/index.js +2 -2
- package/dist/esm/diagnostics/index.js.map +1 -1
- package/dist/esm/documents/ConnectionPolicy.d.ts +10 -4
- package/dist/esm/documents/ConnectionPolicy.d.ts.map +1 -1
- package/dist/esm/documents/ConnectionPolicy.js +2 -2
- package/dist/esm/documents/ConnectionPolicy.js.map +1 -1
- package/dist/esm/documents/DatabaseAccount.d.ts +4 -0
- package/dist/esm/documents/DatabaseAccount.d.ts.map +1 -1
- package/dist/esm/documents/DatabaseAccount.js +29 -4
- package/dist/esm/documents/DatabaseAccount.js.map +1 -1
- package/dist/esm/documents/PartitionKey.js +1 -3
- package/dist/esm/documents/PartitionKey.js.map +1 -1
- package/dist/esm/encryption/AeadAes256CbcHmacSha256Algorithm/AeadAes256CbcHmacSha256Algorithm.js +8 -2
- package/dist/esm/encryption/AeadAes256CbcHmacSha256Algorithm/AeadAes256CbcHmacSha256Algorithm.js.map +1 -1
- package/dist/esm/encryption/Cache/ClientEncryptionKeyPropertiesCache.js +2 -0
- package/dist/esm/encryption/Cache/ClientEncryptionKeyPropertiesCache.js.map +1 -1
- package/dist/esm/encryption/Cache/EncryptionSettingsCache.js +2 -0
- package/dist/esm/encryption/Cache/EncryptionSettingsCache.js.map +1 -1
- package/dist/esm/encryption/Cache/KeyEncryptionKeyCache.js +2 -0
- package/dist/esm/encryption/Cache/KeyEncryptionKeyCache.js.map +1 -1
- package/dist/esm/encryption/Cache/ProtectedDataEncryptionKeyCache.js +5 -0
- package/dist/esm/encryption/Cache/ProtectedDataEncryptionKeyCache.js.map +1 -1
- package/dist/esm/encryption/ClientEncryptionKey/ClientEncryptionKeyResponse.js +2 -0
- package/dist/esm/encryption/ClientEncryptionKey/ClientEncryptionKeyResponse.js.map +1 -1
- package/dist/esm/encryption/EncryptionItemQueryIterator.js +24 -27
- package/dist/esm/encryption/EncryptionItemQueryIterator.js.map +1 -1
- package/dist/esm/encryption/EncryptionKey/DataEncryptionKey.js +7 -2
- package/dist/esm/encryption/EncryptionKey/DataEncryptionKey.js.map +1 -1
- package/dist/esm/encryption/EncryptionKey/ProtectedDataEncryptionKey.d.ts +0 -1
- package/dist/esm/encryption/EncryptionKey/ProtectedDataEncryptionKey.d.ts.map +1 -1
- package/dist/esm/encryption/EncryptionKey/ProtectedDataEncryptionKey.js +2 -0
- package/dist/esm/encryption/EncryptionKey/ProtectedDataEncryptionKey.js.map +1 -1
- package/dist/esm/encryption/EncryptionKeyResolver/AzureKeyVaultEncryptionKeyResolver.js +6 -5
- package/dist/esm/encryption/EncryptionKeyResolver/AzureKeyVaultEncryptionKeyResolver.js.map +1 -1
- package/dist/esm/encryption/EncryptionKeyStoreProvider.js +8 -1
- package/dist/esm/encryption/EncryptionKeyStoreProvider.js.map +1 -1
- package/dist/esm/encryption/EncryptionManager.js +6 -0
- package/dist/esm/encryption/EncryptionManager.js.map +1 -1
- package/dist/esm/encryption/EncryptionProcessor.js +5 -0
- package/dist/esm/encryption/EncryptionProcessor.js.map +1 -1
- package/dist/esm/encryption/EncryptionQueryBuilder.js +2 -0
- package/dist/esm/encryption/EncryptionQueryBuilder.js.map +1 -1
- package/dist/esm/encryption/EncryptionSettingForProperty.js +6 -0
- package/dist/esm/encryption/EncryptionSettingForProperty.js.map +1 -1
- package/dist/esm/encryption/EncryptionSettings.js +6 -3
- package/dist/esm/encryption/EncryptionSettings.js.map +1 -1
- package/dist/esm/encryption/KeyEncryptionKey.js +4 -0
- package/dist/esm/encryption/KeyEncryptionKey.js.map +1 -1
- package/dist/esm/encryption/Serializers/StringSerializer.js +1 -1
- package/dist/esm/encryption/Serializers/StringSerializer.js.map +1 -1
- package/dist/esm/extractPartitionKey.js +2 -2
- package/dist/esm/extractPartitionKey.js.map +1 -1
- package/dist/esm/globalEndpointManager.d.ts +8 -0
- package/dist/esm/globalEndpointManager.d.ts.map +1 -1
- package/dist/esm/globalEndpointManager.js +104 -29
- package/dist/esm/globalEndpointManager.js.map +1 -1
- package/dist/esm/globalPartitionEndpointManager.d.ts +0 -2
- package/dist/esm/globalPartitionEndpointManager.d.ts.map +1 -1
- package/dist/esm/globalPartitionEndpointManager.js +19 -7
- package/dist/esm/globalPartitionEndpointManager.js.map +1 -1
- package/dist/esm/queryExecutionContext/Aggregators/AverageAggregator.js +2 -0
- package/dist/esm/queryExecutionContext/Aggregators/AverageAggregator.js.map +1 -1
- package/dist/esm/queryExecutionContext/Aggregators/CountAggregator.js +1 -0
- package/dist/esm/queryExecutionContext/Aggregators/CountAggregator.js.map +1 -1
- package/dist/esm/queryExecutionContext/Aggregators/GlobalStatisticsAggregator.js +1 -0
- package/dist/esm/queryExecutionContext/Aggregators/GlobalStatisticsAggregator.js.map +1 -1
- package/dist/esm/queryExecutionContext/Aggregators/MakeListAggregator.js +1 -0
- package/dist/esm/queryExecutionContext/Aggregators/MakeListAggregator.js.map +1 -1
- package/dist/esm/queryExecutionContext/Aggregators/MakeSetAggregator.js +1 -0
- package/dist/esm/queryExecutionContext/Aggregators/MakeSetAggregator.js.map +1 -1
- package/dist/esm/queryExecutionContext/Aggregators/MaxAggregator.js +2 -0
- package/dist/esm/queryExecutionContext/Aggregators/MaxAggregator.js.map +1 -1
- package/dist/esm/queryExecutionContext/Aggregators/MinAggregator.js +2 -0
- package/dist/esm/queryExecutionContext/Aggregators/MinAggregator.js.map +1 -1
- package/dist/esm/queryExecutionContext/Aggregators/StaticValueAggregator.js +1 -0
- package/dist/esm/queryExecutionContext/Aggregators/StaticValueAggregator.js.map +1 -1
- package/dist/esm/queryExecutionContext/Aggregators/SumAggregator.js +1 -0
- package/dist/esm/queryExecutionContext/Aggregators/SumAggregator.js.map +1 -1
- package/dist/esm/queryExecutionContext/EndpointComponent/GroupByEndpointComponent.js +5 -3
- package/dist/esm/queryExecutionContext/EndpointComponent/GroupByEndpointComponent.js.map +1 -1
- package/dist/esm/queryExecutionContext/EndpointComponent/GroupByValueEndpointComponent.js +6 -3
- package/dist/esm/queryExecutionContext/EndpointComponent/GroupByValueEndpointComponent.js.map +1 -1
- package/dist/esm/queryExecutionContext/EndpointComponent/NonStreamingOrderByDistinctEndpointComponent.js +23 -7
- package/dist/esm/queryExecutionContext/EndpointComponent/NonStreamingOrderByDistinctEndpointComponent.js.map +1 -1
- package/dist/esm/queryExecutionContext/EndpointComponent/NonStreamingOrderByEndpointComponent.js +14 -6
- package/dist/esm/queryExecutionContext/EndpointComponent/NonStreamingOrderByEndpointComponent.js.map +1 -1
- package/dist/esm/queryExecutionContext/EndpointComponent/OffsetLimitEndpointComponent.js +3 -0
- package/dist/esm/queryExecutionContext/EndpointComponent/OffsetLimitEndpointComponent.js.map +1 -1
- package/dist/esm/queryExecutionContext/EndpointComponent/OrderByEndpointComponent.js +2 -0
- package/dist/esm/queryExecutionContext/EndpointComponent/OrderByEndpointComponent.js.map +1 -1
- package/dist/esm/queryExecutionContext/EndpointComponent/OrderedDistinctEndpointComponent.js +2 -0
- package/dist/esm/queryExecutionContext/EndpointComponent/OrderedDistinctEndpointComponent.js.map +1 -1
- package/dist/esm/queryExecutionContext/EndpointComponent/UnorderedDistinctEndpointComponent.js +2 -0
- package/dist/esm/queryExecutionContext/EndpointComponent/UnorderedDistinctEndpointComponent.js.map +1 -1
- package/dist/esm/queryExecutionContext/FetchResult.js +4 -0
- package/dist/esm/queryExecutionContext/FetchResult.js.map +1 -1
- package/dist/esm/queryExecutionContext/defaultQueryExecutionContext.js +14 -2
- package/dist/esm/queryExecutionContext/defaultQueryExecutionContext.js.map +1 -1
- package/dist/esm/queryExecutionContext/documentProducer.js +34 -21
- package/dist/esm/queryExecutionContext/documentProducer.js.map +1 -1
- package/dist/esm/queryExecutionContext/hybridQueryExecutionContext.js +41 -27
- package/dist/esm/queryExecutionContext/hybridQueryExecutionContext.js.map +1 -1
- package/dist/esm/queryExecutionContext/orderByComparator.js +1 -0
- package/dist/esm/queryExecutionContext/orderByComparator.js.map +1 -1
- package/dist/esm/queryExecutionContext/orderByDocumentProducerComparator.js +1 -0
- package/dist/esm/queryExecutionContext/orderByDocumentProducerComparator.js.map +1 -1
- package/dist/esm/queryExecutionContext/orderByQueryExecutionContext.js +1 -0
- package/dist/esm/queryExecutionContext/orderByQueryExecutionContext.js.map +1 -1
- package/dist/esm/queryExecutionContext/parallelQueryExecutionContextBase.js +20 -2
- package/dist/esm/queryExecutionContext/parallelQueryExecutionContextBase.js.map +1 -1
- package/dist/esm/queryExecutionContext/pipelinedQueryExecutionContext.js +14 -4
- package/dist/esm/queryExecutionContext/pipelinedQueryExecutionContext.js.map +1 -1
- package/dist/esm/queryIterator.js +41 -33
- package/dist/esm/queryIterator.js.map +1 -1
- package/dist/esm/queryMetrics/clientSideMetrics.js +2 -1
- package/dist/esm/queryMetrics/clientSideMetrics.js.map +1 -1
- package/dist/esm/queryMetrics/queryMetrics.js +14 -1
- package/dist/esm/queryMetrics/queryMetrics.js.map +1 -1
- package/dist/esm/queryMetrics/queryPreparationTime.js +5 -1
- package/dist/esm/queryMetrics/queryPreparationTime.js.map +1 -1
- package/dist/esm/queryMetrics/runtimeExecutionTimes.js +4 -1
- package/dist/esm/queryMetrics/runtimeExecutionTimes.js.map +1 -1
- package/dist/esm/queryMetrics/timeSpan.js +4 -3
- package/dist/esm/queryMetrics/timeSpan.js.map +1 -1
- package/dist/esm/request/ErrorResponse.js +19 -0
- package/dist/esm/request/ErrorResponse.js.map +1 -1
- package/dist/esm/request/FeedResponse.js +4 -0
- package/dist/esm/request/FeedResponse.js.map +1 -1
- package/dist/esm/request/RequestHandler.js +3 -4
- package/dist/esm/request/RequestHandler.js.map +1 -1
- package/dist/esm/request/ResourceResponse.js +5 -0
- package/dist/esm/request/ResourceResponse.js.map +1 -1
- package/dist/esm/request/SharedOptions.d.ts +5 -0
- package/dist/esm/request/SharedOptions.d.ts.map +1 -1
- package/dist/esm/request/SharedOptions.js.map +1 -1
- package/dist/esm/request/TimeoutError.js +1 -1
- package/dist/esm/request/TimeoutError.js.map +1 -1
- package/dist/esm/request/hybridSearchQueryResult.js +5 -0
- package/dist/esm/request/hybridSearchQueryResult.js.map +1 -1
- package/dist/esm/request/request.js +5 -1
- package/dist/esm/request/request.js.map +1 -1
- package/dist/esm/retry/bulkExecutionRetryPolicy.js +5 -2
- package/dist/esm/retry/bulkExecutionRetryPolicy.js.map +1 -1
- package/dist/esm/retry/defaultRetryPolicy.d.ts.map +1 -1
- package/dist/esm/retry/defaultRetryPolicy.js +7 -7
- package/dist/esm/retry/defaultRetryPolicy.js.map +1 -1
- package/dist/esm/retry/endpointDiscoveryRetryPolicy.d.ts +3 -2
- package/dist/esm/retry/endpointDiscoveryRetryPolicy.d.ts.map +1 -1
- package/dist/esm/retry/endpointDiscoveryRetryPolicy.js +24 -7
- package/dist/esm/retry/endpointDiscoveryRetryPolicy.js.map +1 -1
- package/dist/esm/retry/resourceThrottleRetryPolicy.js +20 -10
- package/dist/esm/retry/resourceThrottleRetryPolicy.js.map +1 -1
- package/dist/esm/retry/retryUtility.d.ts.map +1 -1
- package/dist/esm/retry/retryUtility.js +22 -8
- package/dist/esm/retry/retryUtility.js.map +1 -1
- package/dist/esm/retry/sessionRetryPolicy.js +8 -4
- package/dist/esm/retry/sessionRetryPolicy.js.map +1 -1
- package/dist/esm/retry/timeoutFailoverRetryPolicy.d.ts +1 -2
- package/dist/esm/retry/timeoutFailoverRetryPolicy.d.ts.map +1 -1
- package/dist/esm/retry/timeoutFailoverRetryPolicy.js +17 -7
- package/dist/esm/retry/timeoutFailoverRetryPolicy.js.map +1 -1
- package/dist/esm/routing/QueryRange.js +4 -0
- package/dist/esm/routing/QueryRange.js.map +1 -1
- package/dist/esm/routing/inMemoryCollectionRoutingMap.js +4 -0
- package/dist/esm/routing/inMemoryCollectionRoutingMap.js.map +1 -1
- package/dist/esm/routing/partitionKeyRangeCache.js +2 -0
- package/dist/esm/routing/partitionKeyRangeCache.js.map +1 -1
- package/dist/esm/routing/smartRoutingMapProvider.js +1 -0
- package/dist/esm/routing/smartRoutingMapProvider.js.map +1 -1
- package/dist/esm/session/VectorSessionToken.js +6 -2
- package/dist/esm/session/VectorSessionToken.js.map +1 -1
- package/dist/esm/session/sessionContainer.js +5 -3
- package/dist/esm/session/sessionContainer.js.map +1 -1
- package/dist/esm/utils/batch.js +15 -4
- package/dist/esm/utils/batch.js.map +1 -1
- package/dist/esm/utils/encode.d.ts +1 -1
- package/dist/esm/utils/encode.d.ts.map +1 -1
- package/dist/esm/utils/encode.js.map +1 -1
- package/dist/esm/utils/fixedSizePriorityQueue.js +4 -0
- package/dist/esm/utils/fixedSizePriorityQueue.js.map +1 -1
- package/dist/esm/utils/hashing/hash.js +1 -1
- package/dist/esm/utils/hashing/hash.js.map +1 -1
- package/dist/esm/utils/nonStreamingOrderByMap.js +2 -0
- package/dist/esm/utils/nonStreamingOrderByMap.js.map +1 -1
- package/dist/react-native/ChangeFeedIterator.js +17 -11
- package/dist/react-native/ChangeFeedIterator.js.map +1 -1
- package/dist/react-native/ChangeFeedResponse.js +8 -0
- package/dist/react-native/ChangeFeedResponse.js.map +1 -1
- package/dist/react-native/ClientContext.d.ts.map +1 -1
- package/dist/react-native/ClientContext.js +232 -48
- package/dist/react-native/ClientContext.js.map +1 -1
- package/dist/react-native/CosmosClient.d.ts +13 -0
- package/dist/react-native/CosmosClient.d.ts.map +1 -1
- package/dist/react-native/CosmosClient.js +53 -6
- package/dist/react-native/CosmosClient.js.map +1 -1
- package/dist/react-native/CosmosClientOptions.d.ts.map +1 -1
- package/dist/react-native/CosmosClientOptions.js.map +1 -1
- package/dist/react-native/CosmosDiagnostics.d.ts +4 -0
- package/dist/react-native/CosmosDiagnostics.d.ts.map +1 -1
- package/dist/react-native/CosmosDiagnostics.js +3 -0
- package/dist/react-native/CosmosDiagnostics.js.map +1 -1
- package/dist/react-native/GlobalEndpointManagerOptions.d.ts +2 -0
- package/dist/react-native/GlobalEndpointManagerOptions.d.ts.map +1 -0
- package/dist/react-native/GlobalEndpointManagerOptions.js +2 -0
- package/dist/react-native/GlobalEndpointManagerOptions.js.map +1 -0
- package/dist/react-native/PartitionKeyRangeFailoverInfo.js +8 -5
- package/dist/react-native/PartitionKeyRangeFailoverInfo.js.map +1 -1
- package/dist/react-native/bulk/Batcher.js +13 -3
- package/dist/react-native/bulk/Batcher.js.map +1 -1
- package/dist/react-native/bulk/BulkHelper.js +26 -11
- package/dist/react-native/bulk/BulkHelper.js.map +1 -1
- package/dist/react-native/bulk/BulkResponse.js +22 -20
- package/dist/react-native/bulk/BulkResponse.js.map +1 -1
- package/dist/react-native/bulk/CongestionAlgorithm.js +11 -4
- package/dist/react-native/bulk/CongestionAlgorithm.js.map +1 -1
- package/dist/react-native/bulk/HelperPerPartition.js +14 -1
- package/dist/react-native/bulk/HelperPerPartition.js.map +1 -1
- package/dist/react-native/bulk/ItemOperationContext.js +4 -0
- package/dist/react-native/bulk/ItemOperationContext.js.map +1 -1
- package/dist/react-native/bulk/Limiter.js +27 -18
- package/dist/react-native/bulk/Limiter.js.map +1 -1
- package/dist/react-native/bulk/PartitionMetric.js +4 -0
- package/dist/react-native/bulk/PartitionMetric.js.map +1 -1
- package/dist/react-native/client/ChangeFeed/ChangeFeedForEpkRange.d.ts.map +1 -1
- package/dist/react-native/client/ChangeFeed/ChangeFeedForEpkRange.js +29 -15
- package/dist/react-native/client/ChangeFeed/ChangeFeedForEpkRange.js.map +1 -1
- package/dist/react-native/client/ChangeFeed/ChangeFeedForPartitionKey.d.ts.map +1 -1
- package/dist/react-native/client/ChangeFeed/ChangeFeedForPartitionKey.js +19 -8
- package/dist/react-native/client/ChangeFeed/ChangeFeedForPartitionKey.js.map +1 -1
- package/dist/react-native/client/ChangeFeed/ChangeFeedIteratorBuilder.js +12 -9
- package/dist/react-native/client/ChangeFeed/ChangeFeedIteratorBuilder.js.map +1 -1
- package/dist/react-native/client/ChangeFeed/ChangeFeedIteratorOptions.d.ts +5 -0
- package/dist/react-native/client/ChangeFeed/ChangeFeedIteratorOptions.d.ts.map +1 -1
- package/dist/react-native/client/ChangeFeed/ChangeFeedIteratorOptions.js.map +1 -1
- package/dist/react-native/client/ChangeFeed/ChangeFeedIteratorResponse.js +9 -0
- package/dist/react-native/client/ChangeFeed/ChangeFeedIteratorResponse.js.map +1 -1
- package/dist/react-native/client/ChangeFeed/ChangeFeedPolicy.js +1 -0
- package/dist/react-native/client/ChangeFeed/ChangeFeedPolicy.js.map +1 -1
- package/dist/react-native/client/ChangeFeed/ChangeFeedRange.js +20 -0
- package/dist/react-native/client/ChangeFeed/ChangeFeedRange.js.map +1 -1
- package/dist/react-native/client/ChangeFeed/ChangeFeedRetentionTimeSpan.js +1 -0
- package/dist/react-native/client/ChangeFeed/ChangeFeedRetentionTimeSpan.js.map +1 -1
- package/dist/react-native/client/ChangeFeed/ChangeFeedStartFromBeginning.js +1 -0
- package/dist/react-native/client/ChangeFeed/ChangeFeedStartFromBeginning.js.map +1 -1
- package/dist/react-native/client/ChangeFeed/ChangeFeedStartFromContinuation.js +1 -0
- package/dist/react-native/client/ChangeFeed/ChangeFeedStartFromContinuation.js.map +1 -1
- package/dist/react-native/client/ChangeFeed/ChangeFeedStartFromNow.js +1 -0
- package/dist/react-native/client/ChangeFeed/ChangeFeedStartFromNow.js.map +1 -1
- package/dist/react-native/client/ChangeFeed/ChangeFeedStartFromTime.js +2 -0
- package/dist/react-native/client/ChangeFeed/ChangeFeedStartFromTime.js.map +1 -1
- package/dist/react-native/client/ChangeFeed/CompositeContinuationToken.js +8 -0
- package/dist/react-native/client/ChangeFeed/CompositeContinuationToken.js.map +1 -1
- package/dist/react-native/client/ChangeFeed/ContinuationTokenForPartitionKey.js +12 -0
- package/dist/react-native/client/ChangeFeed/ContinuationTokenForPartitionKey.js.map +1 -1
- package/dist/react-native/client/ChangeFeed/FeedRange.js +8 -0
- package/dist/react-native/client/ChangeFeed/FeedRange.js.map +1 -1
- package/dist/react-native/client/ChangeFeed/FeedRangeQueue.js +1 -0
- package/dist/react-native/client/ChangeFeed/FeedRangeQueue.js.map +1 -1
- package/dist/react-native/client/ChangeFeed/InternalChangeFeedOptions.d.ts +1 -0
- package/dist/react-native/client/ChangeFeed/InternalChangeFeedOptions.d.ts.map +1 -1
- package/dist/react-native/client/ChangeFeed/InternalChangeFeedOptions.js.map +1 -1
- package/dist/react-native/client/ChangeFeed/changeFeedUtils.d.ts.map +1 -1
- package/dist/react-native/client/ChangeFeed/changeFeedUtils.js +6 -5
- package/dist/react-native/client/ChangeFeed/changeFeedUtils.js.map +1 -1
- package/dist/react-native/client/ClientUtils.js +1 -1
- package/dist/react-native/client/ClientUtils.js.map +1 -1
- package/dist/react-native/client/Conflict/Conflict.js +4 -0
- package/dist/react-native/client/Conflict/Conflict.js.map +1 -1
- package/dist/react-native/client/Conflict/ConflictResponse.js +2 -0
- package/dist/react-native/client/Conflict/ConflictResponse.js.map +1 -1
- package/dist/react-native/client/Conflict/Conflicts.js +2 -0
- package/dist/react-native/client/Conflict/Conflicts.js.map +1 -1
- package/dist/react-native/client/Container/Container.js +18 -3
- package/dist/react-native/client/Container/Container.js.map +1 -1
- package/dist/react-native/client/Container/ContainerResponse.js +2 -0
- package/dist/react-native/client/Container/ContainerResponse.js.map +1 -1
- package/dist/react-native/client/Container/Containers.js +4 -2
- package/dist/react-native/client/Container/Containers.js.map +1 -1
- package/dist/react-native/client/Database/Database.js +33 -0
- package/dist/react-native/client/Database/Database.js.map +1 -1
- package/dist/react-native/client/Database/DatabaseResponse.js +2 -0
- package/dist/react-native/client/Database/DatabaseResponse.js.map +1 -1
- package/dist/react-native/client/Database/Databases.js +3 -0
- package/dist/react-native/client/Database/Databases.js.map +1 -1
- package/dist/react-native/client/Item/Item.js +4 -0
- package/dist/react-native/client/Item/Item.js.map +1 -1
- package/dist/react-native/client/Item/ItemResponse.js +2 -0
- package/dist/react-native/client/Item/ItemResponse.js.map +1 -1
- package/dist/react-native/client/Item/Items.d.ts.map +1 -1
- package/dist/react-native/client/Item/Items.js +8 -0
- package/dist/react-native/client/Item/Items.js.map +1 -1
- package/dist/react-native/client/Offer/Offer.js +3 -0
- package/dist/react-native/client/Offer/Offer.js.map +1 -1
- package/dist/react-native/client/Offer/OfferResponse.js +2 -0
- package/dist/react-native/client/Offer/OfferResponse.js.map +1 -1
- package/dist/react-native/client/Offer/Offers.js +2 -0
- package/dist/react-native/client/Offer/Offers.js.map +1 -1
- package/dist/react-native/client/Permission/Permission.js +3 -0
- package/dist/react-native/client/Permission/Permission.js.map +1 -1
- package/dist/react-native/client/Permission/PermissionResponse.js +2 -0
- package/dist/react-native/client/Permission/PermissionResponse.js.map +1 -1
- package/dist/react-native/client/Permission/Permissions.js +2 -0
- package/dist/react-native/client/Permission/Permissions.js.map +1 -1
- package/dist/react-native/client/SasToken/SasTokenProperties.js +17 -0
- package/dist/react-native/client/SasToken/SasTokenProperties.js.map +1 -1
- package/dist/react-native/client/Script/Scripts.js +5 -0
- package/dist/react-native/client/Script/Scripts.js.map +1 -1
- package/dist/react-native/client/StoredProcedure/StoredProcedure.js +3 -0
- package/dist/react-native/client/StoredProcedure/StoredProcedure.js.map +1 -1
- package/dist/react-native/client/StoredProcedure/StoredProcedureResponse.js +4 -0
- package/dist/react-native/client/StoredProcedure/StoredProcedureResponse.js.map +1 -1
- package/dist/react-native/client/StoredProcedure/StoredProcedures.js +2 -0
- package/dist/react-native/client/StoredProcedure/StoredProcedures.js.map +1 -1
- package/dist/react-native/client/Trigger/Trigger.js +3 -0
- package/dist/react-native/client/Trigger/Trigger.js.map +1 -1
- package/dist/react-native/client/Trigger/TriggerResponse.js +2 -0
- package/dist/react-native/client/Trigger/TriggerResponse.js.map +1 -1
- package/dist/react-native/client/Trigger/Triggers.js +2 -0
- package/dist/react-native/client/Trigger/Triggers.js.map +1 -1
- package/dist/react-native/client/User/User.js +9 -0
- package/dist/react-native/client/User/User.js.map +1 -1
- package/dist/react-native/client/User/UserResponse.js +2 -0
- package/dist/react-native/client/User/UserResponse.js.map +1 -1
- package/dist/react-native/client/User/Users.js +2 -0
- package/dist/react-native/client/User/Users.js.map +1 -1
- package/dist/react-native/client/UserDefinedFunction/UserDefinedFunction.js +3 -0
- package/dist/react-native/client/UserDefinedFunction/UserDefinedFunction.js.map +1 -1
- package/dist/react-native/client/UserDefinedFunction/UserDefinedFunctionResponse.js +2 -0
- package/dist/react-native/client/UserDefinedFunction/UserDefinedFunctionResponse.js.map +1 -1
- package/dist/react-native/client/UserDefinedFunction/UserDefinedFunctions.js +2 -0
- package/dist/react-native/client/UserDefinedFunction/UserDefinedFunctions.js.map +1 -1
- package/dist/react-native/common/constants.d.ts +4 -0
- package/dist/react-native/common/constants.d.ts.map +1 -1
- package/dist/react-native/common/constants.js +5 -1
- package/dist/react-native/common/constants.js.map +1 -1
- package/dist/react-native/common/helper.d.ts +6 -0
- package/dist/react-native/common/helper.d.ts.map +1 -1
- package/dist/react-native/common/helper.js +9 -1
- package/dist/react-native/common/helper.js.map +1 -1
- package/dist/react-native/common/platform.d.ts +1 -0
- package/dist/react-native/common/platform.d.ts.map +1 -1
- package/dist/react-native/common/platform.js +1 -3
- package/dist/react-native/common/platform.js.map +1 -1
- package/dist/react-native/diagnostics/CosmosDiagnosticsContext.js +8 -7
- package/dist/react-native/diagnostics/CosmosDiagnosticsContext.js.map +1 -1
- package/dist/react-native/diagnostics/DiagnosticNodeInternal.d.ts +1 -0
- package/dist/react-native/diagnostics/DiagnosticNodeInternal.d.ts.map +1 -1
- package/dist/react-native/diagnostics/DiagnosticNodeInternal.js +26 -7
- package/dist/react-native/diagnostics/DiagnosticNodeInternal.js.map +1 -1
- package/dist/react-native/diagnostics/DiagnosticWriter.js +1 -3
- package/dist/react-native/diagnostics/DiagnosticWriter.js.map +1 -1
- package/dist/react-native/diagnostics/index.js +2 -2
- package/dist/react-native/diagnostics/index.js.map +1 -1
- package/dist/react-native/documents/ConnectionPolicy.d.ts +10 -4
- package/dist/react-native/documents/ConnectionPolicy.d.ts.map +1 -1
- package/dist/react-native/documents/ConnectionPolicy.js +2 -2
- package/dist/react-native/documents/ConnectionPolicy.js.map +1 -1
- package/dist/react-native/documents/DatabaseAccount.d.ts +4 -0
- package/dist/react-native/documents/DatabaseAccount.d.ts.map +1 -1
- package/dist/react-native/documents/DatabaseAccount.js +29 -4
- package/dist/react-native/documents/DatabaseAccount.js.map +1 -1
- package/dist/react-native/documents/PartitionKey.js +1 -3
- package/dist/react-native/documents/PartitionKey.js.map +1 -1
- package/dist/react-native/encryption/AeadAes256CbcHmacSha256Algorithm/AeadAes256CbcHmacSha256Algorithm.js +8 -2
- package/dist/react-native/encryption/AeadAes256CbcHmacSha256Algorithm/AeadAes256CbcHmacSha256Algorithm.js.map +1 -1
- package/dist/react-native/encryption/Cache/ClientEncryptionKeyPropertiesCache.js +2 -0
- package/dist/react-native/encryption/Cache/ClientEncryptionKeyPropertiesCache.js.map +1 -1
- package/dist/react-native/encryption/Cache/EncryptionSettingsCache.js +2 -0
- package/dist/react-native/encryption/Cache/EncryptionSettingsCache.js.map +1 -1
- package/dist/react-native/encryption/Cache/KeyEncryptionKeyCache.js +2 -0
- package/dist/react-native/encryption/Cache/KeyEncryptionKeyCache.js.map +1 -1
- package/dist/react-native/encryption/Cache/ProtectedDataEncryptionKeyCache.js +5 -0
- package/dist/react-native/encryption/Cache/ProtectedDataEncryptionKeyCache.js.map +1 -1
- package/dist/react-native/encryption/ClientEncryptionKey/ClientEncryptionKeyResponse.js +2 -0
- package/dist/react-native/encryption/ClientEncryptionKey/ClientEncryptionKeyResponse.js.map +1 -1
- package/dist/react-native/encryption/EncryptionItemQueryIterator.js +24 -27
- package/dist/react-native/encryption/EncryptionItemQueryIterator.js.map +1 -1
- package/dist/react-native/encryption/EncryptionKey/DataEncryptionKey.js +7 -2
- package/dist/react-native/encryption/EncryptionKey/DataEncryptionKey.js.map +1 -1
- package/dist/react-native/encryption/EncryptionKey/ProtectedDataEncryptionKey.d.ts +0 -1
- package/dist/react-native/encryption/EncryptionKey/ProtectedDataEncryptionKey.d.ts.map +1 -1
- package/dist/react-native/encryption/EncryptionKey/ProtectedDataEncryptionKey.js +2 -0
- package/dist/react-native/encryption/EncryptionKey/ProtectedDataEncryptionKey.js.map +1 -1
- package/dist/react-native/encryption/EncryptionKeyResolver/AzureKeyVaultEncryptionKeyResolver.js +6 -5
- package/dist/react-native/encryption/EncryptionKeyResolver/AzureKeyVaultEncryptionKeyResolver.js.map +1 -1
- package/dist/react-native/encryption/EncryptionKeyStoreProvider.js +8 -1
- package/dist/react-native/encryption/EncryptionKeyStoreProvider.js.map +1 -1
- package/dist/react-native/encryption/EncryptionManager.js +6 -0
- package/dist/react-native/encryption/EncryptionManager.js.map +1 -1
- package/dist/react-native/encryption/EncryptionProcessor.js +5 -0
- package/dist/react-native/encryption/EncryptionProcessor.js.map +1 -1
- package/dist/react-native/encryption/EncryptionQueryBuilder.js +2 -0
- package/dist/react-native/encryption/EncryptionQueryBuilder.js.map +1 -1
- package/dist/react-native/encryption/EncryptionSettingForProperty.js +6 -0
- package/dist/react-native/encryption/EncryptionSettingForProperty.js.map +1 -1
- package/dist/react-native/encryption/EncryptionSettings.js +6 -3
- package/dist/react-native/encryption/EncryptionSettings.js.map +1 -1
- package/dist/react-native/encryption/KeyEncryptionKey.js +4 -0
- package/dist/react-native/encryption/KeyEncryptionKey.js.map +1 -1
- package/dist/react-native/encryption/Serializers/StringSerializer.js +1 -1
- package/dist/react-native/encryption/Serializers/StringSerializer.js.map +1 -1
- package/dist/react-native/extractPartitionKey.js +2 -2
- package/dist/react-native/extractPartitionKey.js.map +1 -1
- package/dist/react-native/globalEndpointManager.d.ts +8 -0
- package/dist/react-native/globalEndpointManager.d.ts.map +1 -1
- package/dist/react-native/globalEndpointManager.js +104 -29
- package/dist/react-native/globalEndpointManager.js.map +1 -1
- package/dist/react-native/globalPartitionEndpointManager.d.ts +0 -2
- package/dist/react-native/globalPartitionEndpointManager.d.ts.map +1 -1
- package/dist/react-native/globalPartitionEndpointManager.js +19 -7
- package/dist/react-native/globalPartitionEndpointManager.js.map +1 -1
- package/dist/react-native/queryExecutionContext/Aggregators/AverageAggregator.js +2 -0
- package/dist/react-native/queryExecutionContext/Aggregators/AverageAggregator.js.map +1 -1
- package/dist/react-native/queryExecutionContext/Aggregators/CountAggregator.js +1 -0
- package/dist/react-native/queryExecutionContext/Aggregators/CountAggregator.js.map +1 -1
- package/dist/react-native/queryExecutionContext/Aggregators/GlobalStatisticsAggregator.js +1 -0
- package/dist/react-native/queryExecutionContext/Aggregators/GlobalStatisticsAggregator.js.map +1 -1
- package/dist/react-native/queryExecutionContext/Aggregators/MakeListAggregator.js +1 -0
- package/dist/react-native/queryExecutionContext/Aggregators/MakeListAggregator.js.map +1 -1
- package/dist/react-native/queryExecutionContext/Aggregators/MakeSetAggregator.js +1 -0
- package/dist/react-native/queryExecutionContext/Aggregators/MakeSetAggregator.js.map +1 -1
- package/dist/react-native/queryExecutionContext/Aggregators/MaxAggregator.js +2 -0
- package/dist/react-native/queryExecutionContext/Aggregators/MaxAggregator.js.map +1 -1
- package/dist/react-native/queryExecutionContext/Aggregators/MinAggregator.js +2 -0
- package/dist/react-native/queryExecutionContext/Aggregators/MinAggregator.js.map +1 -1
- package/dist/react-native/queryExecutionContext/Aggregators/StaticValueAggregator.js +1 -0
- package/dist/react-native/queryExecutionContext/Aggregators/StaticValueAggregator.js.map +1 -1
- package/dist/react-native/queryExecutionContext/Aggregators/SumAggregator.js +1 -0
- package/dist/react-native/queryExecutionContext/Aggregators/SumAggregator.js.map +1 -1
- package/dist/react-native/queryExecutionContext/EndpointComponent/GroupByEndpointComponent.js +5 -3
- package/dist/react-native/queryExecutionContext/EndpointComponent/GroupByEndpointComponent.js.map +1 -1
- package/dist/react-native/queryExecutionContext/EndpointComponent/GroupByValueEndpointComponent.js +6 -3
- package/dist/react-native/queryExecutionContext/EndpointComponent/GroupByValueEndpointComponent.js.map +1 -1
- package/dist/react-native/queryExecutionContext/EndpointComponent/NonStreamingOrderByDistinctEndpointComponent.js +23 -7
- package/dist/react-native/queryExecutionContext/EndpointComponent/NonStreamingOrderByDistinctEndpointComponent.js.map +1 -1
- package/dist/react-native/queryExecutionContext/EndpointComponent/NonStreamingOrderByEndpointComponent.js +14 -6
- package/dist/react-native/queryExecutionContext/EndpointComponent/NonStreamingOrderByEndpointComponent.js.map +1 -1
- package/dist/react-native/queryExecutionContext/EndpointComponent/OffsetLimitEndpointComponent.js +3 -0
- package/dist/react-native/queryExecutionContext/EndpointComponent/OffsetLimitEndpointComponent.js.map +1 -1
- package/dist/react-native/queryExecutionContext/EndpointComponent/OrderByEndpointComponent.js +2 -0
- package/dist/react-native/queryExecutionContext/EndpointComponent/OrderByEndpointComponent.js.map +1 -1
- package/dist/react-native/queryExecutionContext/EndpointComponent/OrderedDistinctEndpointComponent.js +2 -0
- package/dist/react-native/queryExecutionContext/EndpointComponent/OrderedDistinctEndpointComponent.js.map +1 -1
- package/dist/react-native/queryExecutionContext/EndpointComponent/UnorderedDistinctEndpointComponent.js +2 -0
- package/dist/react-native/queryExecutionContext/EndpointComponent/UnorderedDistinctEndpointComponent.js.map +1 -1
- package/dist/react-native/queryExecutionContext/FetchResult.js +4 -0
- package/dist/react-native/queryExecutionContext/FetchResult.js.map +1 -1
- package/dist/react-native/queryExecutionContext/defaultQueryExecutionContext.js +14 -2
- package/dist/react-native/queryExecutionContext/defaultQueryExecutionContext.js.map +1 -1
- package/dist/react-native/queryExecutionContext/documentProducer.js +34 -21
- package/dist/react-native/queryExecutionContext/documentProducer.js.map +1 -1
- package/dist/react-native/queryExecutionContext/hybridQueryExecutionContext.js +41 -27
- package/dist/react-native/queryExecutionContext/hybridQueryExecutionContext.js.map +1 -1
- package/dist/react-native/queryExecutionContext/orderByComparator.js +1 -0
- package/dist/react-native/queryExecutionContext/orderByComparator.js.map +1 -1
- package/dist/react-native/queryExecutionContext/orderByDocumentProducerComparator.js +1 -0
- package/dist/react-native/queryExecutionContext/orderByDocumentProducerComparator.js.map +1 -1
- package/dist/react-native/queryExecutionContext/orderByQueryExecutionContext.js +1 -0
- package/dist/react-native/queryExecutionContext/orderByQueryExecutionContext.js.map +1 -1
- package/dist/react-native/queryExecutionContext/parallelQueryExecutionContextBase.js +20 -2
- package/dist/react-native/queryExecutionContext/parallelQueryExecutionContextBase.js.map +1 -1
- package/dist/react-native/queryExecutionContext/pipelinedQueryExecutionContext.js +14 -4
- package/dist/react-native/queryExecutionContext/pipelinedQueryExecutionContext.js.map +1 -1
- package/dist/react-native/queryIterator.js +41 -33
- package/dist/react-native/queryIterator.js.map +1 -1
- package/dist/react-native/queryMetrics/clientSideMetrics.js +2 -1
- package/dist/react-native/queryMetrics/clientSideMetrics.js.map +1 -1
- package/dist/react-native/queryMetrics/queryMetrics.js +14 -1
- package/dist/react-native/queryMetrics/queryMetrics.js.map +1 -1
- package/dist/react-native/queryMetrics/queryPreparationTime.js +5 -1
- package/dist/react-native/queryMetrics/queryPreparationTime.js.map +1 -1
- package/dist/react-native/queryMetrics/runtimeExecutionTimes.js +4 -1
- package/dist/react-native/queryMetrics/runtimeExecutionTimes.js.map +1 -1
- package/dist/react-native/queryMetrics/timeSpan.js +4 -3
- package/dist/react-native/queryMetrics/timeSpan.js.map +1 -1
- package/dist/react-native/request/ErrorResponse.js +19 -0
- package/dist/react-native/request/ErrorResponse.js.map +1 -1
- package/dist/react-native/request/FeedResponse.js +4 -0
- package/dist/react-native/request/FeedResponse.js.map +1 -1
- package/dist/react-native/request/RequestHandler.js +3 -4
- package/dist/react-native/request/RequestHandler.js.map +1 -1
- package/dist/react-native/request/ResourceResponse.js +5 -0
- package/dist/react-native/request/ResourceResponse.js.map +1 -1
- package/dist/react-native/request/SharedOptions.d.ts +5 -0
- package/dist/react-native/request/SharedOptions.d.ts.map +1 -1
- package/dist/react-native/request/SharedOptions.js.map +1 -1
- package/dist/react-native/request/TimeoutError.js +1 -1
- package/dist/react-native/request/TimeoutError.js.map +1 -1
- package/dist/react-native/request/hybridSearchQueryResult.js +5 -0
- package/dist/react-native/request/hybridSearchQueryResult.js.map +1 -1
- package/dist/react-native/request/request.js +5 -1
- package/dist/react-native/request/request.js.map +1 -1
- package/dist/react-native/retry/bulkExecutionRetryPolicy.js +5 -2
- package/dist/react-native/retry/bulkExecutionRetryPolicy.js.map +1 -1
- package/dist/react-native/retry/defaultRetryPolicy.d.ts.map +1 -1
- package/dist/react-native/retry/defaultRetryPolicy.js +7 -7
- package/dist/react-native/retry/defaultRetryPolicy.js.map +1 -1
- package/dist/react-native/retry/endpointDiscoveryRetryPolicy.d.ts +3 -2
- package/dist/react-native/retry/endpointDiscoveryRetryPolicy.d.ts.map +1 -1
- package/dist/react-native/retry/endpointDiscoveryRetryPolicy.js +24 -7
- package/dist/react-native/retry/endpointDiscoveryRetryPolicy.js.map +1 -1
- package/dist/react-native/retry/resourceThrottleRetryPolicy.js +20 -10
- package/dist/react-native/retry/resourceThrottleRetryPolicy.js.map +1 -1
- package/dist/react-native/retry/retryUtility.d.ts.map +1 -1
- package/dist/react-native/retry/retryUtility.js +22 -8
- package/dist/react-native/retry/retryUtility.js.map +1 -1
- package/dist/react-native/retry/sessionRetryPolicy.js +8 -4
- package/dist/react-native/retry/sessionRetryPolicy.js.map +1 -1
- package/dist/react-native/retry/timeoutFailoverRetryPolicy.d.ts +1 -2
- package/dist/react-native/retry/timeoutFailoverRetryPolicy.d.ts.map +1 -1
- package/dist/react-native/retry/timeoutFailoverRetryPolicy.js +17 -7
- package/dist/react-native/retry/timeoutFailoverRetryPolicy.js.map +1 -1
- package/dist/react-native/routing/QueryRange.js +4 -0
- package/dist/react-native/routing/QueryRange.js.map +1 -1
- package/dist/react-native/routing/inMemoryCollectionRoutingMap.js +4 -0
- package/dist/react-native/routing/inMemoryCollectionRoutingMap.js.map +1 -1
- package/dist/react-native/routing/partitionKeyRangeCache.js +2 -0
- package/dist/react-native/routing/partitionKeyRangeCache.js.map +1 -1
- package/dist/react-native/routing/smartRoutingMapProvider.js +1 -0
- package/dist/react-native/routing/smartRoutingMapProvider.js.map +1 -1
- package/dist/react-native/session/VectorSessionToken.js +6 -2
- package/dist/react-native/session/VectorSessionToken.js.map +1 -1
- package/dist/react-native/session/sessionContainer.js +5 -3
- package/dist/react-native/session/sessionContainer.js.map +1 -1
- package/dist/react-native/utils/batch.js +15 -4
- package/dist/react-native/utils/batch.js.map +1 -1
- package/dist/react-native/utils/encode.d.ts +1 -1
- package/dist/react-native/utils/encode.d.ts.map +1 -1
- package/dist/react-native/utils/encode.js.map +1 -1
- package/dist/react-native/utils/fixedSizePriorityQueue.js +4 -0
- package/dist/react-native/utils/fixedSizePriorityQueue.js.map +1 -1
- package/dist/react-native/utils/hashing/hash.js +1 -1
- package/dist/react-native/utils/hashing/hash.js.map +1 -1
- package/dist/react-native/utils/nonStreamingOrderByMap.js +2 -0
- package/dist/react-native/utils/nonStreamingOrderByMap.js.map +1 -1
- 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,
|
|
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 =
|
|
47
|
-
const decryptionDuration =
|
|
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":"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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"]}
|
|
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"]}
|
|
@@ -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;
|
|
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 =
|
|
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 =
|
|
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 =
|
|
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 =
|
|
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
|
-
|
|
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":"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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 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
|
-
|
|
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;
|
|
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
|
|
42
|
-
return diagnosticLevelFromEnvOrClient
|
|
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,
|
|
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
|
-
/**
|
|
31
|
-
*
|
|
32
|
-
*
|
|
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
|
-
/**
|
|
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
|
|
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:
|
|
25
|
-
enablePartitionLevelCircuitBreaker:
|
|
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;
|
|
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;
|
|
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;
|
|
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
|
-
|
|
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;
|
|
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"]}
|