@stacksjs/cache 0.63.0 → 0.64.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/dist/index.js +33 -6
- package/dist/index.js.map +503 -3
- package/package.json +4 -7
- package/src/drivers/dynamodb.ts +104 -119
- package/src/drivers/index.ts +1 -1
- package/src/drivers/type.ts +10 -0
package/dist/index.js.map
CHANGED
|
@@ -1,9 +1,509 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": [],
|
|
3
|
+
"sources": ["../../../../../node_modules/@smithy/protocol-http/dist-es/extensions/httpExtensionConfiguration.js", "../../../../../node_modules/@smithy/types/dist-cjs/index.js", "../../../../../node_modules/@smithy/protocol-http/dist-es/Field.js", "../../../../../node_modules/@smithy/protocol-http/dist-es/httpRequest.js", "../../../../../node_modules/@smithy/protocol-http/dist-es/httpResponse.js", "../../../../../node_modules/@smithy/protocol-http/dist-es/index.js", "../../../../../node_modules/obliterator/iterator.js", "../../../../../node_modules/obliterator/foreach.js", "../../../../../node_modules/mnemonist/utils/typed-arrays.js", "../../../../../node_modules/mnemonist/utils/iterables.js", "../../../../../node_modules/mnemonist/lru-cache.js", "../../../../../node_modules/@aws-sdk/middleware-host-header/dist-es/index.js", "../../../../../node_modules/@aws-sdk/middleware-logger/dist-es/loggerMiddleware.js", "../../../../../node_modules/@aws-sdk/middleware-logger/dist-es/index.js", "../../../../../node_modules/@aws-sdk/middleware-recursion-detection/dist-es/index.js", "../../../../../node_modules/@aws-sdk/middleware-user-agent/dist-es/configurations.js", "../../../../../node_modules/@smithy/util-endpoints/dist-es/lib/isIpAddress.js", "../../../../../node_modules/@smithy/util-endpoints/dist-es/lib/isValidHostLabel.js", "../../../../../node_modules/@smithy/util-endpoints/dist-es/utils/customEndpointFunctions.js", "../../../../../node_modules/@smithy/util-endpoints/dist-es/debug/debugId.js", "../../../../../node_modules/@smithy/util-endpoints/dist-es/debug/toDebugString.js", "../../../../../node_modules/@smithy/util-endpoints/dist-es/types/EndpointError.js", "../../../../../node_modules/@smithy/util-endpoints/dist-es/types/index.js", "../../../../../node_modules/@smithy/util-endpoints/dist-es/lib/booleanEquals.js", "../../../../../node_modules/@smithy/util-endpoints/dist-es/lib/getAttrPathList.js", "../../../../../node_modules/@smithy/util-endpoints/dist-es/lib/getAttr.js", "../../../../../node_modules/@smithy/util-endpoints/dist-es/lib/isSet.js", "../../../../../node_modules/@smithy/util-endpoints/dist-es/lib/not.js", "../../../../../node_modules/@smithy/util-endpoints/dist-es/lib/parseURL.js", "../../../../../node_modules/@smithy/util-endpoints/dist-es/lib/stringEquals.js", "../../../../../node_modules/@smithy/util-endpoints/dist-es/lib/substring.js", "../../../../../node_modules/@smithy/util-endpoints/dist-es/lib/uriEncode.js", "../../../../../node_modules/@smithy/util-endpoints/dist-es/lib/index.js", "../../../../../node_modules/@smithy/util-endpoints/dist-es/utils/endpointFunctions.js", "../../../../../node_modules/@smithy/util-endpoints/dist-es/utils/evaluateTemplate.js", "../../../../../node_modules/@smithy/util-endpoints/dist-es/utils/getReferenceValue.js", "../../../../../node_modules/@smithy/util-endpoints/dist-es/utils/evaluateExpression.js", "../../../../../node_modules/@smithy/util-endpoints/dist-es/utils/callFunction.js", "../../../../../node_modules/@smithy/util-endpoints/dist-es/utils/evaluateCondition.js", "../../../../../node_modules/@smithy/util-endpoints/dist-es/utils/evaluateConditions.js", "../../../../../node_modules/@smithy/util-endpoints/dist-es/utils/getEndpointHeaders.js", "../../../../../node_modules/@smithy/util-endpoints/dist-es/utils/getEndpointProperty.js", "../../../../../node_modules/@smithy/util-endpoints/dist-es/utils/getEndpointProperties.js", "../../../../../node_modules/@smithy/util-endpoints/dist-es/utils/getEndpointUrl.js", "../../../../../node_modules/@smithy/util-endpoints/dist-es/utils/evaluateEndpointRule.js", "../../../../../node_modules/@smithy/util-endpoints/dist-es/utils/evaluateErrorRule.js", "../../../../../node_modules/@smithy/util-endpoints/dist-es/utils/evaluateTreeRule.js", "../../../../../node_modules/@smithy/util-endpoints/dist-es/utils/evaluateRules.js", "../../../../../node_modules/@smithy/util-endpoints/dist-es/utils/index.js", "../../../../../node_modules/@smithy/util-endpoints/dist-es/resolveEndpoint.js", "../../../../../node_modules/@smithy/util-endpoints/dist-es/index.js", "../../../../../node_modules/@aws-sdk/util-endpoints/dist-es/lib/isIpAddress.js", "../../../../../node_modules/@aws-sdk/util-endpoints/dist-es/lib/aws/isVirtualHostableS3Bucket.js", "../../../../../node_modules/@aws-sdk/util-endpoints/dist-es/lib/aws/parseArn.js", "../../../../../node_modules/@aws-sdk/util-endpoints/dist-es/lib/aws/partition.js", "../../../../../node_modules/@aws-sdk/util-endpoints/dist-es/aws.js", "../../../../../node_modules/@aws-sdk/util-endpoints/dist-es/resolveEndpoint.js", "../../../../../node_modules/@aws-sdk/util-endpoints/dist-es/types/EndpointError.js", "../../../../../node_modules/@aws-sdk/util-endpoints/dist-es/types/index.js", "../../../../../node_modules/@aws-sdk/util-endpoints/dist-es/index.js", "../../../../../node_modules/@aws-sdk/middleware-user-agent/dist-es/constants.js", "../../../../../node_modules/@aws-sdk/middleware-user-agent/dist-es/user-agent-middleware.js", "../../../../../node_modules/@aws-sdk/middleware-user-agent/dist-es/index.js", "../../../../../node_modules/@smithy/util-config-provider/dist-es/booleanSelector.js", "../../../../../node_modules/@smithy/util-config-provider/dist-es/types.js", "../../../../../node_modules/@smithy/util-config-provider/dist-es/index.js", "../../../../../node_modules/@smithy/config-resolver/dist-es/endpointsConfig/NodeUseDualstackEndpointConfigOptions.js", "../../../../../node_modules/@smithy/config-resolver/dist-es/endpointsConfig/NodeUseFipsEndpointConfigOptions.js", "../../../../../node_modules/@smithy/util-middleware/dist-es/getSmithyContext.js", "../../../../../node_modules/@smithy/util-middleware/dist-es/normalizeProvider.js", "../../../../../node_modules/@smithy/util-middleware/dist-es/index.js", "../../../../../node_modules/@smithy/config-resolver/dist-es/endpointsConfig/resolveCustomEndpointsConfig.js", "../../../../../node_modules/@smithy/config-resolver/dist-es/endpointsConfig/resolveEndpointsConfig.js", "../../../../../node_modules/@smithy/config-resolver/dist-es/endpointsConfig/index.js", "../../../../../node_modules/@smithy/config-resolver/dist-es/regionConfig/config.js", "../../../../../node_modules/@smithy/config-resolver/dist-es/regionConfig/isFipsRegion.js", "../../../../../node_modules/@smithy/config-resolver/dist-es/regionConfig/getRealRegion.js", "../../../../../node_modules/@smithy/config-resolver/dist-es/regionConfig/resolveRegionConfig.js", "../../../../../node_modules/@smithy/config-resolver/dist-es/regionConfig/index.js", "../../../../../node_modules/@smithy/config-resolver/dist-es/regionInfo/index.js", "../../../../../node_modules/@smithy/config-resolver/dist-es/index.js", "../../../../../node_modules/@smithy/util-middleware/dist-cjs/index.js", "../../../../../node_modules/@smithy/property-provider/dist-cjs/index.js", "../../../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/getHomeDir.js", "../../../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFilepath.js", "../../../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/getSSOTokenFromFile.js", "../../../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/slurpFile.js", "../../../../../node_modules/@smithy/shared-ini-file-loader/dist-cjs/index.js", "../../../../../node_modules/@smithy/node-config-provider/dist-cjs/index.js", "../../../../../node_modules/@smithy/middleware-endpoint/dist-cjs/adaptors/getEndpointUrlConfig.js", "../../../../../node_modules/@smithy/middleware-endpoint/dist-cjs/adaptors/getEndpointFromConfig.js", "../../../../../node_modules/@smithy/querystring-parser/dist-cjs/index.js", "../../../../../node_modules/@smithy/url-parser/dist-cjs/index.js", "../../../../../node_modules/@smithy/middleware-serde/dist-cjs/index.js", "../../../../../node_modules/@smithy/middleware-endpoint/dist-cjs/index.js", "../../../../../node_modules/@smithy/protocol-http/dist-cjs/index.js", "../../../../../node_modules/uuid/dist/rng.js", "../../../../../node_modules/uuid/dist/regex.js", "../../../../../node_modules/uuid/dist/validate.js", "../../../../../node_modules/uuid/dist/stringify.js", "../../../../../node_modules/uuid/dist/v1.js", "../../../../../node_modules/uuid/dist/parse.js", "../../../../../node_modules/uuid/dist/v35.js", "../../../../../node_modules/uuid/dist/md5.js", "../../../../../node_modules/uuid/dist/v3.js", "../../../../../node_modules/uuid/dist/native.js", "../../../../../node_modules/uuid/dist/v4.js", "../../../../../node_modules/uuid/dist/sha1.js", "../../../../../node_modules/uuid/dist/v5.js", "../../../../../node_modules/uuid/dist/nil.js", "../../../../../node_modules/uuid/dist/version.js", "../../../../../node_modules/uuid/dist/index.js", "../../../../../node_modules/@smithy/service-error-classification/dist-cjs/index.js", "../../../../../node_modules/@smithy/util-retry/dist-cjs/index.js", "../../../../../node_modules/@smithy/middleware-stack/dist-cjs/index.js", "../../../../../node_modules/@smithy/is-array-buffer/dist-cjs/index.js", "../../../../../node_modules/@smithy/util-buffer-from/dist-cjs/index.js", "../../../../../node_modules/@smithy/util-base64/dist-cjs/fromBase64.js", "../../../../../node_modules/@smithy/util-utf8/dist-cjs/index.js", "../../../../../node_modules/@smithy/util-base64/dist-cjs/toBase64.js", "../../../../../node_modules/@smithy/util-base64/dist-cjs/index.js", "../../../../../node_modules/@smithy/util-stream/dist-cjs/getAwsChunkedEncodingStream.js", "../../../../../node_modules/@smithy/util-uri-escape/dist-cjs/index.js", "../../../../../node_modules/@smithy/querystring-builder/dist-cjs/index.js", "../../../../../node_modules/@smithy/node-http-handler/dist-cjs/index.js", "../../../../../node_modules/@smithy/fetch-http-handler/dist-cjs/index.js", "../../../../../node_modules/@smithy/util-hex-encoding/dist-cjs/index.js", "../../../../../node_modules/@smithy/util-stream/dist-cjs/stream-type-check.js", "../../../../../node_modules/@smithy/util-stream/dist-cjs/sdk-stream-mixin.browser.js", "../../../../../node_modules/@smithy/util-stream/dist-cjs/sdk-stream-mixin.js", "../../../../../node_modules/@smithy/util-stream/dist-cjs/splitStream.browser.js", "../../../../../node_modules/@smithy/util-stream/dist-cjs/splitStream.js", "../../../../../node_modules/@smithy/util-stream/dist-cjs/headStream.browser.js", "../../../../../node_modules/@smithy/util-stream/dist-cjs/headStream.js", "../../../../../node_modules/@smithy/util-stream/dist-cjs/index.js", "../../../../../node_modules/@smithy/smithy-client/dist-cjs/index.js", "../../../../../node_modules/@smithy/middleware-retry/dist-cjs/isStreamingPayload/isStreamingPayload.js", "../../../../../node_modules/@smithy/middleware-retry/dist-cjs/index.js", "../../../../../node_modules/@smithy/core/dist-cjs/index.js", "../../../../../node_modules/@smithy/middleware-content-length/dist-es/index.js", "../../../../../node_modules/@smithy/middleware-endpoint/dist-es/service-customizations/s3.js", "../../../../../node_modules/@smithy/middleware-endpoint/dist-es/service-customizations/index.js", "../../../../../node_modules/@smithy/middleware-endpoint/dist-es/adaptors/createConfigValueProvider.js", "../../../../../node_modules/@smithy/property-provider/dist-es/ProviderError.js", "../../../../../node_modules/@smithy/property-provider/dist-es/CredentialsProviderError.js", "../../../../../node_modules/@smithy/property-provider/dist-es/TokenProviderError.js", "../../../../../node_modules/@smithy/property-provider/dist-es/chain.js", "../../../../../node_modules/@smithy/property-provider/dist-es/fromStatic.js", "../../../../../node_modules/@smithy/property-provider/dist-es/memoize.js", "../../../../../node_modules/@smithy/property-provider/dist-es/index.js", "../../../../../node_modules/@smithy/node-config-provider/dist-es/getSelectorName.js", "../../../../../node_modules/@smithy/node-config-provider/dist-es/fromEnv.js", "../../../../../node_modules/@smithy/shared-ini-file-loader/dist-es/getHomeDir.js", "../../../../../node_modules/@smithy/shared-ini-file-loader/dist-es/getProfileName.js", "../../../../../node_modules/@smithy/shared-ini-file-loader/dist-es/getSSOTokenFilepath.js", "../../../../../node_modules/@smithy/shared-ini-file-loader/dist-es/getSSOTokenFromFile.js", "../../../../../node_modules/@smithy/shared-ini-file-loader/dist-es/getConfigData.js", "../../../../../node_modules/@smithy/shared-ini-file-loader/dist-es/getConfigFilepath.js", "../../../../../node_modules/@smithy/shared-ini-file-loader/dist-es/getCredentialsFilepath.js", "../../../../../node_modules/@smithy/shared-ini-file-loader/dist-es/parseIni.js", "../../../../../node_modules/@smithy/shared-ini-file-loader/dist-es/slurpFile.js", "../../../../../node_modules/@smithy/shared-ini-file-loader/dist-es/loadSharedConfigFiles.js", "../../../../../node_modules/@smithy/shared-ini-file-loader/dist-es/getSsoSessionData.js", "../../../../../node_modules/@smithy/shared-ini-file-loader/dist-es/loadSsoSessionData.js", "../../../../../node_modules/@smithy/shared-ini-file-loader/dist-es/mergeConfigFiles.js", "../../../../../node_modules/@smithy/shared-ini-file-loader/dist-es/parseKnownFiles.js", "../../../../../node_modules/@smithy/shared-ini-file-loader/dist-es/index.js", "../../../../../node_modules/@smithy/node-config-provider/dist-es/fromSharedConfigFiles.js", "../../../../../node_modules/@smithy/node-config-provider/dist-es/fromStatic.js", "../../../../../node_modules/@smithy/node-config-provider/dist-es/configLoader.js", "../../../../../node_modules/@smithy/node-config-provider/dist-es/index.js", "../../../../../node_modules/@smithy/middleware-endpoint/dist-es/adaptors/getEndpointUrlConfig.js", "../../../../../node_modules/@smithy/middleware-endpoint/dist-es/adaptors/getEndpointFromConfig.js", "../../../../../node_modules/@smithy/querystring-parser/dist-es/index.js", "../../../../../node_modules/@smithy/url-parser/dist-es/index.js", "../../../../../node_modules/@smithy/middleware-endpoint/dist-es/adaptors/toEndpointV1.js", "../../../../../node_modules/@smithy/middleware-endpoint/dist-es/adaptors/getEndpointFromInstructions.js", "../../../../../node_modules/@smithy/middleware-endpoint/dist-es/adaptors/index.js", "../../../../../node_modules/@smithy/middleware-endpoint/dist-es/endpointMiddleware.js", "../../../../../node_modules/@smithy/middleware-serde/dist-es/deserializerMiddleware.js", "../../../../../node_modules/@smithy/middleware-serde/dist-es/serializerMiddleware.js", "../../../../../node_modules/@smithy/middleware-serde/dist-es/serdePlugin.js", "../../../../../node_modules/@smithy/middleware-serde/dist-es/index.js", "../../../../../node_modules/@smithy/middleware-endpoint/dist-es/getEndpointPlugin.js", "../../../../../node_modules/@smithy/middleware-endpoint/dist-es/resolveEndpointConfig.js", "../../../../../node_modules/@smithy/middleware-endpoint/dist-es/index.js", "../../../../../node_modules/@smithy/util-retry/dist-es/config.js", "../../../../../node_modules/@smithy/service-error-classification/dist-es/constants.js", "../../../../../node_modules/@smithy/service-error-classification/dist-es/index.js", "../../../../../node_modules/@smithy/util-retry/dist-es/DefaultRateLimiter.js", "../../../../../node_modules/@smithy/util-retry/dist-es/constants.js", "../../../../../node_modules/@smithy/util-retry/dist-es/defaultRetryBackoffStrategy.js", "../../../../../node_modules/@smithy/util-retry/dist-es/defaultRetryToken.js", "../../../../../node_modules/@smithy/util-retry/dist-es/StandardRetryStrategy.js", "../../../../../node_modules/@smithy/util-retry/dist-es/AdaptiveRetryStrategy.js", "../../../../../node_modules/@smithy/util-retry/dist-es/ConfiguredRetryStrategy.js", "../../../../../node_modules/@smithy/util-retry/dist-es/index.js", "../../../../../node_modules/uuid/wrapper.mjs", "../../../../../node_modules/@smithy/middleware-retry/dist-es/defaultRetryQuota.js", "../../../../../node_modules/@smithy/middleware-retry/dist-es/delayDecider.js", "../../../../../node_modules/@smithy/middleware-retry/dist-es/retryDecider.js", "../../../../../node_modules/@smithy/middleware-retry/dist-es/util.js", "../../../../../node_modules/@smithy/middleware-retry/dist-es/StandardRetryStrategy.js", "../../../../../node_modules/@smithy/middleware-retry/dist-es/AdaptiveRetryStrategy.js", "../../../../../node_modules/@smithy/middleware-retry/dist-es/configurations.js", "../../../../../node_modules/@smithy/middleware-retry/dist-es/omitRetryHeadersMiddleware.js", "../../../../../node_modules/@smithy/smithy-client/dist-es/NoOpLogger.js", "../../../../../node_modules/@smithy/middleware-stack/dist-es/MiddlewareStack.js", "../../../../../node_modules/@smithy/middleware-stack/dist-es/index.js", "../../../../../node_modules/@smithy/smithy-client/dist-es/client.js", "../../../../../node_modules/@smithy/is-array-buffer/dist-es/index.js", "../../../../../node_modules/@smithy/util-buffer-from/dist-es/index.js", "../../../../../node_modules/@smithy/util-base64/dist-es/fromBase64.js", "../../../../../node_modules/@smithy/util-utf8/dist-es/fromUtf8.js", "../../../../../node_modules/@smithy/util-utf8/dist-es/toUint8Array.js", "../../../../../node_modules/@smithy/util-utf8/dist-es/toUtf8.js", "../../../../../node_modules/@smithy/util-utf8/dist-es/index.js", "../../../../../node_modules/@smithy/util-base64/dist-es/toBase64.js", "../../../../../node_modules/@smithy/util-base64/dist-es/index.js", "../../../../../node_modules/@smithy/util-stream/dist-es/blob/transforms.js", "../../../../../node_modules/@smithy/util-stream/dist-es/blob/Uint8ArrayBlobAdapter.js", "../../../../../node_modules/@smithy/util-uri-escape/dist-es/escape-uri.js", "../../../../../node_modules/@smithy/util-uri-escape/dist-es/index.js", "../../../../../node_modules/@smithy/querystring-builder/dist-es/index.js", "../../../../../node_modules/@smithy/node-http-handler/dist-es/constants.js", "../../../../../node_modules/@smithy/node-http-handler/dist-es/get-transformed-headers.js", "../../../../../node_modules/@smithy/node-http-handler/dist-es/set-connection-timeout.js", "../../../../../node_modules/@smithy/node-http-handler/dist-es/set-socket-keep-alive.js", "../../../../../node_modules/@smithy/node-http-handler/dist-es/set-socket-timeout.js", "../../../../../node_modules/@smithy/node-http-handler/dist-es/write-request-body.js", "../../../../../node_modules/@smithy/node-http-handler/dist-es/node-http-handler.js", "../../../../../node_modules/@smithy/node-http-handler/dist-es/node-http2-connection-manager.js", "../../../../../node_modules/@smithy/node-http-handler/dist-es/node-http2-handler.js", "../../../../../node_modules/@smithy/node-http-handler/dist-es/stream-collector/collector.js", "../../../../../node_modules/@smithy/node-http-handler/dist-es/stream-collector/index.js", "../../../../../node_modules/@smithy/node-http-handler/dist-es/index.js", "../../../../../node_modules/@smithy/fetch-http-handler/dist-es/fetch-http-handler.js", "../../../../../node_modules/@smithy/fetch-http-handler/dist-es/stream-collector.js", "../../../../../node_modules/@smithy/fetch-http-handler/dist-es/index.js", "../../../../../node_modules/@smithy/util-hex-encoding/dist-es/index.js", "../../../../../node_modules/@smithy/util-stream/dist-es/stream-type-check.js", "../../../../../node_modules/@smithy/util-stream/dist-es/sdk-stream-mixin.browser.js", "../../../../../node_modules/@smithy/util-stream/dist-es/sdk-stream-mixin.js", "../../../../../node_modules/@smithy/util-stream/dist-es/index.js", "../../../../../node_modules/@smithy/smithy-client/dist-es/collect-stream-body.js", "../../../../../node_modules/@smithy/smithy-client/dist-es/command.js", "../../../../../node_modules/@smithy/smithy-client/dist-es/constants.js", "../../../../../node_modules/@smithy/smithy-client/dist-es/create-aggregated-client.js", "../../../../../node_modules/@smithy/smithy-client/dist-es/parse-utils.js", "../../../../../node_modules/@smithy/smithy-client/dist-es/date-utils.js", "../../../../../node_modules/@smithy/smithy-client/dist-es/exceptions.js", "../../../../../node_modules/@smithy/smithy-client/dist-es/default-error-handler.js", "../../../../../node_modules/@smithy/smithy-client/dist-es/defaults-mode.js", "../../../../../node_modules/@smithy/smithy-client/dist-es/emitWarningIfUnsupportedVersion.js", "../../../../../node_modules/@smithy/smithy-client/dist-es/extensions/checksum.js", "../../../../../node_modules/@smithy/smithy-client/dist-es/extensions/retry.js", "../../../../../node_modules/@smithy/smithy-client/dist-es/extensions/defaultExtensionConfiguration.js", "../../../../../node_modules/@smithy/smithy-client/dist-es/extensions/index.js", "../../../../../node_modules/@smithy/smithy-client/dist-es/extended-encode-uri-component.js", "../../../../../node_modules/@smithy/smithy-client/dist-es/lazy-json.js", "../../../../../node_modules/@smithy/smithy-client/dist-es/object-mapping.js", "../../../../../node_modules/@smithy/smithy-client/dist-es/ser-utils.js", "../../../../../node_modules/@smithy/smithy-client/dist-es/serde-json.js", "../../../../../node_modules/@smithy/smithy-client/dist-es/index.js", "../../../../../node_modules/@smithy/middleware-retry/dist-es/isStreamingPayload/isStreamingPayload.js", "../../../../../node_modules/@smithy/middleware-retry/dist-es/retryMiddleware.js", "../../../../../node_modules/@smithy/middleware-retry/dist-es/index.js", "../../../../../node_modules/tslib/tslib.js", "../../../../../node_modules/@aws-sdk/core/dist-cjs/submodules/client/index.js", "../../../../../node_modules/@smithy/signature-v4/dist-cjs/index.js", "../../../../../node_modules/@aws-sdk/core/dist-cjs/submodules/httpAuthSchemes/index.js", "../../../../../node_modules/fast-xml-parser/src/util.js", "../../../../../node_modules/fast-xml-parser/src/validator.js", "../../../../../node_modules/fast-xml-parser/src/xmlparser/OptionsBuilder.js", "../../../../../node_modules/fast-xml-parser/src/xmlparser/xmlNode.js", "../../../../../node_modules/fast-xml-parser/src/xmlparser/DocTypeReader.js", "../../../../../node_modules/strnum/strnum.js", "../../../../../node_modules/fast-xml-parser/src/xmlparser/OrderedObjParser.js", "../../../../../node_modules/fast-xml-parser/src/xmlparser/node2json.js", "../../../../../node_modules/fast-xml-parser/src/xmlparser/XMLParser.js", "../../../../../node_modules/fast-xml-parser/src/xmlbuilder/orderedJs2Xml.js", "../../../../../node_modules/fast-xml-parser/src/xmlbuilder/json2xml.js", "../../../../../node_modules/fast-xml-parser/src/fxp.js", "../../../../../node_modules/@aws-sdk/core/dist-cjs/submodules/protocols/index.js", "../../../../../node_modules/@aws-sdk/core/dist-cjs/index.js", "../../../../../node_modules/@aws-sdk/credential-provider-env/dist-es/fromEnv.js", "../../../../../node_modules/@aws-sdk/credential-provider-env/dist-es/index.js", "../../../../../node_modules/@smithy/credential-provider-imds/dist-es/remoteProvider/httpRequest.js", "../../../../../node_modules/@smithy/credential-provider-imds/dist-es/remoteProvider/ImdsCredentials.js", "../../../../../node_modules/@smithy/credential-provider-imds/dist-es/remoteProvider/RemoteProviderInit.js", "../../../../../node_modules/@smithy/credential-provider-imds/dist-es/remoteProvider/retry.js", "../../../../../node_modules/@smithy/credential-provider-imds/dist-es/fromContainerMetadata.js", "../../../../../node_modules/@smithy/credential-provider-imds/dist-es/error/InstanceMetadataV1FallbackError.js", "../../../../../node_modules/@smithy/credential-provider-imds/dist-es/config/Endpoint.js", "../../../../../node_modules/@smithy/credential-provider-imds/dist-es/config/EndpointConfigOptions.js", "../../../../../node_modules/@smithy/credential-provider-imds/dist-es/config/EndpointMode.js", "../../../../../node_modules/@smithy/credential-provider-imds/dist-es/config/EndpointModeConfigOptions.js", "../../../../../node_modules/@smithy/credential-provider-imds/dist-es/utils/getInstanceMetadataEndpoint.js", "../../../../../node_modules/@smithy/credential-provider-imds/dist-es/utils/getExtendedInstanceMetadataCredentials.js", "../../../../../node_modules/@smithy/credential-provider-imds/dist-es/utils/staticStabilityProvider.js", "../../../../../node_modules/@smithy/credential-provider-imds/dist-es/fromInstanceMetadata.js", "../../../../../node_modules/@smithy/credential-provider-imds/dist-es/index.js", "../../../../../node_modules/@aws-sdk/credential-provider-http/dist-es/fromHttp/checkUrl.js", "../../../../../node_modules/@aws-sdk/credential-provider-http/dist-es/fromHttp/requestHelpers.js", "../../../../../node_modules/@aws-sdk/credential-provider-http/dist-es/fromHttp/retry-wrapper.js", "../../../../../node_modules/@aws-sdk/credential-provider-http/dist-es/fromHttp/fromHttp.js", "../../../../../node_modules/@aws-sdk/credential-provider-http/dist-es/index.js", "../../../../../node_modules/@aws-sdk/credential-provider-node/dist-es/remoteProvider.js", "../../../../../node_modules/@aws-sdk/credential-provider-sso/dist-es/isSsoProfile.js", "../../../../../node_modules/@aws-sdk/token-providers/dist-es/constants.js", "../../../../../node_modules/@aws-sdk/client-sso-oidc/dist-es/auth/httpAuthSchemeProvider.js", "../../../../../node_modules/@aws-sdk/client-sso-oidc/dist-es/endpoint/EndpointParameters.js", "../../../../../node_modules/@aws-sdk/util-user-agent-node/dist-es/crt-availability.js", "../../../../../node_modules/@aws-sdk/util-user-agent-node/dist-es/is-crt-available.js", "../../../../../node_modules/@aws-sdk/util-user-agent-node/dist-es/index.js", "../../../../../node_modules/@smithy/hash-node/dist-es/index.js", "../../../../../node_modules/@smithy/util-body-length-node/dist-es/calculateBodyLength.js", "../../../../../node_modules/@smithy/util-body-length-node/dist-es/index.js", "../../../../../node_modules/@aws-sdk/client-sso-oidc/dist-es/endpoint/ruleset.js", "../../../../../node_modules/@aws-sdk/client-sso-oidc/dist-es/endpoint/endpointResolver.js", "../../../../../node_modules/@aws-sdk/client-sso-oidc/dist-es/runtimeConfig.shared.js", "../../../../../node_modules/@smithy/util-defaults-mode-node/dist-es/constants.js", "../../../../../node_modules/@smithy/util-defaults-mode-node/dist-es/defaultsModeConfig.js", "../../../../../node_modules/@smithy/util-defaults-mode-node/dist-es/resolveDefaultsModeConfig.js", "../../../../../node_modules/@smithy/util-defaults-mode-node/dist-es/index.js", "../../../../../node_modules/@aws-sdk/client-sso-oidc/dist-es/runtimeConfig.js", "../../../../../node_modules/@aws-sdk/region-config-resolver/dist-es/extensions/index.js", "../../../../../node_modules/@aws-sdk/region-config-resolver/dist-es/regionConfig/resolveRegionConfig.js", "../../../../../node_modules/@aws-sdk/region-config-resolver/dist-es/regionConfig/index.js", "../../../../../node_modules/@aws-sdk/region-config-resolver/dist-es/index.js", "../../../../../node_modules/@aws-sdk/client-sso-oidc/dist-es/auth/httpAuthExtensionConfiguration.js", "../../../../../node_modules/@aws-sdk/client-sso-oidc/dist-es/runtimeExtensions.js", "../../../../../node_modules/@aws-sdk/client-sso-oidc/dist-es/SSOOIDCClient.js", "../../../../../node_modules/@aws-sdk/client-sso-oidc/dist-es/models/SSOOIDCServiceException.js", "../../../../../node_modules/@aws-sdk/client-sso-oidc/dist-es/models/models_0.js", "../../../../../node_modules/@aws-sdk/client-sso-oidc/dist-es/protocols/Aws_restJson1.js", "../../../../../node_modules/@aws-sdk/client-sso-oidc/dist-es/commands/CreateTokenCommand.js", "../../../../../node_modules/@aws-sdk/client-sso-oidc/dist-es/commands/CreateTokenWithIAMCommand.js", "../../../../../node_modules/@aws-sdk/client-sso-oidc/dist-es/commands/RegisterClientCommand.js", "../../../../../node_modules/@aws-sdk/client-sso-oidc/dist-es/commands/StartDeviceAuthorizationCommand.js", "../../../../../node_modules/@aws-sdk/client-sso-oidc/dist-es/SSOOIDC.js", "../../../../../node_modules/@aws-sdk/client-sso-oidc/dist-es/commands/index.js", "../../../../../node_modules/@aws-sdk/client-sso-oidc/dist-es/models/index.js", "../../../../../node_modules/@aws-sdk/client-sso-oidc/dist-es/index.js", "../../../../../node_modules/@aws-sdk/token-providers/dist-es/getSsoOidcClient.js", "../../../../../node_modules/@aws-sdk/token-providers/dist-es/getNewSsoOidcToken.js", "../../../../../node_modules/@aws-sdk/token-providers/dist-es/validateTokenExpiry.js", "../../../../../node_modules/@aws-sdk/token-providers/dist-es/validateTokenKey.js", "../../../../../node_modules/@aws-sdk/token-providers/dist-es/writeSSOTokenToFile.js", "../../../../../node_modules/@aws-sdk/token-providers/dist-es/fromSso.js", "../../../../../node_modules/@aws-sdk/token-providers/dist-es/fromStatic.js", "../../../../../node_modules/@aws-sdk/token-providers/dist-es/nodeProvider.js", "../../../../../node_modules/@aws-sdk/token-providers/dist-es/index.js", "../../../../../node_modules/@aws-sdk/client-sso/dist-es/auth/httpAuthSchemeProvider.js", "../../../../../node_modules/@aws-sdk/client-sso/dist-es/endpoint/EndpointParameters.js", "../../../../../node_modules/@aws-sdk/client-sso/dist-es/endpoint/ruleset.js", "../../../../../node_modules/@aws-sdk/client-sso/dist-es/endpoint/endpointResolver.js", "../../../../../node_modules/@aws-sdk/client-sso/dist-es/runtimeConfig.shared.js", "../../../../../node_modules/@aws-sdk/client-sso/dist-es/runtimeConfig.js", "../../../../../node_modules/@aws-sdk/client-sso/dist-es/auth/httpAuthExtensionConfiguration.js", "../../../../../node_modules/@aws-sdk/client-sso/dist-es/runtimeExtensions.js", "../../../../../node_modules/@aws-sdk/client-sso/dist-es/SSOClient.js", "../../../../../node_modules/@aws-sdk/client-sso/dist-es/models/SSOServiceException.js", "../../../../../node_modules/@aws-sdk/client-sso/dist-es/models/models_0.js", "../../../../../node_modules/@aws-sdk/client-sso/dist-es/protocols/Aws_restJson1.js", "../../../../../node_modules/@aws-sdk/client-sso/dist-es/commands/GetRoleCredentialsCommand.js", "../../../../../node_modules/@aws-sdk/client-sso/dist-es/commands/ListAccountRolesCommand.js", "../../../../../node_modules/@aws-sdk/client-sso/dist-es/commands/ListAccountsCommand.js", "../../../../../node_modules/@aws-sdk/client-sso/dist-es/commands/LogoutCommand.js", "../../../../../node_modules/@aws-sdk/client-sso/dist-es/SSO.js", "../../../../../node_modules/@aws-sdk/client-sso/dist-es/commands/index.js", "../../../../../node_modules/@aws-sdk/client-sso/dist-es/pagination/ListAccountRolesPaginator.js", "../../../../../node_modules/@aws-sdk/client-sso/dist-es/pagination/ListAccountsPaginator.js", "../../../../../node_modules/@aws-sdk/client-sso/dist-es/pagination/index.js", "../../../../../node_modules/@aws-sdk/client-sso/dist-es/models/index.js", "../../../../../node_modules/@aws-sdk/client-sso/dist-es/index.js", "../../../../../node_modules/@aws-sdk/credential-provider-sso/dist-es/loadSso.js", "../../../../../node_modules/@aws-sdk/credential-provider-sso/dist-es/resolveSSOCredentials.js", "../../../../../node_modules/@aws-sdk/credential-provider-sso/dist-es/validateSsoProfile.js", "../../../../../node_modules/@aws-sdk/credential-provider-sso/dist-es/fromSSO.js", "../../../../../node_modules/@aws-sdk/credential-provider-sso/dist-es/index.js", "../../../../../node_modules/@aws-sdk/credential-provider-ini/dist-es/resolveCredentialSource.js", "../../../../../node_modules/@aws-sdk/client-sts/dist-es/auth/httpAuthSchemeProvider.js", "../../../../../node_modules/@aws-sdk/client-sts/dist-es/endpoint/EndpointParameters.js", "../../../../../node_modules/@aws-sdk/client-sts/dist-es/endpoint/ruleset.js", "../../../../../node_modules/@aws-sdk/client-sts/dist-es/endpoint/endpointResolver.js", "../../../../../node_modules/@aws-sdk/client-sts/dist-es/runtimeConfig.shared.js", "../../../../../node_modules/@aws-sdk/client-sts/dist-es/runtimeConfig.js", "../../../../../node_modules/@aws-sdk/client-sts/dist-es/auth/httpAuthExtensionConfiguration.js", "../../../../../node_modules/@aws-sdk/client-sts/dist-es/runtimeExtensions.js", "../../../../../node_modules/@aws-sdk/client-sts/dist-es/STSClient.js", "../../../../../node_modules/@aws-sdk/client-sts/dist-es/models/STSServiceException.js", "../../../../../node_modules/@aws-sdk/client-sts/dist-es/models/models_0.js", "../../../../../node_modules/@aws-sdk/client-sts/dist-es/protocols/Aws_query.js", "../../../../../node_modules/@aws-sdk/client-sts/dist-es/commands/AssumeRoleCommand.js", "../../../../../node_modules/@aws-sdk/client-sts/dist-es/commands/AssumeRoleWithSAMLCommand.js", "../../../../../node_modules/@aws-sdk/client-sts/dist-es/commands/AssumeRoleWithWebIdentityCommand.js", "../../../../../node_modules/@aws-sdk/client-sts/dist-es/commands/DecodeAuthorizationMessageCommand.js", "../../../../../node_modules/@aws-sdk/client-sts/dist-es/commands/GetAccessKeyInfoCommand.js", "../../../../../node_modules/@aws-sdk/client-sts/dist-es/commands/GetCallerIdentityCommand.js", "../../../../../node_modules/@aws-sdk/client-sts/dist-es/commands/GetFederationTokenCommand.js", "../../../../../node_modules/@aws-sdk/client-sts/dist-es/commands/GetSessionTokenCommand.js", "../../../../../node_modules/@aws-sdk/client-sts/dist-es/STS.js", "../../../../../node_modules/@aws-sdk/client-sts/dist-es/commands/index.js", "../../../../../node_modules/@aws-sdk/client-sts/dist-es/models/index.js", "../../../../../node_modules/@aws-sdk/client-sts/dist-es/defaultStsRoleAssumers.js", "../../../../../node_modules/@aws-sdk/client-sts/dist-es/defaultRoleAssumers.js", "../../../../../node_modules/@aws-sdk/client-sts/dist-es/index.js", "../../../../../node_modules/@aws-sdk/credential-provider-ini/dist-es/resolveAssumeRoleCredentials.js", "../../../../../node_modules/@aws-sdk/credential-provider-process/dist-es/getValidatedProcessCredentials.js", "../../../../../node_modules/@aws-sdk/credential-provider-process/dist-es/resolveProcessCredentials.js", "../../../../../node_modules/@aws-sdk/credential-provider-process/dist-es/fromProcess.js", "../../../../../node_modules/@aws-sdk/credential-provider-process/dist-es/index.js", "../../../../../node_modules/@aws-sdk/credential-provider-ini/dist-es/resolveProcessCredentials.js", "../../../../../node_modules/@aws-sdk/credential-provider-ini/dist-es/resolveSsoCredentials.js", "../../../../../node_modules/@aws-sdk/credential-provider-ini/dist-es/resolveStaticCredentials.js", "../../../../../node_modules/@aws-sdk/credential-provider-web-identity/dist-es/fromWebToken.js", "../../../../../node_modules/@aws-sdk/credential-provider-web-identity/dist-es/fromTokenFile.js", "../../../../../node_modules/@aws-sdk/credential-provider-web-identity/dist-es/index.js", "../../../../../node_modules/@aws-sdk/credential-provider-ini/dist-es/resolveWebIdentityCredentials.js", "../../../../../node_modules/@aws-sdk/credential-provider-ini/dist-es/resolveProfileData.js", "../../../../../node_modules/@aws-sdk/credential-provider-ini/dist-es/fromIni.js", "../../../../../node_modules/@aws-sdk/credential-provider-ini/dist-es/index.js", "../../../../../node_modules/@aws-sdk/credential-provider-node/dist-es/defaultProvider.js", "../../../../../node_modules/@aws-sdk/credential-provider-node/dist-es/index.js", "../../../../../node_modules/@aws-sdk/middleware-endpoint-discovery/dist-es/configurations.js", "../../../../../node_modules/@aws-sdk/middleware-endpoint-discovery/dist-es/endpointDiscoveryMiddleware.js", "../../../../../node_modules/@aws-sdk/endpoint-cache/dist-es/EndpointCache.js", "../../../../../node_modules/@aws-sdk/middleware-endpoint-discovery/dist-es/resolveEndpointDiscoveryConfig.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/DynamoDBClient.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/auth/httpAuthSchemeProvider.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/DescribeEndpointsCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/endpoint/EndpointParameters.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/protocols/Aws_json1_0.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/models/DynamoDBServiceException.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/models/models_0.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/runtimeConfig.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/runtimeConfig.shared.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/endpoint/endpointResolver.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/endpoint/ruleset.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/runtimeExtensions.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/auth/httpAuthExtensionConfiguration.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/DynamoDB.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/BatchExecuteStatementCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/BatchGetItemCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/BatchWriteItemCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/CreateBackupCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/CreateGlobalTableCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/CreateTableCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/DeleteBackupCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/DeleteItemCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/DeleteResourcePolicyCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/DeleteTableCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/DescribeBackupCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/DescribeContinuousBackupsCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/DescribeContributorInsightsCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/DescribeExportCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/DescribeGlobalTableCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/DescribeGlobalTableSettingsCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/DescribeImportCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/DescribeKinesisStreamingDestinationCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/DescribeLimitsCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/DescribeTableCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/DescribeTableReplicaAutoScalingCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/DescribeTimeToLiveCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/DisableKinesisStreamingDestinationCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/EnableKinesisStreamingDestinationCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/ExecuteStatementCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/ExecuteTransactionCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/ExportTableToPointInTimeCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/GetItemCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/GetResourcePolicyCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/ImportTableCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/ListBackupsCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/ListContributorInsightsCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/ListExportsCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/ListGlobalTablesCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/ListImportsCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/ListTablesCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/ListTagsOfResourceCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/PutItemCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/PutResourcePolicyCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/QueryCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/RestoreTableFromBackupCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/RestoreTableToPointInTimeCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/ScanCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/TagResourceCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/TransactGetItemsCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/TransactWriteItemsCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/UntagResourceCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/UpdateContinuousBackupsCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/UpdateContributorInsightsCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/UpdateGlobalTableCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/UpdateGlobalTableSettingsCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/UpdateItemCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/UpdateKinesisStreamingDestinationCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/UpdateTableCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/UpdateTableReplicaAutoScalingCommand.js", "../../../../../node_modules/@aws-sdk/client-dynamodb/dist-es/commands/UpdateTimeToLiveCommand.js", "../src/drivers/dynamodb.ts"],
|
|
4
4
|
"sourcesContent": [
|
|
5
|
+
"export const getHttpHandlerExtensionConfiguration = (runtimeConfig) => {\n let httpHandler = runtimeConfig.httpHandler;\n return {\n setHttpHandler(handler) {\n httpHandler = handler;\n },\n httpHandler() {\n return httpHandler;\n },\n updateHttpClientConfig(key, value) {\n httpHandler.updateHttpClientConfig(key, value);\n },\n httpHandlerConfigs() {\n return httpHandler.httpHandlerConfigs();\n },\n };\n};\nexport const resolveHttpHandlerRuntimeConfig = (httpHandlerExtensionConfiguration) => {\n return {\n httpHandler: httpHandlerExtensionConfiguration.httpHandler(),\n };\n};\n",
|
|
6
|
+
"var __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __name = (target, value) => __defProp(target, \"name\", { value, configurable: true });\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/index.ts\nvar src_exports = {};\n__export(src_exports, {\n AlgorithmId: () => AlgorithmId,\n EndpointURLScheme: () => EndpointURLScheme,\n FieldPosition: () => FieldPosition,\n HttpApiKeyAuthLocation: () => HttpApiKeyAuthLocation,\n HttpAuthLocation: () => HttpAuthLocation,\n IniSectionType: () => IniSectionType,\n RequestHandlerProtocol: () => RequestHandlerProtocol,\n SMITHY_CONTEXT_KEY: () => SMITHY_CONTEXT_KEY,\n getDefaultClientConfiguration: () => getDefaultClientConfiguration,\n resolveDefaultRuntimeConfig: () => resolveDefaultRuntimeConfig\n});\nmodule.exports = __toCommonJS(src_exports);\n\n// src/auth/auth.ts\nvar HttpAuthLocation = /* @__PURE__ */ ((HttpAuthLocation2) => {\n HttpAuthLocation2[\"HEADER\"] = \"header\";\n HttpAuthLocation2[\"QUERY\"] = \"query\";\n return HttpAuthLocation2;\n})(HttpAuthLocation || {});\n\n// src/auth/HttpApiKeyAuth.ts\nvar HttpApiKeyAuthLocation = /* @__PURE__ */ ((HttpApiKeyAuthLocation2) => {\n HttpApiKeyAuthLocation2[\"HEADER\"] = \"header\";\n HttpApiKeyAuthLocation2[\"QUERY\"] = \"query\";\n return HttpApiKeyAuthLocation2;\n})(HttpApiKeyAuthLocation || {});\n\n// src/endpoint.ts\nvar EndpointURLScheme = /* @__PURE__ */ ((EndpointURLScheme2) => {\n EndpointURLScheme2[\"HTTP\"] = \"http\";\n EndpointURLScheme2[\"HTTPS\"] = \"https\";\n return EndpointURLScheme2;\n})(EndpointURLScheme || {});\n\n// src/extensions/checksum.ts\nvar AlgorithmId = /* @__PURE__ */ ((AlgorithmId2) => {\n AlgorithmId2[\"MD5\"] = \"md5\";\n AlgorithmId2[\"CRC32\"] = \"crc32\";\n AlgorithmId2[\"CRC32C\"] = \"crc32c\";\n AlgorithmId2[\"SHA1\"] = \"sha1\";\n AlgorithmId2[\"SHA256\"] = \"sha256\";\n return AlgorithmId2;\n})(AlgorithmId || {});\nvar getChecksumConfiguration = /* @__PURE__ */ __name((runtimeConfig) => {\n const checksumAlgorithms = [];\n if (runtimeConfig.sha256 !== void 0) {\n checksumAlgorithms.push({\n algorithmId: () => \"sha256\" /* SHA256 */,\n checksumConstructor: () => runtimeConfig.sha256\n });\n }\n if (runtimeConfig.md5 != void 0) {\n checksumAlgorithms.push({\n algorithmId: () => \"md5\" /* MD5 */,\n checksumConstructor: () => runtimeConfig.md5\n });\n }\n return {\n _checksumAlgorithms: checksumAlgorithms,\n addChecksumAlgorithm(algo) {\n this._checksumAlgorithms.push(algo);\n },\n checksumAlgorithms() {\n return this._checksumAlgorithms;\n }\n };\n}, \"getChecksumConfiguration\");\nvar resolveChecksumRuntimeConfig = /* @__PURE__ */ __name((clientConfig) => {\n const runtimeConfig = {};\n clientConfig.checksumAlgorithms().forEach((checksumAlgorithm) => {\n runtimeConfig[checksumAlgorithm.algorithmId()] = checksumAlgorithm.checksumConstructor();\n });\n return runtimeConfig;\n}, \"resolveChecksumRuntimeConfig\");\n\n// src/extensions/defaultClientConfiguration.ts\nvar getDefaultClientConfiguration = /* @__PURE__ */ __name((runtimeConfig) => {\n return {\n ...getChecksumConfiguration(runtimeConfig)\n };\n}, \"getDefaultClientConfiguration\");\nvar resolveDefaultRuntimeConfig = /* @__PURE__ */ __name((config) => {\n return {\n ...resolveChecksumRuntimeConfig(config)\n };\n}, \"resolveDefaultRuntimeConfig\");\n\n// src/http.ts\nvar FieldPosition = /* @__PURE__ */ ((FieldPosition2) => {\n FieldPosition2[FieldPosition2[\"HEADER\"] = 0] = \"HEADER\";\n FieldPosition2[FieldPosition2[\"TRAILER\"] = 1] = \"TRAILER\";\n return FieldPosition2;\n})(FieldPosition || {});\n\n// src/middleware.ts\nvar SMITHY_CONTEXT_KEY = \"__smithy_context\";\n\n// src/profile.ts\nvar IniSectionType = /* @__PURE__ */ ((IniSectionType2) => {\n IniSectionType2[\"PROFILE\"] = \"profile\";\n IniSectionType2[\"SSO_SESSION\"] = \"sso-session\";\n IniSectionType2[\"SERVICES\"] = \"services\";\n return IniSectionType2;\n})(IniSectionType || {});\n\n// src/transfer.ts\nvar RequestHandlerProtocol = /* @__PURE__ */ ((RequestHandlerProtocol2) => {\n RequestHandlerProtocol2[\"HTTP_0_9\"] = \"http/0.9\";\n RequestHandlerProtocol2[\"HTTP_1_0\"] = \"http/1.0\";\n RequestHandlerProtocol2[\"TDS_8_0\"] = \"tds/8.0\";\n return RequestHandlerProtocol2;\n})(RequestHandlerProtocol || {});\n// Annotate the CommonJS export names for ESM import in node:\n\n0 && (module.exports = {\n HttpAuthLocation,\n HttpApiKeyAuthLocation,\n EndpointURLScheme,\n AlgorithmId,\n getDefaultClientConfiguration,\n resolveDefaultRuntimeConfig,\n FieldPosition,\n SMITHY_CONTEXT_KEY,\n IniSectionType,\n RequestHandlerProtocol\n});\n\n",
|
|
7
|
+
"import { FieldPosition } from \"@smithy/types\";\nexport class Field {\n constructor({ name, kind = FieldPosition.HEADER, values = [] }) {\n this.name = name;\n this.kind = kind;\n this.values = values;\n }\n add(value) {\n this.values.push(value);\n }\n set(values) {\n this.values = values;\n }\n remove(value) {\n this.values = this.values.filter((v) => v !== value);\n }\n toString() {\n return this.values.map((v) => (v.includes(\",\") || v.includes(\" \") ? `\"${v}\"` : v)).join(\", \");\n }\n get() {\n return this.values;\n }\n}\n",
|
|
8
|
+
"export class HttpRequest {\n constructor(options) {\n this.method = options.method || \"GET\";\n this.hostname = options.hostname || \"localhost\";\n this.port = options.port;\n this.query = options.query || {};\n this.headers = options.headers || {};\n this.body = options.body;\n this.protocol = options.protocol\n ? options.protocol.slice(-1) !== \":\"\n ? `${options.protocol}:`\n : options.protocol\n : \"https:\";\n this.path = options.path ? (options.path.charAt(0) !== \"/\" ? `/${options.path}` : options.path) : \"/\";\n this.username = options.username;\n this.password = options.password;\n this.fragment = options.fragment;\n }\n static clone(request) {\n const cloned = new HttpRequest({\n ...request,\n headers: { ...request.headers },\n });\n if (cloned.query) {\n cloned.query = cloneQuery(cloned.query);\n }\n return cloned;\n }\n static isInstance(request) {\n if (!request) {\n return false;\n }\n const req = request;\n return (\"method\" in req &&\n \"protocol\" in req &&\n \"hostname\" in req &&\n \"path\" in req &&\n typeof req[\"query\"] === \"object\" &&\n typeof req[\"headers\"] === \"object\");\n }\n clone() {\n return HttpRequest.clone(this);\n }\n}\nfunction cloneQuery(query) {\n return Object.keys(query).reduce((carry, paramName) => {\n const param = query[paramName];\n return {\n ...carry,\n [paramName]: Array.isArray(param) ? [...param] : param,\n };\n }, {});\n}\n",
|
|
9
|
+
"export class HttpResponse {\n constructor(options) {\n this.statusCode = options.statusCode;\n this.reason = options.reason;\n this.headers = options.headers || {};\n this.body = options.body;\n }\n static isInstance(response) {\n if (!response)\n return false;\n const resp = response;\n return typeof resp.statusCode === \"number\" && typeof resp.headers === \"object\";\n }\n}\n",
|
|
10
|
+
"export * from \"./extensions\";\nexport * from \"./Field\";\nexport * from \"./Fields\";\nexport * from \"./httpHandler\";\nexport * from \"./httpRequest\";\nexport * from \"./httpResponse\";\nexport * from \"./isValidHostname\";\nexport * from \"./types\";\n",
|
|
11
|
+
"/**\n * Obliterator Iterator Class\n * ===========================\n *\n * Simple class representing the library's iterators.\n */\n\n/**\n * Iterator class.\n *\n * @constructor\n * @param {function} next - Next function.\n */\nfunction Iterator(next) {\n\n // Hiding the given function\n Object.defineProperty(this, '_next', {\n writable: false,\n enumerable: false,\n value: next\n });\n\n // Is the iterator complete?\n this.done = false;\n}\n\n/**\n * Next function.\n *\n * @return {object}\n */\n// NOTE: maybe this should dropped for performance?\nIterator.prototype.next = function() {\n if (this.done)\n return {done: true};\n\n var step = this._next();\n\n if (step.done)\n this.done = true;\n\n return step;\n};\n\n/**\n * If symbols are supported, we add `next` to `Symbol.iterator`.\n */\nif (typeof Symbol !== 'undefined')\n Iterator.prototype[Symbol.iterator] = function() {\n return this;\n };\n\n/**\n * Returning an iterator of the given values.\n *\n * @param {any...} values - Values.\n * @return {Iterator}\n */\nIterator.of = function() {\n var args = arguments,\n l = args.length,\n i = 0;\n\n return new Iterator(function() {\n if (i >= l)\n return {done: true};\n\n return {done: false, value: args[i++]};\n });\n};\n\n/**\n * Returning an empty iterator.\n *\n * @return {Iterator}\n */\nIterator.empty = function() {\n var iterator = new Iterator(null);\n iterator.done = true;\n\n return iterator;\n};\n\n/**\n * Returning whether the given value is an iterator.\n *\n * @param {any} value - Value.\n * @return {boolean}\n */\nIterator.is = function(value) {\n if (value instanceof Iterator)\n return true;\n\n return (\n typeof value === 'object' &&\n value !== null &&\n typeof value.next === 'function'\n );\n};\n\n/**\n * Exporting.\n */\nmodule.exports = Iterator;\n",
|
|
12
|
+
"/**\n * Obliterator ForEach Function\n * =============================\n *\n * Helper function used to easily iterate over mixed values.\n */\n\n/**\n * Constants.\n */\nvar ARRAY_BUFFER_SUPPORT = typeof ArrayBuffer !== 'undefined',\n SYMBOL_SUPPORT = typeof Symbol !== 'undefined';\n\n/**\n * Function able to iterate over almost any iterable JS value.\n *\n * @param {any} iterable - Iterable value.\n * @param {function} callback - Callback function.\n */\nfunction forEach(iterable, callback) {\n var iterator, k, i, l, s;\n\n if (!iterable)\n throw new Error('obliterator/forEach: invalid iterable.');\n\n if (typeof callback !== 'function')\n throw new Error('obliterator/forEach: expecting a callback.');\n\n // The target is an array or a string or function arguments\n if (\n Array.isArray(iterable) ||\n (ARRAY_BUFFER_SUPPORT && ArrayBuffer.isView(iterable)) ||\n typeof iterable === 'string' ||\n iterable.toString() === '[object Arguments]'\n ) {\n for (i = 0, l = iterable.length; i < l; i++)\n callback(iterable[i], i);\n return;\n }\n\n // The target has a #.forEach method\n if (typeof iterable.forEach === 'function') {\n iterable.forEach(callback);\n return;\n }\n\n // The target is iterable\n if (\n SYMBOL_SUPPORT &&\n Symbol.iterator in iterable &&\n typeof iterable.next !== 'function'\n ) {\n iterable = iterable[Symbol.iterator]();\n }\n\n // The target is an iterator\n if (typeof iterable.next === 'function') {\n iterator = iterable;\n i = 0;\n\n while ((s = iterator.next(), s.done !== true)) {\n callback(s.value, i);\n i++;\n }\n\n return;\n }\n\n // The target is a plain object\n for (k in iterable) {\n if (iterable.hasOwnProperty(k)) {\n callback(iterable[k], k);\n }\n }\n\n return;\n}\n\n/**\n * Same function as the above `forEach` but will yield `null` when the target\n * does not have keys.\n *\n * @param {any} iterable - Iterable value.\n * @param {function} callback - Callback function.\n */\nforEach.forEachWithNullKeys = function(iterable, callback) {\n var iterator, k, i, l, s;\n\n if (!iterable)\n throw new Error('obliterator/forEachWithNullKeys: invalid iterable.');\n\n if (typeof callback !== 'function')\n throw new Error('obliterator/forEachWithNullKeys: expecting a callback.');\n\n // The target is an array or a string or function arguments\n if (\n Array.isArray(iterable) ||\n (ARRAY_BUFFER_SUPPORT && ArrayBuffer.isView(iterable)) ||\n typeof iterable === 'string' ||\n iterable.toString() === '[object Arguments]'\n ) {\n for (i = 0, l = iterable.length; i < l; i++)\n callback(iterable[i], null);\n return;\n }\n\n // The target is a Set\n if (iterable instanceof Set) {\n iterable.forEach(function(value) {\n callback(value, null);\n });\n return;\n }\n\n // The target has a #.forEach method\n if (typeof iterable.forEach === 'function') {\n iterable.forEach(callback);\n return;\n }\n\n // The target is iterable\n if (\n SYMBOL_SUPPORT &&\n Symbol.iterator in iterable &&\n typeof iterable.next !== 'function'\n ) {\n iterable = iterable[Symbol.iterator]();\n }\n\n // The target is an iterator\n if (typeof iterable.next === 'function') {\n iterator = iterable;\n i = 0;\n\n while ((s = iterator.next(), s.done !== true)) {\n callback(s.value, null);\n i++;\n }\n\n return;\n }\n\n // The target is a plain object\n for (k in iterable) {\n if (iterable.hasOwnProperty(k)) {\n callback(iterable[k], k);\n }\n }\n\n return;\n};\n\n/**\n * Exporting.\n */\nmodule.exports = forEach;\n",
|
|
13
|
+
"/**\n * Mnemonist Typed Array Helpers\n * ==============================\n *\n * Miscellaneous helpers related to typed arrays.\n */\n\n/**\n * When using an unsigned integer array to store pointers, one might want to\n * choose the optimal word size in regards to the actual numbers of pointers\n * to store.\n *\n * This helpers does just that.\n *\n * @param {number} size - Expected size of the array to map.\n * @return {TypedArray}\n */\nvar MAX_8BIT_INTEGER = Math.pow(2, 8) - 1,\n MAX_16BIT_INTEGER = Math.pow(2, 16) - 1,\n MAX_32BIT_INTEGER = Math.pow(2, 32) - 1;\n\nvar MAX_SIGNED_8BIT_INTEGER = Math.pow(2, 7) - 1,\n MAX_SIGNED_16BIT_INTEGER = Math.pow(2, 15) - 1,\n MAX_SIGNED_32BIT_INTEGER = Math.pow(2, 31) - 1;\n\nexports.getPointerArray = function(size) {\n var maxIndex = size - 1;\n\n if (maxIndex <= MAX_8BIT_INTEGER)\n return Uint8Array;\n\n if (maxIndex <= MAX_16BIT_INTEGER)\n return Uint16Array;\n\n if (maxIndex <= MAX_32BIT_INTEGER)\n return Uint32Array;\n\n return Float64Array;\n};\n\nexports.getSignedPointerArray = function(size) {\n var maxIndex = size - 1;\n\n if (maxIndex <= MAX_SIGNED_8BIT_INTEGER)\n return Int8Array;\n\n if (maxIndex <= MAX_SIGNED_16BIT_INTEGER)\n return Int16Array;\n\n if (maxIndex <= MAX_SIGNED_32BIT_INTEGER)\n return Int32Array;\n\n return Float64Array;\n};\n\n/**\n * Function returning the minimal type able to represent the given number.\n *\n * @param {number} value - Value to test.\n * @return {TypedArrayClass}\n */\nexports.getNumberType = function(value) {\n\n // <= 32 bits itnteger?\n if (value === (value | 0)) {\n\n // Negative\n if (Math.sign(value) === -1) {\n if (value <= 127 && value >= -128)\n return Int8Array;\n\n if (value <= 32767 && value >= -32768)\n return Int16Array;\n\n return Int32Array;\n }\n else {\n\n if (value <= 255)\n return Uint8Array;\n\n if (value <= 65535)\n return Uint16Array;\n\n return Uint32Array;\n }\n }\n\n // 53 bits integer & floats\n // NOTE: it's kinda hard to tell whether we could use 32bits or not...\n return Float64Array;\n};\n\n/**\n * Function returning the minimal type able to represent the given array\n * of JavaScript numbers.\n *\n * @param {array} array - Array to represent.\n * @param {function} getter - Optional getter.\n * @return {TypedArrayClass}\n */\nvar TYPE_PRIORITY = {\n Uint8Array: 1,\n Int8Array: 2,\n Uint16Array: 3,\n Int16Array: 4,\n Uint32Array: 5,\n Int32Array: 6,\n Float32Array: 7,\n Float64Array: 8\n};\n\n// TODO: make this a one-shot for one value\nexports.getMinimalRepresentation = function(array, getter) {\n var maxType = null,\n maxPriority = 0,\n p,\n t,\n v,\n i,\n l;\n\n for (i = 0, l = array.length; i < l; i++) {\n v = getter ? getter(array[i]) : array[i];\n t = exports.getNumberType(v);\n p = TYPE_PRIORITY[t.name];\n\n if (p > maxPriority) {\n maxPriority = p;\n maxType = t;\n }\n }\n\n return maxType;\n};\n\n/**\n * Function returning whether the given value is a typed array.\n *\n * @param {any} value - Value to test.\n * @return {boolean}\n */\nexports.isTypedArray = function(value) {\n return typeof ArrayBuffer !== 'undefined' && ArrayBuffer.isView(value);\n};\n\n/**\n * Function used to concat byte arrays.\n *\n * @param {...ByteArray}\n * @return {ByteArray}\n */\nexports.concat = function() {\n var length = 0,\n i,\n o,\n l;\n\n for (i = 0, l = arguments.length; i < l; i++)\n length += arguments[i].length;\n\n var array = new (arguments[0].constructor)(length);\n\n for (i = 0, o = 0; i < l; i++) {\n array.set(arguments[i], o);\n o += arguments[i].length;\n }\n\n return array;\n};\n\n/**\n * Function used to initialize a byte array of indices.\n *\n * @param {number} length - Length of target.\n * @return {ByteArray}\n */\nexports.indices = function(length) {\n var PointerArray = exports.getPointerArray(length);\n\n var array = new PointerArray(length);\n\n for (var i = 0; i < length; i++)\n array[i] = i;\n\n return array;\n};\n",
|
|
14
|
+
"/**\n * Mnemonist Iterable Function\n * ============================\n *\n * Harmonized iteration helpers over mixed iterable targets.\n */\nvar forEach = require('obliterator/foreach');\n\nvar typed = require('./typed-arrays.js');\n\n/**\n * Function used to determine whether the given object supports array-like\n * random access.\n *\n * @param {any} target - Target object.\n * @return {boolean}\n */\nfunction isArrayLike(target) {\n return Array.isArray(target) || typed.isTypedArray(target);\n}\n\n/**\n * Function used to guess the length of the structure over which we are going\n * to iterate.\n *\n * @param {any} target - Target object.\n * @return {number|undefined}\n */\nfunction guessLength(target) {\n if (typeof target.length === 'number')\n return target.length;\n\n if (typeof target.size === 'number')\n return target.size;\n\n return;\n}\n\n/**\n * Function used to convert an iterable to an array.\n *\n * @param {any} target - Iteration target.\n * @return {array}\n */\nfunction toArray(target) {\n var l = guessLength(target);\n\n var array = typeof l === 'number' ? new Array(l) : [];\n\n var i = 0;\n\n // TODO: we could optimize when given target is array like\n forEach(target, function(value) {\n array[i++] = value;\n });\n\n return array;\n}\n\n/**\n * Same as above but returns a supplementary indices array.\n *\n * @param {any} target - Iteration target.\n * @return {array}\n */\nfunction toArrayWithIndices(target) {\n var l = guessLength(target);\n\n var IndexArray = typeof l === 'number' ?\n typed.getPointerArray(l) :\n Array;\n\n var array = typeof l === 'number' ? new Array(l) : [];\n var indices = typeof l === 'number' ? new IndexArray(l) : [];\n\n var i = 0;\n\n // TODO: we could optimize when given target is array like\n forEach(target, function(value) {\n array[i] = value;\n indices[i] = i++;\n });\n\n return [array, indices];\n}\n\n/**\n * Exporting.\n */\nexports.isArrayLike = isArrayLike;\nexports.guessLength = guessLength;\nexports.toArray = toArray;\nexports.toArrayWithIndices = toArrayWithIndices;\n",
|
|
15
|
+
"/**\n * Mnemonist LRUCache\n * ===================\n *\n * JavaScript implementation of the LRU Cache data structure. To save up\n * memory and allocations this implementation represents its underlying\n * doubly-linked list as static arrays and pointers. Thus, memory is allocated\n * only once at instantiation and JS objects are never created to serve as\n * pointers. This also means this implementation does not trigger too many\n * garbage collections.\n *\n * Note that to save up memory, a LRU Cache can be implemented using a singly\n * linked list by storing predecessors' pointers as hashmap values.\n * However, this means more hashmap lookups and would probably slow the whole\n * thing down. What's more, pointers are not the things taking most space in\n * memory.\n */\nvar Iterator = require('obliterator/iterator'),\n forEach = require('obliterator/foreach'),\n typed = require('./utils/typed-arrays.js'),\n iterables = require('./utils/iterables.js');\n\n/**\n * LRUCache.\n *\n * @constructor\n * @param {function} Keys - Array class for storing keys.\n * @param {function} Values - Array class for storing values.\n * @param {number} capacity - Desired capacity.\n */\nfunction LRUCache(Keys, Values, capacity) {\n if (arguments.length < 2) {\n capacity = Keys;\n Keys = null;\n Values = null;\n }\n\n this.capacity = capacity;\n\n if (typeof this.capacity !== 'number' || this.capacity <= 0)\n throw new Error('mnemonist/lru-cache: capacity should be positive number.');\n\n var PointerArray = typed.getPointerArray(capacity);\n\n this.forward = new PointerArray(capacity);\n this.backward = new PointerArray(capacity);\n this.K = typeof Keys === 'function' ? new Keys(capacity) : new Array(capacity);\n this.V = typeof Values === 'function' ? new Values(capacity) : new Array(capacity);\n\n // Properties\n this.size = 0;\n this.head = 0;\n this.tail = 0;\n this.items = {};\n}\n\n/**\n * Method used to clear the structure.\n *\n * @return {undefined}\n */\nLRUCache.prototype.clear = function() {\n this.size = 0;\n this.head = 0;\n this.tail = 0;\n this.items = {};\n};\n\n/**\n * Method used to splay a value on top.\n *\n * @param {number} pointer - Pointer of the value to splay on top.\n * @return {LRUCache}\n */\nLRUCache.prototype.splayOnTop = function(pointer) {\n var oldHead = this.head;\n\n if (this.head === pointer)\n return this;\n\n var previous = this.backward[pointer],\n next = this.forward[pointer];\n\n if (this.tail === pointer) {\n this.tail = previous;\n }\n else {\n this.backward[next] = previous;\n }\n\n this.forward[previous] = next;\n\n this.backward[oldHead] = pointer;\n this.head = pointer;\n this.forward[pointer] = oldHead;\n\n return this;\n};\n\n/**\n * Method used to set the value for the given key in the cache.\n *\n * @param {any} key - Key.\n * @param {any} value - Value.\n * @return {undefined}\n */\nLRUCache.prototype.set = function(key, value) {\n\n // The key already exists, we just need to update the value and splay on top\n var pointer = this.items[key];\n\n if (typeof pointer !== 'undefined') {\n this.splayOnTop(pointer);\n this.V[pointer] = value;\n\n return;\n }\n\n // The cache is not yet full\n if (this.size < this.capacity) {\n pointer = this.size++;\n }\n\n // Cache is full, we need to drop the last value\n else {\n pointer = this.tail;\n this.tail = this.backward[pointer];\n delete this.items[this.K[pointer]];\n }\n\n // Storing key & value\n this.items[key] = pointer;\n this.K[pointer] = key;\n this.V[pointer] = value;\n\n // Moving the item at the front of the list\n this.forward[pointer] = this.head;\n this.backward[this.head] = pointer;\n this.head = pointer;\n};\n\n/**\n * Method used to set the value for the given key in the cache\n *\n * @param {any} key - Key.\n * @param {any} value - Value.\n * @return {{evicted: boolean, key: any, value: any}} An object containing the\n * key and value of an item that was overwritten or evicted in the set\n * operation, as well as a boolean indicating whether it was evicted due to\n * limited capacity. Return value is null if nothing was evicted or overwritten\n * during the set operation.\n */\nLRUCache.prototype.setpop = function(key, value) {\n var oldValue = null;\n var oldKey = null;\n // The key already exists, we just need to update the value and splay on top\n var pointer = this.items[key];\n\n if (typeof pointer !== 'undefined') {\n this.splayOnTop(pointer);\n oldValue = this.V[pointer];\n this.V[pointer] = value;\n return {evicted: false, key: key, value: oldValue};\n }\n\n // The cache is not yet full\n if (this.size < this.capacity) {\n pointer = this.size++;\n }\n\n // Cache is full, we need to drop the last value\n else {\n pointer = this.tail;\n this.tail = this.backward[pointer];\n oldValue = this.V[pointer];\n oldKey = this.K[pointer];\n delete this.items[this.K[pointer]];\n }\n\n // Storing key & value\n this.items[key] = pointer;\n this.K[pointer] = key;\n this.V[pointer] = value;\n\n // Moving the item at the front of the list\n this.forward[pointer] = this.head;\n this.backward[this.head] = pointer;\n this.head = pointer;\n\n // Return object if eviction took place, otherwise return null\n if (oldKey) {\n return {evicted: true, key: oldKey, value: oldValue};\n }\n else {\n return null;\n }\n};\n\n/**\n * Method used to check whether the key exists in the cache.\n *\n * @param {any} key - Key.\n * @return {boolean}\n */\nLRUCache.prototype.has = function(key) {\n return key in this.items;\n};\n\n/**\n * Method used to get the value attached to the given key. Will move the\n * related key to the front of the underlying linked list.\n *\n * @param {any} key - Key.\n * @return {any}\n */\nLRUCache.prototype.get = function(key) {\n var pointer = this.items[key];\n\n if (typeof pointer === 'undefined')\n return;\n\n this.splayOnTop(pointer);\n\n return this.V[pointer];\n};\n\n/**\n * Method used to get the value attached to the given key. Does not modify\n * the ordering of the underlying linked list.\n *\n * @param {any} key - Key.\n * @return {any}\n */\nLRUCache.prototype.peek = function(key) {\n var pointer = this.items[key];\n\n if (typeof pointer === 'undefined')\n return;\n\n return this.V[pointer];\n};\n\n/**\n * Method used to iterate over the cache's entries using a callback.\n *\n * @param {function} callback - Function to call for each item.\n * @param {object} scope - Optional scope.\n * @return {undefined}\n */\nLRUCache.prototype.forEach = function(callback, scope) {\n scope = arguments.length > 1 ? scope : this;\n\n var i = 0,\n l = this.size;\n\n var pointer = this.head,\n keys = this.K,\n values = this.V,\n forward = this.forward;\n\n while (i < l) {\n\n callback.call(scope, values[pointer], keys[pointer], this);\n pointer = forward[pointer];\n\n i++;\n }\n};\n\n/**\n * Method used to create an iterator over the cache's keys from most\n * recently used to least recently used.\n *\n * @return {Iterator}\n */\nLRUCache.prototype.keys = function() {\n var i = 0,\n l = this.size;\n\n var pointer = this.head,\n keys = this.K,\n forward = this.forward;\n\n return new Iterator(function() {\n if (i >= l)\n return {done: true};\n\n var key = keys[pointer];\n\n i++;\n\n if (i < l)\n pointer = forward[pointer];\n\n return {\n done: false,\n value: key\n };\n });\n};\n\n/**\n * Method used to create an iterator over the cache's values from most\n * recently used to least recently used.\n *\n * @return {Iterator}\n */\nLRUCache.prototype.values = function() {\n var i = 0,\n l = this.size;\n\n var pointer = this.head,\n values = this.V,\n forward = this.forward;\n\n return new Iterator(function() {\n if (i >= l)\n return {done: true};\n\n var value = values[pointer];\n\n i++;\n\n if (i < l)\n pointer = forward[pointer];\n\n return {\n done: false,\n value: value\n };\n });\n};\n\n/**\n * Method used to create an iterator over the cache's entries from most\n * recently used to least recently used.\n *\n * @return {Iterator}\n */\nLRUCache.prototype.entries = function() {\n var i = 0,\n l = this.size;\n\n var pointer = this.head,\n keys = this.K,\n values = this.V,\n forward = this.forward;\n\n return new Iterator(function() {\n if (i >= l)\n return {done: true};\n\n var key = keys[pointer],\n value = values[pointer];\n\n i++;\n\n if (i < l)\n pointer = forward[pointer];\n\n return {\n done: false,\n value: [key, value]\n };\n });\n};\n\n/**\n * Attaching the #.entries method to Symbol.iterator if possible.\n */\nif (typeof Symbol !== 'undefined')\n LRUCache.prototype[Symbol.iterator] = LRUCache.prototype.entries;\n\n/**\n * Convenience known methods.\n */\nLRUCache.prototype.inspect = function() {\n var proxy = new Map();\n\n var iterator = this.entries(),\n step;\n\n while ((step = iterator.next(), !step.done))\n proxy.set(step.value[0], step.value[1]);\n\n // Trick so that node displays the name of the constructor\n Object.defineProperty(proxy, 'constructor', {\n value: LRUCache,\n enumerable: false\n });\n\n return proxy;\n};\n\nif (typeof Symbol !== 'undefined')\n LRUCache.prototype[Symbol.for('nodejs.util.inspect.custom')] = LRUCache.prototype.inspect;\n\n/**\n * Static @.from function taking an arbitrary iterable & converting it into\n * a structure.\n *\n * @param {Iterable} iterable - Target iterable.\n * @param {function} Keys - Array class for storing keys.\n * @param {function} Values - Array class for storing values.\n * @param {number} capacity - Cache's capacity.\n * @return {LRUCache}\n */\nLRUCache.from = function(iterable, Keys, Values, capacity) {\n if (arguments.length < 2) {\n capacity = iterables.guessLength(iterable);\n\n if (typeof capacity !== 'number')\n throw new Error('mnemonist/lru-cache.from: could not guess iterable length. Please provide desired capacity as last argument.');\n }\n else if (arguments.length === 2) {\n capacity = Keys;\n Keys = null;\n Values = null;\n }\n\n var cache = new LRUCache(Keys, Values, capacity);\n\n forEach(iterable, function(value, key) {\n cache.set(key, value);\n });\n\n return cache;\n};\n\n/**\n * Exporting.\n */\nmodule.exports = LRUCache;\n",
|
|
16
|
+
"import { HttpRequest } from \"@smithy/protocol-http\";\nexport function resolveHostHeaderConfig(input) {\n return input;\n}\nexport const hostHeaderMiddleware = (options) => (next) => async (args) => {\n if (!HttpRequest.isInstance(args.request))\n return next(args);\n const { request } = args;\n const { handlerProtocol = \"\" } = options.requestHandler.metadata || {};\n if (handlerProtocol.indexOf(\"h2\") >= 0 && !request.headers[\":authority\"]) {\n delete request.headers[\"host\"];\n request.headers[\":authority\"] = request.hostname + (request.port ? \":\" + request.port : \"\");\n }\n else if (!request.headers[\"host\"]) {\n let host = request.hostname;\n if (request.port != null)\n host += `:${request.port}`;\n request.headers[\"host\"] = host;\n }\n return next(args);\n};\nexport const hostHeaderMiddlewareOptions = {\n name: \"hostHeaderMiddleware\",\n step: \"build\",\n priority: \"low\",\n tags: [\"HOST\"],\n override: true,\n};\nexport const getHostHeaderPlugin = (options) => ({\n applyToStack: (clientStack) => {\n clientStack.add(hostHeaderMiddleware(options), hostHeaderMiddlewareOptions);\n },\n});\n",
|
|
17
|
+
"export const loggerMiddleware = () => (next, context) => async (args) => {\n try {\n const response = await next(args);\n const { clientName, commandName, logger, dynamoDbDocumentClientOptions = {} } = context;\n const { overrideInputFilterSensitiveLog, overrideOutputFilterSensitiveLog } = dynamoDbDocumentClientOptions;\n const inputFilterSensitiveLog = overrideInputFilterSensitiveLog ?? context.inputFilterSensitiveLog;\n const outputFilterSensitiveLog = overrideOutputFilterSensitiveLog ?? context.outputFilterSensitiveLog;\n const { $metadata, ...outputWithoutMetadata } = response.output;\n logger?.info?.({\n clientName,\n commandName,\n input: inputFilterSensitiveLog(args.input),\n output: outputFilterSensitiveLog(outputWithoutMetadata),\n metadata: $metadata,\n });\n return response;\n }\n catch (error) {\n const { clientName, commandName, logger, dynamoDbDocumentClientOptions = {} } = context;\n const { overrideInputFilterSensitiveLog } = dynamoDbDocumentClientOptions;\n const inputFilterSensitiveLog = overrideInputFilterSensitiveLog ?? context.inputFilterSensitiveLog;\n logger?.error?.({\n clientName,\n commandName,\n input: inputFilterSensitiveLog(args.input),\n error,\n metadata: error.$metadata,\n });\n throw error;\n }\n};\nexport const loggerMiddlewareOptions = {\n name: \"loggerMiddleware\",\n tags: [\"LOGGER\"],\n step: \"initialize\",\n override: true,\n};\nexport const getLoggerPlugin = (options) => ({\n applyToStack: (clientStack) => {\n clientStack.add(loggerMiddleware(), loggerMiddlewareOptions);\n },\n});\n",
|
|
18
|
+
"export * from \"./loggerMiddleware\";\n",
|
|
19
|
+
"import { HttpRequest } from \"@smithy/protocol-http\";\nconst TRACE_ID_HEADER_NAME = \"X-Amzn-Trace-Id\";\nconst ENV_LAMBDA_FUNCTION_NAME = \"AWS_LAMBDA_FUNCTION_NAME\";\nconst ENV_TRACE_ID = \"_X_AMZN_TRACE_ID\";\nexport const recursionDetectionMiddleware = (options) => (next) => async (args) => {\n const { request } = args;\n if (!HttpRequest.isInstance(request) ||\n options.runtime !== \"node\" ||\n request.headers.hasOwnProperty(TRACE_ID_HEADER_NAME)) {\n return next(args);\n }\n const functionName = process.env[ENV_LAMBDA_FUNCTION_NAME];\n const traceId = process.env[ENV_TRACE_ID];\n const nonEmptyString = (str) => typeof str === \"string\" && str.length > 0;\n if (nonEmptyString(functionName) && nonEmptyString(traceId)) {\n request.headers[TRACE_ID_HEADER_NAME] = traceId;\n }\n return next({\n ...args,\n request,\n });\n};\nexport const addRecursionDetectionMiddlewareOptions = {\n step: \"build\",\n tags: [\"RECURSION_DETECTION\"],\n name: \"recursionDetectionMiddleware\",\n override: true,\n priority: \"low\",\n};\nexport const getRecursionDetectionPlugin = (options) => ({\n applyToStack: (clientStack) => {\n clientStack.add(recursionDetectionMiddleware(options), addRecursionDetectionMiddlewareOptions);\n },\n});\n",
|
|
20
|
+
"export function resolveUserAgentConfig(input) {\n return {\n ...input,\n customUserAgent: typeof input.customUserAgent === \"string\" ? [[input.customUserAgent]] : input.customUserAgent,\n };\n}\n",
|
|
21
|
+
"const IP_V4_REGEX = new RegExp(`^(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)(?:\\\\.(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)){3}$`);\nexport const isIpAddress = (value) => IP_V4_REGEX.test(value) || (value.startsWith(\"[\") && value.endsWith(\"]\"));\n",
|
|
22
|
+
"const VALID_HOST_LABEL_REGEX = new RegExp(`^(?!.*-$)(?!-)[a-zA-Z0-9-]{1,63}$`);\nexport const isValidHostLabel = (value, allowSubDomains = false) => {\n if (!allowSubDomains) {\n return VALID_HOST_LABEL_REGEX.test(value);\n }\n const labels = value.split(\".\");\n for (const label of labels) {\n if (!isValidHostLabel(label)) {\n return false;\n }\n }\n return true;\n};\n",
|
|
23
|
+
"export const customEndpointFunctions = {};\n",
|
|
24
|
+
"export const debugId = \"endpoints\";\n",
|
|
25
|
+
"export function toDebugString(input) {\n if (typeof input !== \"object\" || input == null) {\n return input;\n }\n if (\"ref\" in input) {\n return `$${toDebugString(input.ref)}`;\n }\n if (\"fn\" in input) {\n return `${input.fn}(${(input.argv || []).map(toDebugString).join(\", \")})`;\n }\n return JSON.stringify(input, null, 2);\n}\n",
|
|
26
|
+
"export class EndpointError extends Error {\n constructor(message) {\n super(message);\n this.name = \"EndpointError\";\n }\n}\n",
|
|
27
|
+
"export * from \"./EndpointError\";\nexport * from \"./EndpointFunctions\";\nexport * from \"./EndpointRuleObject\";\nexport * from \"./ErrorRuleObject\";\nexport * from \"./RuleSetObject\";\nexport * from \"./TreeRuleObject\";\nexport * from \"./shared\";\n",
|
|
28
|
+
"export const booleanEquals = (value1, value2) => value1 === value2;\n",
|
|
29
|
+
"import { EndpointError } from \"../types\";\nexport const getAttrPathList = (path) => {\n const parts = path.split(\".\");\n const pathList = [];\n for (const part of parts) {\n const squareBracketIndex = part.indexOf(\"[\");\n if (squareBracketIndex !== -1) {\n if (part.indexOf(\"]\") !== part.length - 1) {\n throw new EndpointError(`Path: '${path}' does not end with ']'`);\n }\n const arrayIndex = part.slice(squareBracketIndex + 1, -1);\n if (Number.isNaN(parseInt(arrayIndex))) {\n throw new EndpointError(`Invalid array index: '${arrayIndex}' in path: '${path}'`);\n }\n if (squareBracketIndex !== 0) {\n pathList.push(part.slice(0, squareBracketIndex));\n }\n pathList.push(arrayIndex);\n }\n else {\n pathList.push(part);\n }\n }\n return pathList;\n};\n",
|
|
30
|
+
"import { EndpointError } from \"../types\";\nimport { getAttrPathList } from \"./getAttrPathList\";\nexport const getAttr = (value, path) => getAttrPathList(path).reduce((acc, index) => {\n if (typeof acc !== \"object\") {\n throw new EndpointError(`Index '${index}' in '${path}' not found in '${JSON.stringify(value)}'`);\n }\n else if (Array.isArray(acc)) {\n return acc[parseInt(index)];\n }\n return acc[index];\n}, value);\n",
|
|
31
|
+
"export const isSet = (value) => value != null;\n",
|
|
32
|
+
"export const not = (value) => !value;\n",
|
|
33
|
+
"import { EndpointURLScheme } from \"@smithy/types\";\nimport { isIpAddress } from \"./isIpAddress\";\nconst DEFAULT_PORTS = {\n [EndpointURLScheme.HTTP]: 80,\n [EndpointURLScheme.HTTPS]: 443,\n};\nexport const parseURL = (value) => {\n const whatwgURL = (() => {\n try {\n if (value instanceof URL) {\n return value;\n }\n if (typeof value === \"object\" && \"hostname\" in value) {\n const { hostname, port, protocol = \"\", path = \"\", query = {} } = value;\n const url = new URL(`${protocol}//${hostname}${port ? `:${port}` : \"\"}${path}`);\n url.search = Object.entries(query)\n .map(([k, v]) => `${k}=${v}`)\n .join(\"&\");\n return url;\n }\n return new URL(value);\n }\n catch (error) {\n return null;\n }\n })();\n if (!whatwgURL) {\n console.error(`Unable to parse ${JSON.stringify(value)} as a whatwg URL.`);\n return null;\n }\n const urlString = whatwgURL.href;\n const { host, hostname, pathname, protocol, search } = whatwgURL;\n if (search) {\n return null;\n }\n const scheme = protocol.slice(0, -1);\n if (!Object.values(EndpointURLScheme).includes(scheme)) {\n return null;\n }\n const isIp = isIpAddress(hostname);\n const inputContainsDefaultPort = urlString.includes(`${host}:${DEFAULT_PORTS[scheme]}`) ||\n (typeof value === \"string\" && value.includes(`${host}:${DEFAULT_PORTS[scheme]}`));\n const authority = `${host}${inputContainsDefaultPort ? `:${DEFAULT_PORTS[scheme]}` : ``}`;\n return {\n scheme,\n authority,\n path: pathname,\n normalizedPath: pathname.endsWith(\"/\") ? pathname : `${pathname}/`,\n isIp,\n };\n};\n",
|
|
34
|
+
"export const stringEquals = (value1, value2) => value1 === value2;\n",
|
|
35
|
+
"export const substring = (input, start, stop, reverse) => {\n if (start >= stop || input.length < stop) {\n return null;\n }\n if (!reverse) {\n return input.substring(start, stop);\n }\n return input.substring(input.length - stop, input.length - start);\n};\n",
|
|
36
|
+
"export const uriEncode = (value) => encodeURIComponent(value).replace(/[!*'()]/g, (c) => `%${c.charCodeAt(0).toString(16).toUpperCase()}`);\n",
|
|
37
|
+
"export * from \"./booleanEquals\";\nexport * from \"./getAttr\";\nexport * from \"./isSet\";\nexport * from \"./isValidHostLabel\";\nexport * from \"./not\";\nexport * from \"./parseURL\";\nexport * from \"./stringEquals\";\nexport * from \"./substring\";\nexport * from \"./uriEncode\";\n",
|
|
38
|
+
"import { booleanEquals, getAttr, isSet, isValidHostLabel, not, parseURL, stringEquals, substring, uriEncode, } from \"../lib\";\nexport const endpointFunctions = {\n booleanEquals,\n getAttr,\n isSet,\n isValidHostLabel,\n not,\n parseURL,\n stringEquals,\n substring,\n uriEncode,\n};\n",
|
|
39
|
+
"import { getAttr } from \"../lib\";\nexport const evaluateTemplate = (template, options) => {\n const evaluatedTemplateArr = [];\n const templateContext = {\n ...options.endpointParams,\n ...options.referenceRecord,\n };\n let currentIndex = 0;\n while (currentIndex < template.length) {\n const openingBraceIndex = template.indexOf(\"{\", currentIndex);\n if (openingBraceIndex === -1) {\n evaluatedTemplateArr.push(template.slice(currentIndex));\n break;\n }\n evaluatedTemplateArr.push(template.slice(currentIndex, openingBraceIndex));\n const closingBraceIndex = template.indexOf(\"}\", openingBraceIndex);\n if (closingBraceIndex === -1) {\n evaluatedTemplateArr.push(template.slice(openingBraceIndex));\n break;\n }\n if (template[openingBraceIndex + 1] === \"{\" && template[closingBraceIndex + 1] === \"}\") {\n evaluatedTemplateArr.push(template.slice(openingBraceIndex + 1, closingBraceIndex));\n currentIndex = closingBraceIndex + 2;\n }\n const parameterName = template.substring(openingBraceIndex + 1, closingBraceIndex);\n if (parameterName.includes(\"#\")) {\n const [refName, attrName] = parameterName.split(\"#\");\n evaluatedTemplateArr.push(getAttr(templateContext[refName], attrName));\n }\n else {\n evaluatedTemplateArr.push(templateContext[parameterName]);\n }\n currentIndex = closingBraceIndex + 1;\n }\n return evaluatedTemplateArr.join(\"\");\n};\n",
|
|
40
|
+
"export const getReferenceValue = ({ ref }, options) => {\n const referenceRecord = {\n ...options.endpointParams,\n ...options.referenceRecord,\n };\n return referenceRecord[ref];\n};\n",
|
|
41
|
+
"import { EndpointError } from \"../types\";\nimport { callFunction } from \"./callFunction\";\nimport { evaluateTemplate } from \"./evaluateTemplate\";\nimport { getReferenceValue } from \"./getReferenceValue\";\nexport const evaluateExpression = (obj, keyName, options) => {\n if (typeof obj === \"string\") {\n return evaluateTemplate(obj, options);\n }\n else if (obj[\"fn\"]) {\n return callFunction(obj, options);\n }\n else if (obj[\"ref\"]) {\n return getReferenceValue(obj, options);\n }\n throw new EndpointError(`'${keyName}': ${String(obj)} is not a string, function or reference.`);\n};\n",
|
|
42
|
+
"import { customEndpointFunctions } from \"./customEndpointFunctions\";\nimport { endpointFunctions } from \"./endpointFunctions\";\nimport { evaluateExpression } from \"./evaluateExpression\";\nexport const callFunction = ({ fn, argv }, options) => {\n const evaluatedArgs = argv.map((arg) => [\"boolean\", \"number\"].includes(typeof arg) ? arg : evaluateExpression(arg, \"arg\", options));\n const fnSegments = fn.split(\".\");\n if (fnSegments[0] in customEndpointFunctions && fnSegments[1] != null) {\n return customEndpointFunctions[fnSegments[0]][fnSegments[1]](...evaluatedArgs);\n }\n return endpointFunctions[fn](...evaluatedArgs);\n};\n",
|
|
43
|
+
"import { debugId, toDebugString } from \"../debug\";\nimport { EndpointError } from \"../types\";\nimport { callFunction } from \"./callFunction\";\nexport const evaluateCondition = ({ assign, ...fnArgs }, options) => {\n if (assign && assign in options.referenceRecord) {\n throw new EndpointError(`'${assign}' is already defined in Reference Record.`);\n }\n const value = callFunction(fnArgs, options);\n options.logger?.debug?.(`${debugId} evaluateCondition: ${toDebugString(fnArgs)} = ${toDebugString(value)}`);\n return {\n result: value === \"\" ? true : !!value,\n ...(assign != null && { toAssign: { name: assign, value } }),\n };\n};\n",
|
|
44
|
+
"import { debugId, toDebugString } from \"../debug\";\nimport { evaluateCondition } from \"./evaluateCondition\";\nexport const evaluateConditions = (conditions = [], options) => {\n const conditionsReferenceRecord = {};\n for (const condition of conditions) {\n const { result, toAssign } = evaluateCondition(condition, {\n ...options,\n referenceRecord: {\n ...options.referenceRecord,\n ...conditionsReferenceRecord,\n },\n });\n if (!result) {\n return { result };\n }\n if (toAssign) {\n conditionsReferenceRecord[toAssign.name] = toAssign.value;\n options.logger?.debug?.(`${debugId} assign: ${toAssign.name} := ${toDebugString(toAssign.value)}`);\n }\n }\n return { result: true, referenceRecord: conditionsReferenceRecord };\n};\n",
|
|
45
|
+
"import { EndpointError } from \"../types\";\nimport { evaluateExpression } from \"./evaluateExpression\";\nexport const getEndpointHeaders = (headers, options) => Object.entries(headers).reduce((acc, [headerKey, headerVal]) => ({\n ...acc,\n [headerKey]: headerVal.map((headerValEntry) => {\n const processedExpr = evaluateExpression(headerValEntry, \"Header value entry\", options);\n if (typeof processedExpr !== \"string\") {\n throw new EndpointError(`Header '${headerKey}' value '${processedExpr}' is not a string`);\n }\n return processedExpr;\n }),\n}), {});\n",
|
|
46
|
+
"import { EndpointError } from \"../types\";\nimport { evaluateTemplate } from \"./evaluateTemplate\";\nimport { getEndpointProperties } from \"./getEndpointProperties\";\nexport const getEndpointProperty = (property, options) => {\n if (Array.isArray(property)) {\n return property.map((propertyEntry) => getEndpointProperty(propertyEntry, options));\n }\n switch (typeof property) {\n case \"string\":\n return evaluateTemplate(property, options);\n case \"object\":\n if (property === null) {\n throw new EndpointError(`Unexpected endpoint property: ${property}`);\n }\n return getEndpointProperties(property, options);\n case \"boolean\":\n return property;\n default:\n throw new EndpointError(`Unexpected endpoint property type: ${typeof property}`);\n }\n};\n",
|
|
47
|
+
"import { getEndpointProperty } from \"./getEndpointProperty\";\nexport const getEndpointProperties = (properties, options) => Object.entries(properties).reduce((acc, [propertyKey, propertyVal]) => ({\n ...acc,\n [propertyKey]: getEndpointProperty(propertyVal, options),\n}), {});\n",
|
|
48
|
+
"import { EndpointError } from \"../types\";\nimport { evaluateExpression } from \"./evaluateExpression\";\nexport const getEndpointUrl = (endpointUrl, options) => {\n const expression = evaluateExpression(endpointUrl, \"Endpoint URL\", options);\n if (typeof expression === \"string\") {\n try {\n return new URL(expression);\n }\n catch (error) {\n console.error(`Failed to construct URL with ${expression}`, error);\n throw error;\n }\n }\n throw new EndpointError(`Endpoint URL must be a string, got ${typeof expression}`);\n};\n",
|
|
49
|
+
"import { debugId, toDebugString } from \"../debug\";\nimport { evaluateConditions } from \"./evaluateConditions\";\nimport { getEndpointHeaders } from \"./getEndpointHeaders\";\nimport { getEndpointProperties } from \"./getEndpointProperties\";\nimport { getEndpointUrl } from \"./getEndpointUrl\";\nexport const evaluateEndpointRule = (endpointRule, options) => {\n const { conditions, endpoint } = endpointRule;\n const { result, referenceRecord } = evaluateConditions(conditions, options);\n if (!result) {\n return;\n }\n const endpointRuleOptions = {\n ...options,\n referenceRecord: { ...options.referenceRecord, ...referenceRecord },\n };\n const { url, properties, headers } = endpoint;\n options.logger?.debug?.(`${debugId} Resolving endpoint from template: ${toDebugString(endpoint)}`);\n return {\n ...(headers != undefined && {\n headers: getEndpointHeaders(headers, endpointRuleOptions),\n }),\n ...(properties != undefined && {\n properties: getEndpointProperties(properties, endpointRuleOptions),\n }),\n url: getEndpointUrl(url, endpointRuleOptions),\n };\n};\n",
|
|
50
|
+
"import { EndpointError } from \"../types\";\nimport { evaluateConditions } from \"./evaluateConditions\";\nimport { evaluateExpression } from \"./evaluateExpression\";\nexport const evaluateErrorRule = (errorRule, options) => {\n const { conditions, error } = errorRule;\n const { result, referenceRecord } = evaluateConditions(conditions, options);\n if (!result) {\n return;\n }\n throw new EndpointError(evaluateExpression(error, \"Error\", {\n ...options,\n referenceRecord: { ...options.referenceRecord, ...referenceRecord },\n }));\n};\n",
|
|
51
|
+
"import { evaluateConditions } from \"./evaluateConditions\";\nimport { evaluateRules } from \"./evaluateRules\";\nexport const evaluateTreeRule = (treeRule, options) => {\n const { conditions, rules } = treeRule;\n const { result, referenceRecord } = evaluateConditions(conditions, options);\n if (!result) {\n return;\n }\n return evaluateRules(rules, {\n ...options,\n referenceRecord: { ...options.referenceRecord, ...referenceRecord },\n });\n};\n",
|
|
52
|
+
"import { EndpointError } from \"../types\";\nimport { evaluateEndpointRule } from \"./evaluateEndpointRule\";\nimport { evaluateErrorRule } from \"./evaluateErrorRule\";\nimport { evaluateTreeRule } from \"./evaluateTreeRule\";\nexport const evaluateRules = (rules, options) => {\n for (const rule of rules) {\n if (rule.type === \"endpoint\") {\n const endpointOrUndefined = evaluateEndpointRule(rule, options);\n if (endpointOrUndefined) {\n return endpointOrUndefined;\n }\n }\n else if (rule.type === \"error\") {\n evaluateErrorRule(rule, options);\n }\n else if (rule.type === \"tree\") {\n const endpointOrUndefined = evaluateTreeRule(rule, options);\n if (endpointOrUndefined) {\n return endpointOrUndefined;\n }\n }\n else {\n throw new EndpointError(`Unknown endpoint rule: ${rule}`);\n }\n }\n throw new EndpointError(`Rules evaluation failed`);\n};\n",
|
|
53
|
+
"export * from \"./customEndpointFunctions\";\nexport * from \"./evaluateRules\";\n",
|
|
54
|
+
"import { debugId, toDebugString } from \"./debug\";\nimport { EndpointError } from \"./types\";\nimport { evaluateRules } from \"./utils\";\nexport const resolveEndpoint = (ruleSetObject, options) => {\n const { endpointParams, logger } = options;\n const { parameters, rules } = ruleSetObject;\n options.logger?.debug?.(`${debugId} Initial EndpointParams: ${toDebugString(endpointParams)}`);\n const paramsWithDefault = Object.entries(parameters)\n .filter(([, v]) => v.default != null)\n .map(([k, v]) => [k, v.default]);\n if (paramsWithDefault.length > 0) {\n for (const [paramKey, paramDefaultValue] of paramsWithDefault) {\n endpointParams[paramKey] = endpointParams[paramKey] ?? paramDefaultValue;\n }\n }\n const requiredParams = Object.entries(parameters)\n .filter(([, v]) => v.required)\n .map(([k]) => k);\n for (const requiredParam of requiredParams) {\n if (endpointParams[requiredParam] == null) {\n throw new EndpointError(`Missing required parameter: '${requiredParam}'`);\n }\n }\n const endpoint = evaluateRules(rules, { endpointParams, logger, referenceRecord: {} });\n if (options.endpointParams?.Endpoint) {\n try {\n const givenEndpoint = new URL(options.endpointParams.Endpoint);\n const { protocol, port } = givenEndpoint;\n endpoint.url.protocol = protocol;\n endpoint.url.port = port;\n }\n catch (e) {\n }\n }\n options.logger?.debug?.(`${debugId} Resolved endpoint: ${toDebugString(endpoint)}`);\n return endpoint;\n};\n",
|
|
55
|
+
"export * from \"./lib/isIpAddress\";\nexport * from \"./lib/isValidHostLabel\";\nexport * from \"./utils/customEndpointFunctions\";\nexport * from \"./resolveEndpoint\";\nexport * from \"./types\";\n",
|
|
56
|
+
"export { isIpAddress } from \"@smithy/util-endpoints\";\n",
|
|
57
|
+
"import { isValidHostLabel } from \"@smithy/util-endpoints\";\nimport { isIpAddress } from \"../isIpAddress\";\nexport const isVirtualHostableS3Bucket = (value, allowSubDomains = false) => {\n if (allowSubDomains) {\n for (const label of value.split(\".\")) {\n if (!isVirtualHostableS3Bucket(label)) {\n return false;\n }\n }\n return true;\n }\n if (!isValidHostLabel(value)) {\n return false;\n }\n if (value.length < 3 || value.length > 63) {\n return false;\n }\n if (value !== value.toLowerCase()) {\n return false;\n }\n if (isIpAddress(value)) {\n return false;\n }\n return true;\n};\n",
|
|
58
|
+
"const ARN_DELIMITER = \":\";\nconst RESOURCE_DELIMITER = \"/\";\nexport const parseArn = (value) => {\n const segments = value.split(ARN_DELIMITER);\n if (segments.length < 6)\n return null;\n const [arn, partition, service, region, accountId, ...resourcePath] = segments;\n if (arn !== \"arn\" || partition === \"\" || service === \"\" || resourcePath.join(ARN_DELIMITER) === \"\")\n return null;\n const resourceId = resourcePath.map((resource) => resource.split(RESOURCE_DELIMITER)).flat();\n return {\n partition,\n service,\n region,\n accountId,\n resourceId,\n };\n};\n",
|
|
59
|
+
"import partitionsInfo from \"./partitions.json\";\nlet selectedPartitionsInfo = partitionsInfo;\nlet selectedUserAgentPrefix = \"\";\nexport const partition = (value) => {\n const { partitions } = selectedPartitionsInfo;\n for (const partition of partitions) {\n const { regions, outputs } = partition;\n for (const [region, regionData] of Object.entries(regions)) {\n if (region === value) {\n return {\n ...outputs,\n ...regionData,\n };\n }\n }\n }\n for (const partition of partitions) {\n const { regionRegex, outputs } = partition;\n if (new RegExp(regionRegex).test(value)) {\n return {\n ...outputs,\n };\n }\n }\n const DEFAULT_PARTITION = partitions.find((partition) => partition.id === \"aws\");\n if (!DEFAULT_PARTITION) {\n throw new Error(\"Provided region was not found in the partition array or regex,\" +\n \" and default partition with id 'aws' doesn't exist.\");\n }\n return {\n ...DEFAULT_PARTITION.outputs,\n };\n};\nexport const setPartitionInfo = (partitionsInfo, userAgentPrefix = \"\") => {\n selectedPartitionsInfo = partitionsInfo;\n selectedUserAgentPrefix = userAgentPrefix;\n};\nexport const useDefaultPartitionInfo = () => {\n setPartitionInfo(partitionsInfo, \"\");\n};\nexport const getUserAgentPrefix = () => selectedUserAgentPrefix;\n",
|
|
60
|
+
"import { customEndpointFunctions } from \"@smithy/util-endpoints\";\nimport { isVirtualHostableS3Bucket } from \"./lib/aws/isVirtualHostableS3Bucket\";\nimport { parseArn } from \"./lib/aws/parseArn\";\nimport { partition } from \"./lib/aws/partition\";\nexport const awsEndpointFunctions = {\n isVirtualHostableS3Bucket: isVirtualHostableS3Bucket,\n parseArn: parseArn,\n partition: partition,\n};\ncustomEndpointFunctions.aws = awsEndpointFunctions;\n",
|
|
61
|
+
"export { resolveEndpoint } from \"@smithy/util-endpoints\";\n",
|
|
62
|
+
"export { EndpointError } from \"@smithy/util-endpoints\";\n",
|
|
63
|
+
"export * from \"./EndpointError\";\nexport * from \"./EndpointRuleObject\";\nexport * from \"./ErrorRuleObject\";\nexport * from \"./RuleSetObject\";\nexport * from \"./TreeRuleObject\";\nexport * from \"./shared\";\n",
|
|
64
|
+
"export * from \"./aws\";\nexport * from \"./lib/aws/partition\";\nexport * from \"./lib/isIpAddress\";\nexport * from \"./resolveEndpoint\";\nexport * from \"./types\";\n",
|
|
65
|
+
"export const USER_AGENT = \"user-agent\";\nexport const X_AMZ_USER_AGENT = \"x-amz-user-agent\";\nexport const SPACE = \" \";\nexport const UA_NAME_SEPARATOR = \"/\";\nexport const UA_NAME_ESCAPE_REGEX = /[^\\!\\$\\%\\&\\'\\*\\+\\-\\.\\^\\_\\`\\|\\~\\d\\w]/g;\nexport const UA_VALUE_ESCAPE_REGEX = /[^\\!\\$\\%\\&\\'\\*\\+\\-\\.\\^\\_\\`\\|\\~\\d\\w\\#]/g;\nexport const UA_ESCAPE_CHAR = \"-\";\n",
|
|
66
|
+
"import { getUserAgentPrefix } from \"@aws-sdk/util-endpoints\";\nimport { HttpRequest } from \"@smithy/protocol-http\";\nimport { SPACE, UA_ESCAPE_CHAR, UA_NAME_ESCAPE_REGEX, UA_NAME_SEPARATOR, UA_VALUE_ESCAPE_REGEX, USER_AGENT, X_AMZ_USER_AGENT, } from \"./constants\";\nexport const userAgentMiddleware = (options) => (next, context) => async (args) => {\n const { request } = args;\n if (!HttpRequest.isInstance(request))\n return next(args);\n const { headers } = request;\n const userAgent = context?.userAgent?.map(escapeUserAgent) || [];\n const defaultUserAgent = (await options.defaultUserAgentProvider()).map(escapeUserAgent);\n const customUserAgent = options?.customUserAgent?.map(escapeUserAgent) || [];\n const prefix = getUserAgentPrefix();\n const sdkUserAgentValue = (prefix ? [prefix] : [])\n .concat([...defaultUserAgent, ...userAgent, ...customUserAgent])\n .join(SPACE);\n const normalUAValue = [\n ...defaultUserAgent.filter((section) => section.startsWith(\"aws-sdk-\")),\n ...customUserAgent,\n ].join(SPACE);\n if (options.runtime !== \"browser\") {\n if (normalUAValue) {\n headers[X_AMZ_USER_AGENT] = headers[X_AMZ_USER_AGENT]\n ? `${headers[USER_AGENT]} ${normalUAValue}`\n : normalUAValue;\n }\n headers[USER_AGENT] = sdkUserAgentValue;\n }\n else {\n headers[X_AMZ_USER_AGENT] = sdkUserAgentValue;\n }\n return next({\n ...args,\n request,\n });\n};\nconst escapeUserAgent = (userAgentPair) => {\n const name = userAgentPair[0]\n .split(UA_NAME_SEPARATOR)\n .map((part) => part.replace(UA_NAME_ESCAPE_REGEX, UA_ESCAPE_CHAR))\n .join(UA_NAME_SEPARATOR);\n const version = userAgentPair[1]?.replace(UA_VALUE_ESCAPE_REGEX, UA_ESCAPE_CHAR);\n const prefixSeparatorIndex = name.indexOf(UA_NAME_SEPARATOR);\n const prefix = name.substring(0, prefixSeparatorIndex);\n let uaName = name.substring(prefixSeparatorIndex + 1);\n if (prefix === \"api\") {\n uaName = uaName.toLowerCase();\n }\n return [prefix, uaName, version]\n .filter((item) => item && item.length > 0)\n .reduce((acc, item, index) => {\n switch (index) {\n case 0:\n return item;\n case 1:\n return `${acc}/${item}`;\n default:\n return `${acc}#${item}`;\n }\n }, \"\");\n};\nexport const getUserAgentMiddlewareOptions = {\n name: \"getUserAgentMiddleware\",\n step: \"build\",\n priority: \"low\",\n tags: [\"SET_USER_AGENT\", \"USER_AGENT\"],\n override: true,\n};\nexport const getUserAgentPlugin = (config) => ({\n applyToStack: (clientStack) => {\n clientStack.add(userAgentMiddleware(config), getUserAgentMiddlewareOptions);\n },\n});\n",
|
|
67
|
+
"export * from \"./configurations\";\nexport * from \"./user-agent-middleware\";\n",
|
|
68
|
+
"export const booleanSelector = (obj, key, type) => {\n if (!(key in obj))\n return undefined;\n if (obj[key] === \"true\")\n return true;\n if (obj[key] === \"false\")\n return false;\n throw new Error(`Cannot load ${type} \"${key}\". Expected \"true\" or \"false\", got ${obj[key]}.`);\n};\n",
|
|
69
|
+
"export var SelectorType;\n(function (SelectorType) {\n SelectorType[\"ENV\"] = \"env\";\n SelectorType[\"CONFIG\"] = \"shared config entry\";\n})(SelectorType || (SelectorType = {}));\n",
|
|
70
|
+
"export * from \"./booleanSelector\";\nexport * from \"./numberSelector\";\nexport * from \"./types\";\n",
|
|
71
|
+
"import { booleanSelector, SelectorType } from \"@smithy/util-config-provider\";\nexport const ENV_USE_DUALSTACK_ENDPOINT = \"AWS_USE_DUALSTACK_ENDPOINT\";\nexport const CONFIG_USE_DUALSTACK_ENDPOINT = \"use_dualstack_endpoint\";\nexport const DEFAULT_USE_DUALSTACK_ENDPOINT = false;\nexport const NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS = {\n environmentVariableSelector: (env) => booleanSelector(env, ENV_USE_DUALSTACK_ENDPOINT, SelectorType.ENV),\n configFileSelector: (profile) => booleanSelector(profile, CONFIG_USE_DUALSTACK_ENDPOINT, SelectorType.CONFIG),\n default: false,\n};\n",
|
|
72
|
+
"import { booleanSelector, SelectorType } from \"@smithy/util-config-provider\";\nexport const ENV_USE_FIPS_ENDPOINT = \"AWS_USE_FIPS_ENDPOINT\";\nexport const CONFIG_USE_FIPS_ENDPOINT = \"use_fips_endpoint\";\nexport const DEFAULT_USE_FIPS_ENDPOINT = false;\nexport const NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS = {\n environmentVariableSelector: (env) => booleanSelector(env, ENV_USE_FIPS_ENDPOINT, SelectorType.ENV),\n configFileSelector: (profile) => booleanSelector(profile, CONFIG_USE_FIPS_ENDPOINT, SelectorType.CONFIG),\n default: false,\n};\n",
|
|
73
|
+
"import { SMITHY_CONTEXT_KEY } from \"@smithy/types\";\nexport const getSmithyContext = (context) => context[SMITHY_CONTEXT_KEY] || (context[SMITHY_CONTEXT_KEY] = {});\n",
|
|
74
|
+
"export const normalizeProvider = (input) => {\n if (typeof input === \"function\")\n return input;\n const promisified = Promise.resolve(input);\n return () => promisified;\n};\n",
|
|
75
|
+
"export * from \"./getSmithyContext\";\nexport * from \"./normalizeProvider\";\n",
|
|
76
|
+
"import { normalizeProvider } from \"@smithy/util-middleware\";\nexport const resolveCustomEndpointsConfig = (input) => {\n const { endpoint, urlParser } = input;\n return {\n ...input,\n tls: input.tls ?? true,\n endpoint: normalizeProvider(typeof endpoint === \"string\" ? urlParser(endpoint) : endpoint),\n isCustomEndpoint: true,\n useDualstackEndpoint: normalizeProvider(input.useDualstackEndpoint ?? false),\n };\n};\n",
|
|
77
|
+
"import { normalizeProvider } from \"@smithy/util-middleware\";\nimport { getEndpointFromRegion } from \"./utils/getEndpointFromRegion\";\nexport const resolveEndpointsConfig = (input) => {\n const useDualstackEndpoint = normalizeProvider(input.useDualstackEndpoint ?? false);\n const { endpoint, useFipsEndpoint, urlParser } = input;\n return {\n ...input,\n tls: input.tls ?? true,\n endpoint: endpoint\n ? normalizeProvider(typeof endpoint === \"string\" ? urlParser(endpoint) : endpoint)\n : () => getEndpointFromRegion({ ...input, useDualstackEndpoint, useFipsEndpoint }),\n isCustomEndpoint: !!endpoint,\n useDualstackEndpoint,\n };\n};\n",
|
|
78
|
+
"export * from \"./NodeUseDualstackEndpointConfigOptions\";\nexport * from \"./NodeUseFipsEndpointConfigOptions\";\nexport * from \"./resolveCustomEndpointsConfig\";\nexport * from \"./resolveEndpointsConfig\";\n",
|
|
79
|
+
"export const REGION_ENV_NAME = \"AWS_REGION\";\nexport const REGION_INI_NAME = \"region\";\nexport const NODE_REGION_CONFIG_OPTIONS = {\n environmentVariableSelector: (env) => env[REGION_ENV_NAME],\n configFileSelector: (profile) => profile[REGION_INI_NAME],\n default: () => {\n throw new Error(\"Region is missing\");\n },\n};\nexport const NODE_REGION_CONFIG_FILE_OPTIONS = {\n preferredFile: \"credentials\",\n};\n",
|
|
80
|
+
"export const isFipsRegion = (region) => typeof region === \"string\" && (region.startsWith(\"fips-\") || region.endsWith(\"-fips\"));\n",
|
|
81
|
+
"import { isFipsRegion } from \"./isFipsRegion\";\nexport const getRealRegion = (region) => isFipsRegion(region)\n ? [\"fips-aws-global\", \"aws-fips\"].includes(region)\n ? \"us-east-1\"\n : region.replace(/fips-(dkr-|prod-)?|-fips/, \"\")\n : region;\n",
|
|
82
|
+
"import { getRealRegion } from \"./getRealRegion\";\nimport { isFipsRegion } from \"./isFipsRegion\";\nexport const resolveRegionConfig = (input) => {\n const { region, useFipsEndpoint } = input;\n if (!region) {\n throw new Error(\"Region is missing\");\n }\n return {\n ...input,\n region: async () => {\n if (typeof region === \"string\") {\n return getRealRegion(region);\n }\n const providedRegion = await region();\n return getRealRegion(providedRegion);\n },\n useFipsEndpoint: async () => {\n const providedRegion = typeof region === \"string\" ? region : await region();\n if (isFipsRegion(providedRegion)) {\n return true;\n }\n return typeof useFipsEndpoint !== \"function\" ? Promise.resolve(!!useFipsEndpoint) : useFipsEndpoint();\n },\n };\n};\n",
|
|
83
|
+
"export * from \"./config\";\nexport * from \"./resolveRegionConfig\";\n",
|
|
84
|
+
"export * from \"./PartitionHash\";\nexport * from \"./RegionHash\";\nexport * from \"./getRegionInfo\";\n",
|
|
85
|
+
"export * from \"./endpointsConfig\";\nexport * from \"./regionConfig\";\nexport * from \"./regionInfo\";\n",
|
|
86
|
+
"var __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __name = (target, value) => __defProp(target, \"name\", { value, configurable: true });\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/index.ts\nvar src_exports = {};\n__export(src_exports, {\n getSmithyContext: () => getSmithyContext,\n normalizeProvider: () => normalizeProvider\n});\nmodule.exports = __toCommonJS(src_exports);\n\n// src/getSmithyContext.ts\nvar import_types = require(\"@smithy/types\");\nvar getSmithyContext = /* @__PURE__ */ __name((context) => context[import_types.SMITHY_CONTEXT_KEY] || (context[import_types.SMITHY_CONTEXT_KEY] = {}), \"getSmithyContext\");\n\n// src/normalizeProvider.ts\nvar normalizeProvider = /* @__PURE__ */ __name((input) => {\n if (typeof input === \"function\")\n return input;\n const promisified = Promise.resolve(input);\n return () => promisified;\n}, \"normalizeProvider\");\n// Annotate the CommonJS export names for ESM import in node:\n\n0 && (module.exports = {\n getSmithyContext,\n normalizeProvider\n});\n\n",
|
|
87
|
+
"var __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __name = (target, value) => __defProp(target, \"name\", { value, configurable: true });\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/index.ts\nvar src_exports = {};\n__export(src_exports, {\n CredentialsProviderError: () => CredentialsProviderError,\n ProviderError: () => ProviderError,\n TokenProviderError: () => TokenProviderError,\n chain: () => chain,\n fromStatic: () => fromStatic,\n memoize: () => memoize\n});\nmodule.exports = __toCommonJS(src_exports);\n\n// src/ProviderError.ts\nvar _ProviderError = class _ProviderError extends Error {\n constructor(message, options = true) {\n var _a;\n let logger;\n let tryNextLink = true;\n if (typeof options === \"boolean\") {\n logger = void 0;\n tryNextLink = options;\n } else if (options != null && typeof options === \"object\") {\n logger = options.logger;\n tryNextLink = options.tryNextLink ?? true;\n }\n super(message);\n this.name = \"ProviderError\";\n this.tryNextLink = tryNextLink;\n Object.setPrototypeOf(this, _ProviderError.prototype);\n (_a = logger == null ? void 0 : logger.debug) == null ? void 0 : _a.call(logger, `@smithy/property-provider ${tryNextLink ? \"->\" : \"(!)\"} ${message}`);\n }\n /**\n * @deprecated use new operator.\n */\n static from(error, options = true) {\n return Object.assign(new this(error.message, options), error);\n }\n};\n__name(_ProviderError, \"ProviderError\");\nvar ProviderError = _ProviderError;\n\n// src/CredentialsProviderError.ts\nvar _CredentialsProviderError = class _CredentialsProviderError extends ProviderError {\n /**\n * @override\n */\n constructor(message, options = true) {\n super(message, options);\n this.name = \"CredentialsProviderError\";\n Object.setPrototypeOf(this, _CredentialsProviderError.prototype);\n }\n};\n__name(_CredentialsProviderError, \"CredentialsProviderError\");\nvar CredentialsProviderError = _CredentialsProviderError;\n\n// src/TokenProviderError.ts\nvar _TokenProviderError = class _TokenProviderError extends ProviderError {\n /**\n * @override\n */\n constructor(message, options = true) {\n super(message, options);\n this.name = \"TokenProviderError\";\n Object.setPrototypeOf(this, _TokenProviderError.prototype);\n }\n};\n__name(_TokenProviderError, \"TokenProviderError\");\nvar TokenProviderError = _TokenProviderError;\n\n// src/chain.ts\nvar chain = /* @__PURE__ */ __name((...providers) => async () => {\n if (providers.length === 0) {\n throw new ProviderError(\"No providers in chain\");\n }\n let lastProviderError;\n for (const provider of providers) {\n try {\n const credentials = await provider();\n return credentials;\n } catch (err) {\n lastProviderError = err;\n if (err == null ? void 0 : err.tryNextLink) {\n continue;\n }\n throw err;\n }\n }\n throw lastProviderError;\n}, \"chain\");\n\n// src/fromStatic.ts\nvar fromStatic = /* @__PURE__ */ __name((staticValue) => () => Promise.resolve(staticValue), \"fromStatic\");\n\n// src/memoize.ts\nvar memoize = /* @__PURE__ */ __name((provider, isExpired, requiresRefresh) => {\n let resolved;\n let pending;\n let hasResult;\n let isConstant = false;\n const coalesceProvider = /* @__PURE__ */ __name(async () => {\n if (!pending) {\n pending = provider();\n }\n try {\n resolved = await pending;\n hasResult = true;\n isConstant = false;\n } finally {\n pending = void 0;\n }\n return resolved;\n }, \"coalesceProvider\");\n if (isExpired === void 0) {\n return async (options) => {\n if (!hasResult || (options == null ? void 0 : options.forceRefresh)) {\n resolved = await coalesceProvider();\n }\n return resolved;\n };\n }\n return async (options) => {\n if (!hasResult || (options == null ? void 0 : options.forceRefresh)) {\n resolved = await coalesceProvider();\n }\n if (isConstant) {\n return resolved;\n }\n if (requiresRefresh && !requiresRefresh(resolved)) {\n isConstant = true;\n return resolved;\n }\n if (isExpired(resolved)) {\n await coalesceProvider();\n return resolved;\n }\n return resolved;\n };\n}, \"memoize\");\n// Annotate the CommonJS export names for ESM import in node:\n\n0 && (module.exports = {\n CredentialsProviderError,\n ProviderError,\n TokenProviderError,\n chain,\n fromStatic,\n memoize\n});\n\n",
|
|
88
|
+
"\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getHomeDir = void 0;\nconst os_1 = require(\"os\");\nconst path_1 = require(\"path\");\nconst homeDirCache = {};\nconst getHomeDirCacheKey = () => {\n if (process && process.geteuid) {\n return `${process.geteuid()}`;\n }\n return \"DEFAULT\";\n};\nconst getHomeDir = () => {\n const { HOME, USERPROFILE, HOMEPATH, HOMEDRIVE = `C:${path_1.sep}` } = process.env;\n if (HOME)\n return HOME;\n if (USERPROFILE)\n return USERPROFILE;\n if (HOMEPATH)\n return `${HOMEDRIVE}${HOMEPATH}`;\n const homeDirCacheKey = getHomeDirCacheKey();\n if (!homeDirCache[homeDirCacheKey])\n homeDirCache[homeDirCacheKey] = (0, os_1.homedir)();\n return homeDirCache[homeDirCacheKey];\n};\nexports.getHomeDir = getHomeDir;\n",
|
|
89
|
+
"\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getSSOTokenFilepath = void 0;\nconst crypto_1 = require(\"crypto\");\nconst path_1 = require(\"path\");\nconst getHomeDir_1 = require(\"./getHomeDir\");\nconst getSSOTokenFilepath = (id) => {\n const hasher = (0, crypto_1.createHash)(\"sha1\");\n const cacheName = hasher.update(id).digest(\"hex\");\n return (0, path_1.join)((0, getHomeDir_1.getHomeDir)(), \".aws\", \"sso\", \"cache\", `${cacheName}.json`);\n};\nexports.getSSOTokenFilepath = getSSOTokenFilepath;\n",
|
|
90
|
+
"\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getSSOTokenFromFile = void 0;\nconst fs_1 = require(\"fs\");\nconst getSSOTokenFilepath_1 = require(\"./getSSOTokenFilepath\");\nconst { readFile } = fs_1.promises;\nconst getSSOTokenFromFile = async (id) => {\n const ssoTokenFilepath = (0, getSSOTokenFilepath_1.getSSOTokenFilepath)(id);\n const ssoTokenText = await readFile(ssoTokenFilepath, \"utf8\");\n return JSON.parse(ssoTokenText);\n};\nexports.getSSOTokenFromFile = getSSOTokenFromFile;\n",
|
|
91
|
+
"\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.slurpFile = void 0;\nconst fs_1 = require(\"fs\");\nconst { readFile } = fs_1.promises;\nconst filePromisesHash = {};\nconst slurpFile = (path, options) => {\n if (!filePromisesHash[path] || (options === null || options === void 0 ? void 0 : options.ignoreCache)) {\n filePromisesHash[path] = readFile(path, \"utf8\");\n }\n return filePromisesHash[path];\n};\nexports.slurpFile = slurpFile;\n",
|
|
92
|
+
"var __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __name = (target, value) => __defProp(target, \"name\", { value, configurable: true });\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, \"default\"), secondTarget && __copyProps(secondTarget, mod, \"default\"));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/index.ts\nvar src_exports = {};\n__export(src_exports, {\n CONFIG_PREFIX_SEPARATOR: () => CONFIG_PREFIX_SEPARATOR,\n DEFAULT_PROFILE: () => DEFAULT_PROFILE,\n ENV_PROFILE: () => ENV_PROFILE,\n getProfileName: () => getProfileName,\n loadSharedConfigFiles: () => loadSharedConfigFiles,\n loadSsoSessionData: () => loadSsoSessionData,\n parseKnownFiles: () => parseKnownFiles\n});\nmodule.exports = __toCommonJS(src_exports);\n__reExport(src_exports, require(\"././getHomeDir\"), module.exports);\n\n// src/getProfileName.ts\nvar ENV_PROFILE = \"AWS_PROFILE\";\nvar DEFAULT_PROFILE = \"default\";\nvar getProfileName = /* @__PURE__ */ __name((init) => init.profile || process.env[ENV_PROFILE] || DEFAULT_PROFILE, \"getProfileName\");\n\n// src/index.ts\n__reExport(src_exports, require(\"././getSSOTokenFilepath\"), module.exports);\n__reExport(src_exports, require(\"././getSSOTokenFromFile\"), module.exports);\n\n// src/loadSharedConfigFiles.ts\n\n\n// src/getConfigData.ts\nvar import_types = require(\"@smithy/types\");\nvar getConfigData = /* @__PURE__ */ __name((data) => Object.entries(data).filter(([key]) => {\n const indexOfSeparator = key.indexOf(CONFIG_PREFIX_SEPARATOR);\n if (indexOfSeparator === -1) {\n return false;\n }\n return Object.values(import_types.IniSectionType).includes(key.substring(0, indexOfSeparator));\n}).reduce(\n (acc, [key, value]) => {\n const indexOfSeparator = key.indexOf(CONFIG_PREFIX_SEPARATOR);\n const updatedKey = key.substring(0, indexOfSeparator) === import_types.IniSectionType.PROFILE ? key.substring(indexOfSeparator + 1) : key;\n acc[updatedKey] = value;\n return acc;\n },\n {\n // Populate default profile, if present.\n ...data.default && { default: data.default }\n }\n), \"getConfigData\");\n\n// src/getConfigFilepath.ts\nvar import_path = require(\"path\");\nvar import_getHomeDir = require(\"././getHomeDir\");\nvar ENV_CONFIG_PATH = \"AWS_CONFIG_FILE\";\nvar getConfigFilepath = /* @__PURE__ */ __name(() => process.env[ENV_CONFIG_PATH] || (0, import_path.join)((0, import_getHomeDir.getHomeDir)(), \".aws\", \"config\"), \"getConfigFilepath\");\n\n// src/getCredentialsFilepath.ts\n\nvar import_getHomeDir2 = require(\"././getHomeDir\");\nvar ENV_CREDENTIALS_PATH = \"AWS_SHARED_CREDENTIALS_FILE\";\nvar getCredentialsFilepath = /* @__PURE__ */ __name(() => process.env[ENV_CREDENTIALS_PATH] || (0, import_path.join)((0, import_getHomeDir2.getHomeDir)(), \".aws\", \"credentials\"), \"getCredentialsFilepath\");\n\n// src/loadSharedConfigFiles.ts\nvar import_getHomeDir3 = require(\"././getHomeDir\");\n\n// src/parseIni.ts\n\nvar prefixKeyRegex = /^([\\w-]+)\\s([\"'])?([\\w-@\\+\\.%:/]+)\\2$/;\nvar profileNameBlockList = [\"__proto__\", \"profile __proto__\"];\nvar parseIni = /* @__PURE__ */ __name((iniData) => {\n const map = {};\n let currentSection;\n let currentSubSection;\n for (const iniLine of iniData.split(/\\r?\\n/)) {\n const trimmedLine = iniLine.split(/(^|\\s)[;#]/)[0].trim();\n const isSection = trimmedLine[0] === \"[\" && trimmedLine[trimmedLine.length - 1] === \"]\";\n if (isSection) {\n currentSection = void 0;\n currentSubSection = void 0;\n const sectionName = trimmedLine.substring(1, trimmedLine.length - 1);\n const matches = prefixKeyRegex.exec(sectionName);\n if (matches) {\n const [, prefix, , name] = matches;\n if (Object.values(import_types.IniSectionType).includes(prefix)) {\n currentSection = [prefix, name].join(CONFIG_PREFIX_SEPARATOR);\n }\n } else {\n currentSection = sectionName;\n }\n if (profileNameBlockList.includes(sectionName)) {\n throw new Error(`Found invalid profile name \"${sectionName}\"`);\n }\n } else if (currentSection) {\n const indexOfEqualsSign = trimmedLine.indexOf(\"=\");\n if (![0, -1].includes(indexOfEqualsSign)) {\n const [name, value] = [\n trimmedLine.substring(0, indexOfEqualsSign).trim(),\n trimmedLine.substring(indexOfEqualsSign + 1).trim()\n ];\n if (value === \"\") {\n currentSubSection = name;\n } else {\n if (currentSubSection && iniLine.trimStart() === iniLine) {\n currentSubSection = void 0;\n }\n map[currentSection] = map[currentSection] || {};\n const key = currentSubSection ? [currentSubSection, name].join(CONFIG_PREFIX_SEPARATOR) : name;\n map[currentSection][key] = value;\n }\n }\n }\n }\n return map;\n}, \"parseIni\");\n\n// src/loadSharedConfigFiles.ts\nvar import_slurpFile = require(\"././slurpFile\");\nvar swallowError = /* @__PURE__ */ __name(() => ({}), \"swallowError\");\nvar CONFIG_PREFIX_SEPARATOR = \".\";\nvar loadSharedConfigFiles = /* @__PURE__ */ __name(async (init = {}) => {\n const { filepath = getCredentialsFilepath(), configFilepath = getConfigFilepath() } = init;\n const homeDir = (0, import_getHomeDir3.getHomeDir)();\n const relativeHomeDirPrefix = \"~/\";\n let resolvedFilepath = filepath;\n if (filepath.startsWith(relativeHomeDirPrefix)) {\n resolvedFilepath = (0, import_path.join)(homeDir, filepath.slice(2));\n }\n let resolvedConfigFilepath = configFilepath;\n if (configFilepath.startsWith(relativeHomeDirPrefix)) {\n resolvedConfigFilepath = (0, import_path.join)(homeDir, configFilepath.slice(2));\n }\n const parsedFiles = await Promise.all([\n (0, import_slurpFile.slurpFile)(resolvedConfigFilepath, {\n ignoreCache: init.ignoreCache\n }).then(parseIni).then(getConfigData).catch(swallowError),\n (0, import_slurpFile.slurpFile)(resolvedFilepath, {\n ignoreCache: init.ignoreCache\n }).then(parseIni).catch(swallowError)\n ]);\n return {\n configFile: parsedFiles[0],\n credentialsFile: parsedFiles[1]\n };\n}, \"loadSharedConfigFiles\");\n\n// src/getSsoSessionData.ts\n\nvar getSsoSessionData = /* @__PURE__ */ __name((data) => Object.entries(data).filter(([key]) => key.startsWith(import_types.IniSectionType.SSO_SESSION + CONFIG_PREFIX_SEPARATOR)).reduce((acc, [key, value]) => ({ ...acc, [key.substring(key.indexOf(CONFIG_PREFIX_SEPARATOR) + 1)]: value }), {}), \"getSsoSessionData\");\n\n// src/loadSsoSessionData.ts\nvar import_slurpFile2 = require(\"././slurpFile\");\nvar swallowError2 = /* @__PURE__ */ __name(() => ({}), \"swallowError\");\nvar loadSsoSessionData = /* @__PURE__ */ __name(async (init = {}) => (0, import_slurpFile2.slurpFile)(init.configFilepath ?? getConfigFilepath()).then(parseIni).then(getSsoSessionData).catch(swallowError2), \"loadSsoSessionData\");\n\n// src/mergeConfigFiles.ts\nvar mergeConfigFiles = /* @__PURE__ */ __name((...files) => {\n const merged = {};\n for (const file of files) {\n for (const [key, values] of Object.entries(file)) {\n if (merged[key] !== void 0) {\n Object.assign(merged[key], values);\n } else {\n merged[key] = values;\n }\n }\n }\n return merged;\n}, \"mergeConfigFiles\");\n\n// src/parseKnownFiles.ts\nvar parseKnownFiles = /* @__PURE__ */ __name(async (init) => {\n const parsedFiles = await loadSharedConfigFiles(init);\n return mergeConfigFiles(parsedFiles.configFile, parsedFiles.credentialsFile);\n}, \"parseKnownFiles\");\n// Annotate the CommonJS export names for ESM import in node:\n\n0 && (module.exports = {\n getHomeDir,\n ENV_PROFILE,\n DEFAULT_PROFILE,\n getProfileName,\n getSSOTokenFilepath,\n getSSOTokenFromFile,\n CONFIG_PREFIX_SEPARATOR,\n loadSharedConfigFiles,\n loadSsoSessionData,\n parseKnownFiles\n});\n\n",
|
|
93
|
+
"var __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __name = (target, value) => __defProp(target, \"name\", { value, configurable: true });\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/index.ts\nvar src_exports = {};\n__export(src_exports, {\n loadConfig: () => loadConfig\n});\nmodule.exports = __toCommonJS(src_exports);\n\n// src/configLoader.ts\n\n\n// src/fromEnv.ts\nvar import_property_provider = require(\"@smithy/property-provider\");\n\n// src/getSelectorName.ts\nfunction getSelectorName(functionString) {\n try {\n const constants = new Set(Array.from(functionString.match(/([A-Z_]){3,}/g) ?? []));\n constants.delete(\"CONFIG\");\n constants.delete(\"CONFIG_PREFIX_SEPARATOR\");\n constants.delete(\"ENV\");\n return [...constants].join(\", \");\n } catch (e) {\n return functionString;\n }\n}\n__name(getSelectorName, \"getSelectorName\");\n\n// src/fromEnv.ts\nvar fromEnv = /* @__PURE__ */ __name((envVarSelector, logger) => async () => {\n try {\n const config = envVarSelector(process.env);\n if (config === void 0) {\n throw new Error();\n }\n return config;\n } catch (e) {\n throw new import_property_provider.CredentialsProviderError(\n e.message || `Not found in ENV: ${getSelectorName(envVarSelector.toString())}`,\n { logger }\n );\n }\n}, \"fromEnv\");\n\n// src/fromSharedConfigFiles.ts\n\nvar import_shared_ini_file_loader = require(\"@smithy/shared-ini-file-loader\");\nvar fromSharedConfigFiles = /* @__PURE__ */ __name((configSelector, { preferredFile = \"config\", ...init } = {}) => async () => {\n const profile = (0, import_shared_ini_file_loader.getProfileName)(init);\n const { configFile, credentialsFile } = await (0, import_shared_ini_file_loader.loadSharedConfigFiles)(init);\n const profileFromCredentials = credentialsFile[profile] || {};\n const profileFromConfig = configFile[profile] || {};\n const mergedProfile = preferredFile === \"config\" ? { ...profileFromCredentials, ...profileFromConfig } : { ...profileFromConfig, ...profileFromCredentials };\n try {\n const cfgFile = preferredFile === \"config\" ? configFile : credentialsFile;\n const configValue = configSelector(mergedProfile, cfgFile);\n if (configValue === void 0) {\n throw new Error();\n }\n return configValue;\n } catch (e) {\n throw new import_property_provider.CredentialsProviderError(\n e.message || `Not found in config files w/ profile [${profile}]: ${getSelectorName(configSelector.toString())}`,\n { logger: init.logger }\n );\n }\n}, \"fromSharedConfigFiles\");\n\n// src/fromStatic.ts\n\nvar isFunction = /* @__PURE__ */ __name((func) => typeof func === \"function\", \"isFunction\");\nvar fromStatic = /* @__PURE__ */ __name((defaultValue) => isFunction(defaultValue) ? async () => await defaultValue() : (0, import_property_provider.fromStatic)(defaultValue), \"fromStatic\");\n\n// src/configLoader.ts\nvar loadConfig = /* @__PURE__ */ __name(({ environmentVariableSelector, configFileSelector, default: defaultValue }, configuration = {}) => (0, import_property_provider.memoize)(\n (0, import_property_provider.chain)(\n fromEnv(environmentVariableSelector),\n fromSharedConfigFiles(configFileSelector, configuration),\n fromStatic(defaultValue)\n )\n), \"loadConfig\");\n// Annotate the CommonJS export names for ESM import in node:\n\n0 && (module.exports = {\n loadConfig\n});\n\n",
|
|
94
|
+
"\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getEndpointUrlConfig = void 0;\nconst shared_ini_file_loader_1 = require(\"@smithy/shared-ini-file-loader\");\nconst ENV_ENDPOINT_URL = \"AWS_ENDPOINT_URL\";\nconst CONFIG_ENDPOINT_URL = \"endpoint_url\";\nconst getEndpointUrlConfig = (serviceId) => ({\n environmentVariableSelector: (env) => {\n const serviceSuffixParts = serviceId.split(\" \").map((w) => w.toUpperCase());\n const serviceEndpointUrl = env[[ENV_ENDPOINT_URL, ...serviceSuffixParts].join(\"_\")];\n if (serviceEndpointUrl)\n return serviceEndpointUrl;\n const endpointUrl = env[ENV_ENDPOINT_URL];\n if (endpointUrl)\n return endpointUrl;\n return undefined;\n },\n configFileSelector: (profile, config) => {\n if (config && profile.services) {\n const servicesSection = config[[\"services\", profile.services].join(shared_ini_file_loader_1.CONFIG_PREFIX_SEPARATOR)];\n if (servicesSection) {\n const servicePrefixParts = serviceId.split(\" \").map((w) => w.toLowerCase());\n const endpointUrl = servicesSection[[servicePrefixParts.join(\"_\"), CONFIG_ENDPOINT_URL].join(shared_ini_file_loader_1.CONFIG_PREFIX_SEPARATOR)];\n if (endpointUrl)\n return endpointUrl;\n }\n }\n const endpointUrl = profile[CONFIG_ENDPOINT_URL];\n if (endpointUrl)\n return endpointUrl;\n return undefined;\n },\n default: undefined,\n});\nexports.getEndpointUrlConfig = getEndpointUrlConfig;\n",
|
|
95
|
+
"\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getEndpointFromConfig = void 0;\nconst node_config_provider_1 = require(\"@smithy/node-config-provider\");\nconst getEndpointUrlConfig_1 = require(\"./getEndpointUrlConfig\");\nconst getEndpointFromConfig = async (serviceId) => (0, node_config_provider_1.loadConfig)((0, getEndpointUrlConfig_1.getEndpointUrlConfig)(serviceId))();\nexports.getEndpointFromConfig = getEndpointFromConfig;\n",
|
|
96
|
+
"var __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __name = (target, value) => __defProp(target, \"name\", { value, configurable: true });\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/index.ts\nvar src_exports = {};\n__export(src_exports, {\n parseQueryString: () => parseQueryString\n});\nmodule.exports = __toCommonJS(src_exports);\nfunction parseQueryString(querystring) {\n const query = {};\n querystring = querystring.replace(/^\\?/, \"\");\n if (querystring) {\n for (const pair of querystring.split(\"&\")) {\n let [key, value = null] = pair.split(\"=\");\n key = decodeURIComponent(key);\n if (value) {\n value = decodeURIComponent(value);\n }\n if (!(key in query)) {\n query[key] = value;\n } else if (Array.isArray(query[key])) {\n query[key].push(value);\n } else {\n query[key] = [query[key], value];\n }\n }\n }\n return query;\n}\n__name(parseQueryString, \"parseQueryString\");\n// Annotate the CommonJS export names for ESM import in node:\n\n0 && (module.exports = {\n parseQueryString\n});\n\n",
|
|
97
|
+
"var __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __name = (target, value) => __defProp(target, \"name\", { value, configurable: true });\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/index.ts\nvar src_exports = {};\n__export(src_exports, {\n parseUrl: () => parseUrl\n});\nmodule.exports = __toCommonJS(src_exports);\nvar import_querystring_parser = require(\"@smithy/querystring-parser\");\nvar parseUrl = /* @__PURE__ */ __name((url) => {\n if (typeof url === \"string\") {\n return parseUrl(new URL(url));\n }\n const { hostname, pathname, port, protocol, search } = url;\n let query;\n if (search) {\n query = (0, import_querystring_parser.parseQueryString)(search);\n }\n return {\n hostname,\n port: port ? parseInt(port) : void 0,\n protocol,\n path: pathname,\n query\n };\n}, \"parseUrl\");\n// Annotate the CommonJS export names for ESM import in node:\n\n0 && (module.exports = {\n parseUrl\n});\n\n",
|
|
98
|
+
"var __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __name = (target, value) => __defProp(target, \"name\", { value, configurable: true });\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/index.ts\nvar src_exports = {};\n__export(src_exports, {\n deserializerMiddleware: () => deserializerMiddleware,\n deserializerMiddlewareOption: () => deserializerMiddlewareOption,\n getSerdePlugin: () => getSerdePlugin,\n serializerMiddleware: () => serializerMiddleware,\n serializerMiddlewareOption: () => serializerMiddlewareOption\n});\nmodule.exports = __toCommonJS(src_exports);\n\n// src/deserializerMiddleware.ts\nvar deserializerMiddleware = /* @__PURE__ */ __name((options, deserializer) => (next) => async (args) => {\n const { response } = await next(args);\n try {\n const parsed = await deserializer(response, options);\n return {\n response,\n output: parsed\n };\n } catch (error) {\n Object.defineProperty(error, \"$response\", {\n value: response\n });\n if (!(\"$metadata\" in error)) {\n const hint = `Deserialization error: to see the raw response, inspect the hidden field {error}.$response on this object.`;\n error.message += \"\\n \" + hint;\n if (typeof error.$responseBodyText !== \"undefined\") {\n if (error.$response) {\n error.$response.body = error.$responseBodyText;\n }\n }\n }\n throw error;\n }\n}, \"deserializerMiddleware\");\n\n// src/serializerMiddleware.ts\nvar serializerMiddleware = /* @__PURE__ */ __name((options, serializer) => (next, context) => async (args) => {\n var _a;\n const endpoint = ((_a = context.endpointV2) == null ? void 0 : _a.url) && options.urlParser ? async () => options.urlParser(context.endpointV2.url) : options.endpoint;\n if (!endpoint) {\n throw new Error(\"No valid endpoint provider available.\");\n }\n const request = await serializer(args.input, { ...options, endpoint });\n return next({\n ...args,\n request\n });\n}, \"serializerMiddleware\");\n\n// src/serdePlugin.ts\nvar deserializerMiddlewareOption = {\n name: \"deserializerMiddleware\",\n step: \"deserialize\",\n tags: [\"DESERIALIZER\"],\n override: true\n};\nvar serializerMiddlewareOption = {\n name: \"serializerMiddleware\",\n step: \"serialize\",\n tags: [\"SERIALIZER\"],\n override: true\n};\nfunction getSerdePlugin(config, serializer, deserializer) {\n return {\n applyToStack: (commandStack) => {\n commandStack.add(deserializerMiddleware(config, deserializer), deserializerMiddlewareOption);\n commandStack.add(serializerMiddleware(config, serializer), serializerMiddlewareOption);\n }\n };\n}\n__name(getSerdePlugin, \"getSerdePlugin\");\n// Annotate the CommonJS export names for ESM import in node:\n\n0 && (module.exports = {\n deserializerMiddleware,\n deserializerMiddlewareOption,\n serializerMiddlewareOption,\n getSerdePlugin,\n serializerMiddleware\n});\n\n",
|
|
99
|
+
"var __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __name = (target, value) => __defProp(target, \"name\", { value, configurable: true });\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/index.ts\nvar src_exports = {};\n__export(src_exports, {\n endpointMiddleware: () => endpointMiddleware,\n endpointMiddlewareOptions: () => endpointMiddlewareOptions,\n getEndpointFromInstructions: () => getEndpointFromInstructions,\n getEndpointPlugin: () => getEndpointPlugin,\n resolveEndpointConfig: () => resolveEndpointConfig,\n resolveParams: () => resolveParams,\n toEndpointV1: () => toEndpointV1\n});\nmodule.exports = __toCommonJS(src_exports);\n\n// src/service-customizations/s3.ts\nvar resolveParamsForS3 = /* @__PURE__ */ __name(async (endpointParams) => {\n const bucket = (endpointParams == null ? void 0 : endpointParams.Bucket) || \"\";\n if (typeof endpointParams.Bucket === \"string\") {\n endpointParams.Bucket = bucket.replace(/#/g, encodeURIComponent(\"#\")).replace(/\\?/g, encodeURIComponent(\"?\"));\n }\n if (isArnBucketName(bucket)) {\n if (endpointParams.ForcePathStyle === true) {\n throw new Error(\"Path-style addressing cannot be used with ARN buckets\");\n }\n } else if (!isDnsCompatibleBucketName(bucket) || bucket.indexOf(\".\") !== -1 && !String(endpointParams.Endpoint).startsWith(\"http:\") || bucket.toLowerCase() !== bucket || bucket.length < 3) {\n endpointParams.ForcePathStyle = true;\n }\n if (endpointParams.DisableMultiRegionAccessPoints) {\n endpointParams.disableMultiRegionAccessPoints = true;\n endpointParams.DisableMRAP = true;\n }\n return endpointParams;\n}, \"resolveParamsForS3\");\nvar DOMAIN_PATTERN = /^[a-z0-9][a-z0-9\\.\\-]{1,61}[a-z0-9]$/;\nvar IP_ADDRESS_PATTERN = /(\\d+\\.){3}\\d+/;\nvar DOTS_PATTERN = /\\.\\./;\nvar isDnsCompatibleBucketName = /* @__PURE__ */ __name((bucketName) => DOMAIN_PATTERN.test(bucketName) && !IP_ADDRESS_PATTERN.test(bucketName) && !DOTS_PATTERN.test(bucketName), \"isDnsCompatibleBucketName\");\nvar isArnBucketName = /* @__PURE__ */ __name((bucketName) => {\n const [arn, partition, service, , , bucket] = bucketName.split(\":\");\n const isArn = arn === \"arn\" && bucketName.split(\":\").length >= 6;\n const isValidArn = Boolean(isArn && partition && service && bucket);\n if (isArn && !isValidArn) {\n throw new Error(`Invalid ARN: ${bucketName} was an invalid ARN.`);\n }\n return isValidArn;\n}, \"isArnBucketName\");\n\n// src/adaptors/createConfigValueProvider.ts\nvar createConfigValueProvider = /* @__PURE__ */ __name((configKey, canonicalEndpointParamKey, config) => {\n const configProvider = /* @__PURE__ */ __name(async () => {\n const configValue = config[configKey] ?? config[canonicalEndpointParamKey];\n if (typeof configValue === \"function\") {\n return configValue();\n }\n return configValue;\n }, \"configProvider\");\n if (configKey === \"credentialScope\" || canonicalEndpointParamKey === \"CredentialScope\") {\n return async () => {\n const credentials = typeof config.credentials === \"function\" ? await config.credentials() : config.credentials;\n const configValue = (credentials == null ? void 0 : credentials.credentialScope) ?? (credentials == null ? void 0 : credentials.CredentialScope);\n return configValue;\n };\n }\n if (configKey === \"accountId\" || canonicalEndpointParamKey === \"AccountId\") {\n return async () => {\n const credentials = typeof config.credentials === \"function\" ? await config.credentials() : config.credentials;\n const configValue = (credentials == null ? void 0 : credentials.accountId) ?? (credentials == null ? void 0 : credentials.AccountId);\n return configValue;\n };\n }\n if (configKey === \"endpoint\" || canonicalEndpointParamKey === \"endpoint\") {\n return async () => {\n const endpoint = await configProvider();\n if (endpoint && typeof endpoint === \"object\") {\n if (\"url\" in endpoint) {\n return endpoint.url.href;\n }\n if (\"hostname\" in endpoint) {\n const { protocol, hostname, port, path } = endpoint;\n return `${protocol}//${hostname}${port ? \":\" + port : \"\"}${path}`;\n }\n }\n return endpoint;\n };\n }\n return configProvider;\n}, \"createConfigValueProvider\");\n\n// src/adaptors/getEndpointFromInstructions.ts\nvar import_getEndpointFromConfig = require(\"./adaptors/getEndpointFromConfig\");\n\n// src/adaptors/toEndpointV1.ts\nvar import_url_parser = require(\"@smithy/url-parser\");\nvar toEndpointV1 = /* @__PURE__ */ __name((endpoint) => {\n if (typeof endpoint === \"object\") {\n if (\"url\" in endpoint) {\n return (0, import_url_parser.parseUrl)(endpoint.url);\n }\n return endpoint;\n }\n return (0, import_url_parser.parseUrl)(endpoint);\n}, \"toEndpointV1\");\n\n// src/adaptors/getEndpointFromInstructions.ts\nvar getEndpointFromInstructions = /* @__PURE__ */ __name(async (commandInput, instructionsSupplier, clientConfig, context) => {\n if (!clientConfig.endpoint) {\n const endpointFromConfig = await (0, import_getEndpointFromConfig.getEndpointFromConfig)(clientConfig.serviceId || \"\");\n if (endpointFromConfig) {\n clientConfig.endpoint = () => Promise.resolve(toEndpointV1(endpointFromConfig));\n }\n }\n const endpointParams = await resolveParams(commandInput, instructionsSupplier, clientConfig);\n if (typeof clientConfig.endpointProvider !== \"function\") {\n throw new Error(\"config.endpointProvider is not set.\");\n }\n const endpoint = clientConfig.endpointProvider(endpointParams, context);\n return endpoint;\n}, \"getEndpointFromInstructions\");\nvar resolveParams = /* @__PURE__ */ __name(async (commandInput, instructionsSupplier, clientConfig) => {\n var _a;\n const endpointParams = {};\n const instructions = ((_a = instructionsSupplier == null ? void 0 : instructionsSupplier.getEndpointParameterInstructions) == null ? void 0 : _a.call(instructionsSupplier)) || {};\n for (const [name, instruction] of Object.entries(instructions)) {\n switch (instruction.type) {\n case \"staticContextParams\":\n endpointParams[name] = instruction.value;\n break;\n case \"contextParams\":\n endpointParams[name] = commandInput[instruction.name];\n break;\n case \"clientContextParams\":\n case \"builtInParams\":\n endpointParams[name] = await createConfigValueProvider(instruction.name, name, clientConfig)();\n break;\n default:\n throw new Error(\"Unrecognized endpoint parameter instruction: \" + JSON.stringify(instruction));\n }\n }\n if (Object.keys(instructions).length === 0) {\n Object.assign(endpointParams, clientConfig);\n }\n if (String(clientConfig.serviceId).toLowerCase() === \"s3\") {\n await resolveParamsForS3(endpointParams);\n }\n return endpointParams;\n}, \"resolveParams\");\n\n// src/endpointMiddleware.ts\nvar import_util_middleware = require(\"@smithy/util-middleware\");\nvar endpointMiddleware = /* @__PURE__ */ __name(({\n config,\n instructions\n}) => {\n return (next, context) => async (args) => {\n var _a, _b, _c;\n const endpoint = await getEndpointFromInstructions(\n args.input,\n {\n getEndpointParameterInstructions() {\n return instructions;\n }\n },\n { ...config },\n context\n );\n context.endpointV2 = endpoint;\n context.authSchemes = (_a = endpoint.properties) == null ? void 0 : _a.authSchemes;\n const authScheme = (_b = context.authSchemes) == null ? void 0 : _b[0];\n if (authScheme) {\n context[\"signing_region\"] = authScheme.signingRegion;\n context[\"signing_service\"] = authScheme.signingName;\n const smithyContext = (0, import_util_middleware.getSmithyContext)(context);\n const httpAuthOption = (_c = smithyContext == null ? void 0 : smithyContext.selectedHttpAuthScheme) == null ? void 0 : _c.httpAuthOption;\n if (httpAuthOption) {\n httpAuthOption.signingProperties = Object.assign(\n httpAuthOption.signingProperties || {},\n {\n signing_region: authScheme.signingRegion,\n signingRegion: authScheme.signingRegion,\n signing_service: authScheme.signingName,\n signingName: authScheme.signingName,\n signingRegionSet: authScheme.signingRegionSet\n },\n authScheme.properties\n );\n }\n }\n return next({\n ...args\n });\n };\n}, \"endpointMiddleware\");\n\n// src/getEndpointPlugin.ts\nvar import_middleware_serde = require(\"@smithy/middleware-serde\");\nvar endpointMiddlewareOptions = {\n step: \"serialize\",\n tags: [\"ENDPOINT_PARAMETERS\", \"ENDPOINT_V2\", \"ENDPOINT\"],\n name: \"endpointV2Middleware\",\n override: true,\n relation: \"before\",\n toMiddleware: import_middleware_serde.serializerMiddlewareOption.name\n};\nvar getEndpointPlugin = /* @__PURE__ */ __name((config, instructions) => ({\n applyToStack: (clientStack) => {\n clientStack.addRelativeTo(\n endpointMiddleware({\n config,\n instructions\n }),\n endpointMiddlewareOptions\n );\n }\n}), \"getEndpointPlugin\");\n\n// src/resolveEndpointConfig.ts\n\nvar resolveEndpointConfig = /* @__PURE__ */ __name((input) => {\n const tls = input.tls ?? true;\n const { endpoint } = input;\n const customEndpointProvider = endpoint != null ? async () => toEndpointV1(await (0, import_util_middleware.normalizeProvider)(endpoint)()) : void 0;\n const isCustomEndpoint = !!endpoint;\n return {\n ...input,\n endpoint: customEndpointProvider,\n tls,\n isCustomEndpoint,\n useDualstackEndpoint: (0, import_util_middleware.normalizeProvider)(input.useDualstackEndpoint ?? false),\n useFipsEndpoint: (0, import_util_middleware.normalizeProvider)(input.useFipsEndpoint ?? false)\n };\n}, \"resolveEndpointConfig\");\n// Annotate the CommonJS export names for ESM import in node:\n\n0 && (module.exports = {\n getEndpointFromInstructions,\n resolveParams,\n toEndpointV1,\n endpointMiddleware,\n endpointMiddlewareOptions,\n getEndpointPlugin,\n resolveEndpointConfig\n});\n\n",
|
|
100
|
+
"var __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __name = (target, value) => __defProp(target, \"name\", { value, configurable: true });\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/index.ts\nvar src_exports = {};\n__export(src_exports, {\n Field: () => Field,\n Fields: () => Fields,\n HttpRequest: () => HttpRequest,\n HttpResponse: () => HttpResponse,\n IHttpRequest: () => import_types.HttpRequest,\n getHttpHandlerExtensionConfiguration: () => getHttpHandlerExtensionConfiguration,\n isValidHostname: () => isValidHostname,\n resolveHttpHandlerRuntimeConfig: () => resolveHttpHandlerRuntimeConfig\n});\nmodule.exports = __toCommonJS(src_exports);\n\n// src/extensions/httpExtensionConfiguration.ts\nvar getHttpHandlerExtensionConfiguration = /* @__PURE__ */ __name((runtimeConfig) => {\n let httpHandler = runtimeConfig.httpHandler;\n return {\n setHttpHandler(handler) {\n httpHandler = handler;\n },\n httpHandler() {\n return httpHandler;\n },\n updateHttpClientConfig(key, value) {\n httpHandler.updateHttpClientConfig(key, value);\n },\n httpHandlerConfigs() {\n return httpHandler.httpHandlerConfigs();\n }\n };\n}, \"getHttpHandlerExtensionConfiguration\");\nvar resolveHttpHandlerRuntimeConfig = /* @__PURE__ */ __name((httpHandlerExtensionConfiguration) => {\n return {\n httpHandler: httpHandlerExtensionConfiguration.httpHandler()\n };\n}, \"resolveHttpHandlerRuntimeConfig\");\n\n// src/Field.ts\nvar import_types = require(\"@smithy/types\");\nvar _Field = class _Field {\n constructor({ name, kind = import_types.FieldPosition.HEADER, values = [] }) {\n this.name = name;\n this.kind = kind;\n this.values = values;\n }\n /**\n * Appends a value to the field.\n *\n * @param value The value to append.\n */\n add(value) {\n this.values.push(value);\n }\n /**\n * Overwrite existing field values.\n *\n * @param values The new field values.\n */\n set(values) {\n this.values = values;\n }\n /**\n * Remove all matching entries from list.\n *\n * @param value Value to remove.\n */\n remove(value) {\n this.values = this.values.filter((v) => v !== value);\n }\n /**\n * Get comma-delimited string.\n *\n * @returns String representation of {@link Field}.\n */\n toString() {\n return this.values.map((v) => v.includes(\",\") || v.includes(\" \") ? `\"${v}\"` : v).join(\", \");\n }\n /**\n * Get string values as a list\n *\n * @returns Values in {@link Field} as a list.\n */\n get() {\n return this.values;\n }\n};\n__name(_Field, \"Field\");\nvar Field = _Field;\n\n// src/Fields.ts\nvar _Fields = class _Fields {\n constructor({ fields = [], encoding = \"utf-8\" }) {\n this.entries = {};\n fields.forEach(this.setField.bind(this));\n this.encoding = encoding;\n }\n /**\n * Set entry for a {@link Field} name. The `name`\n * attribute will be used to key the collection.\n *\n * @param field The {@link Field} to set.\n */\n setField(field) {\n this.entries[field.name.toLowerCase()] = field;\n }\n /**\n * Retrieve {@link Field} entry by name.\n *\n * @param name The name of the {@link Field} entry\n * to retrieve\n * @returns The {@link Field} if it exists.\n */\n getField(name) {\n return this.entries[name.toLowerCase()];\n }\n /**\n * Delete entry from collection.\n *\n * @param name Name of the entry to delete.\n */\n removeField(name) {\n delete this.entries[name.toLowerCase()];\n }\n /**\n * Helper function for retrieving specific types of fields.\n * Used to grab all headers or all trailers.\n *\n * @param kind {@link FieldPosition} of entries to retrieve.\n * @returns The {@link Field} entries with the specified\n * {@link FieldPosition}.\n */\n getByType(kind) {\n return Object.values(this.entries).filter((field) => field.kind === kind);\n }\n};\n__name(_Fields, \"Fields\");\nvar Fields = _Fields;\n\n// src/httpRequest.ts\n\nvar _HttpRequest = class _HttpRequest {\n constructor(options) {\n this.method = options.method || \"GET\";\n this.hostname = options.hostname || \"localhost\";\n this.port = options.port;\n this.query = options.query || {};\n this.headers = options.headers || {};\n this.body = options.body;\n this.protocol = options.protocol ? options.protocol.slice(-1) !== \":\" ? `${options.protocol}:` : options.protocol : \"https:\";\n this.path = options.path ? options.path.charAt(0) !== \"/\" ? `/${options.path}` : options.path : \"/\";\n this.username = options.username;\n this.password = options.password;\n this.fragment = options.fragment;\n }\n /**\n * Note: this does not deep-clone the body.\n */\n static clone(request) {\n const cloned = new _HttpRequest({\n ...request,\n headers: { ...request.headers }\n });\n if (cloned.query) {\n cloned.query = cloneQuery(cloned.query);\n }\n return cloned;\n }\n /**\n * This method only actually asserts that request is the interface {@link IHttpRequest},\n * and not necessarily this concrete class. Left in place for API stability.\n *\n * Do not call instance methods on the input of this function, and\n * do not assume it has the HttpRequest prototype.\n */\n static isInstance(request) {\n if (!request) {\n return false;\n }\n const req = request;\n return \"method\" in req && \"protocol\" in req && \"hostname\" in req && \"path\" in req && typeof req[\"query\"] === \"object\" && typeof req[\"headers\"] === \"object\";\n }\n /**\n * @deprecated use static HttpRequest.clone(request) instead. It's not safe to call\n * this method because {@link HttpRequest.isInstance} incorrectly\n * asserts that IHttpRequest (interface) objects are of type HttpRequest (class).\n */\n clone() {\n return _HttpRequest.clone(this);\n }\n};\n__name(_HttpRequest, \"HttpRequest\");\nvar HttpRequest = _HttpRequest;\nfunction cloneQuery(query) {\n return Object.keys(query).reduce((carry, paramName) => {\n const param = query[paramName];\n return {\n ...carry,\n [paramName]: Array.isArray(param) ? [...param] : param\n };\n }, {});\n}\n__name(cloneQuery, \"cloneQuery\");\n\n// src/httpResponse.ts\nvar _HttpResponse = class _HttpResponse {\n constructor(options) {\n this.statusCode = options.statusCode;\n this.reason = options.reason;\n this.headers = options.headers || {};\n this.body = options.body;\n }\n static isInstance(response) {\n if (!response)\n return false;\n const resp = response;\n return typeof resp.statusCode === \"number\" && typeof resp.headers === \"object\";\n }\n};\n__name(_HttpResponse, \"HttpResponse\");\nvar HttpResponse = _HttpResponse;\n\n// src/isValidHostname.ts\nfunction isValidHostname(hostname) {\n const hostPattern = /^[a-z0-9][a-z0-9\\.\\-]*[a-z0-9]$/;\n return hostPattern.test(hostname);\n}\n__name(isValidHostname, \"isValidHostname\");\n// Annotate the CommonJS export names for ESM import in node:\n\n0 && (module.exports = {\n getHttpHandlerExtensionConfiguration,\n resolveHttpHandlerRuntimeConfig,\n Field,\n Fields,\n HttpRequest,\n HttpResponse,\n isValidHostname\n});\n\n",
|
|
101
|
+
"\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = rng;\n\nvar _crypto = _interopRequireDefault(require(\"crypto\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nconst rnds8Pool = new Uint8Array(256); // # of random values to pre-allocate\n\nlet poolPtr = rnds8Pool.length;\n\nfunction rng() {\n if (poolPtr > rnds8Pool.length - 16) {\n _crypto.default.randomFillSync(rnds8Pool);\n\n poolPtr = 0;\n }\n\n return rnds8Pool.slice(poolPtr, poolPtr += 16);\n}",
|
|
102
|
+
"\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _default = /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;\nexports.default = _default;",
|
|
103
|
+
"\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _regex = _interopRequireDefault(require(\"./regex.js\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction validate(uuid) {\n return typeof uuid === 'string' && _regex.default.test(uuid);\n}\n\nvar _default = validate;\nexports.default = _default;",
|
|
104
|
+
"\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nexports.unsafeStringify = unsafeStringify;\n\nvar _validate = _interopRequireDefault(require(\"./validate.js\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n/**\n * Convert array of 16 byte values to UUID string format of the form:\n * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\n */\nconst byteToHex = [];\n\nfor (let i = 0; i < 256; ++i) {\n byteToHex.push((i + 0x100).toString(16).slice(1));\n}\n\nfunction unsafeStringify(arr, offset = 0) {\n // Note: Be careful editing this code! It's been tuned for performance\n // and works in ways you may not expect. See https://github.com/uuidjs/uuid/pull/434\n return byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + '-' + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + '-' + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + '-' + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + '-' + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]];\n}\n\nfunction stringify(arr, offset = 0) {\n const uuid = unsafeStringify(arr, offset); // Consistency check for valid UUID. If this throws, it's likely due to one\n // of the following:\n // - One or more input array values don't map to a hex octet (leading to\n // \"undefined\" in the uuid)\n // - Invalid input values for the RFC `version` or `variant` fields\n\n if (!(0, _validate.default)(uuid)) {\n throw TypeError('Stringified UUID is invalid');\n }\n\n return uuid;\n}\n\nvar _default = stringify;\nexports.default = _default;",
|
|
105
|
+
"\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _rng = _interopRequireDefault(require(\"./rng.js\"));\n\nvar _stringify = require(\"./stringify.js\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// **`v1()` - Generate time-based UUID**\n//\n// Inspired by https://github.com/LiosK/UUID.js\n// and http://docs.python.org/library/uuid.html\nlet _nodeId;\n\nlet _clockseq; // Previous uuid creation time\n\n\nlet _lastMSecs = 0;\nlet _lastNSecs = 0; // See https://github.com/uuidjs/uuid for API details\n\nfunction v1(options, buf, offset) {\n let i = buf && offset || 0;\n const b = buf || new Array(16);\n options = options || {};\n let node = options.node || _nodeId;\n let clockseq = options.clockseq !== undefined ? options.clockseq : _clockseq; // node and clockseq need to be initialized to random values if they're not\n // specified. We do this lazily to minimize issues related to insufficient\n // system entropy. See #189\n\n if (node == null || clockseq == null) {\n const seedBytes = options.random || (options.rng || _rng.default)();\n\n if (node == null) {\n // Per 4.5, create and 48-bit node id, (47 random bits + multicast bit = 1)\n node = _nodeId = [seedBytes[0] | 0x01, seedBytes[1], seedBytes[2], seedBytes[3], seedBytes[4], seedBytes[5]];\n }\n\n if (clockseq == null) {\n // Per 4.2.2, randomize (14 bit) clockseq\n clockseq = _clockseq = (seedBytes[6] << 8 | seedBytes[7]) & 0x3fff;\n }\n } // UUID timestamps are 100 nano-second units since the Gregorian epoch,\n // (1582-10-15 00:00). JSNumbers aren't precise enough for this, so\n // time is handled internally as 'msecs' (integer milliseconds) and 'nsecs'\n // (100-nanoseconds offset from msecs) since unix epoch, 1970-01-01 00:00.\n\n\n let msecs = options.msecs !== undefined ? options.msecs : Date.now(); // Per 4.2.1.2, use count of uuid's generated during the current clock\n // cycle to simulate higher resolution clock\n\n let nsecs = options.nsecs !== undefined ? options.nsecs : _lastNSecs + 1; // Time since last uuid creation (in msecs)\n\n const dt = msecs - _lastMSecs + (nsecs - _lastNSecs) / 10000; // Per 4.2.1.2, Bump clockseq on clock regression\n\n if (dt < 0 && options.clockseq === undefined) {\n clockseq = clockseq + 1 & 0x3fff;\n } // Reset nsecs if clock regresses (new clockseq) or we've moved onto a new\n // time interval\n\n\n if ((dt < 0 || msecs > _lastMSecs) && options.nsecs === undefined) {\n nsecs = 0;\n } // Per 4.2.1.2 Throw error if too many uuids are requested\n\n\n if (nsecs >= 10000) {\n throw new Error(\"uuid.v1(): Can't create more than 10M uuids/sec\");\n }\n\n _lastMSecs = msecs;\n _lastNSecs = nsecs;\n _clockseq = clockseq; // Per 4.1.4 - Convert from unix epoch to Gregorian epoch\n\n msecs += 12219292800000; // `time_low`\n\n const tl = ((msecs & 0xfffffff) * 10000 + nsecs) % 0x100000000;\n b[i++] = tl >>> 24 & 0xff;\n b[i++] = tl >>> 16 & 0xff;\n b[i++] = tl >>> 8 & 0xff;\n b[i++] = tl & 0xff; // `time_mid`\n\n const tmh = msecs / 0x100000000 * 10000 & 0xfffffff;\n b[i++] = tmh >>> 8 & 0xff;\n b[i++] = tmh & 0xff; // `time_high_and_version`\n\n b[i++] = tmh >>> 24 & 0xf | 0x10; // include version\n\n b[i++] = tmh >>> 16 & 0xff; // `clock_seq_hi_and_reserved` (Per 4.2.2 - include variant)\n\n b[i++] = clockseq >>> 8 | 0x80; // `clock_seq_low`\n\n b[i++] = clockseq & 0xff; // `node`\n\n for (let n = 0; n < 6; ++n) {\n b[i + n] = node[n];\n }\n\n return buf || (0, _stringify.unsafeStringify)(b);\n}\n\nvar _default = v1;\nexports.default = _default;",
|
|
106
|
+
"\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _validate = _interopRequireDefault(require(\"./validate.js\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction parse(uuid) {\n if (!(0, _validate.default)(uuid)) {\n throw TypeError('Invalid UUID');\n }\n\n let v;\n const arr = new Uint8Array(16); // Parse ########-....-....-....-............\n\n arr[0] = (v = parseInt(uuid.slice(0, 8), 16)) >>> 24;\n arr[1] = v >>> 16 & 0xff;\n arr[2] = v >>> 8 & 0xff;\n arr[3] = v & 0xff; // Parse ........-####-....-....-............\n\n arr[4] = (v = parseInt(uuid.slice(9, 13), 16)) >>> 8;\n arr[5] = v & 0xff; // Parse ........-....-####-....-............\n\n arr[6] = (v = parseInt(uuid.slice(14, 18), 16)) >>> 8;\n arr[7] = v & 0xff; // Parse ........-....-....-####-............\n\n arr[8] = (v = parseInt(uuid.slice(19, 23), 16)) >>> 8;\n arr[9] = v & 0xff; // Parse ........-....-....-....-############\n // (Use \"/\" to avoid 32-bit truncation when bit-shifting high-order bytes)\n\n arr[10] = (v = parseInt(uuid.slice(24, 36), 16)) / 0x10000000000 & 0xff;\n arr[11] = v / 0x100000000 & 0xff;\n arr[12] = v >>> 24 & 0xff;\n arr[13] = v >>> 16 & 0xff;\n arr[14] = v >>> 8 & 0xff;\n arr[15] = v & 0xff;\n return arr;\n}\n\nvar _default = parse;\nexports.default = _default;",
|
|
107
|
+
"\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.URL = exports.DNS = void 0;\nexports.default = v35;\n\nvar _stringify = require(\"./stringify.js\");\n\nvar _parse = _interopRequireDefault(require(\"./parse.js\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction stringToBytes(str) {\n str = unescape(encodeURIComponent(str)); // UTF8 escape\n\n const bytes = [];\n\n for (let i = 0; i < str.length; ++i) {\n bytes.push(str.charCodeAt(i));\n }\n\n return bytes;\n}\n\nconst DNS = '6ba7b810-9dad-11d1-80b4-00c04fd430c8';\nexports.DNS = DNS;\nconst URL = '6ba7b811-9dad-11d1-80b4-00c04fd430c8';\nexports.URL = URL;\n\nfunction v35(name, version, hashfunc) {\n function generateUUID(value, namespace, buf, offset) {\n var _namespace;\n\n if (typeof value === 'string') {\n value = stringToBytes(value);\n }\n\n if (typeof namespace === 'string') {\n namespace = (0, _parse.default)(namespace);\n }\n\n if (((_namespace = namespace) === null || _namespace === void 0 ? void 0 : _namespace.length) !== 16) {\n throw TypeError('Namespace must be array-like (16 iterable integer values, 0-255)');\n } // Compute hash of namespace and value, Per 4.3\n // Future: Use spread syntax when supported on all platforms, e.g. `bytes =\n // hashfunc([...namespace, ... value])`\n\n\n let bytes = new Uint8Array(16 + value.length);\n bytes.set(namespace);\n bytes.set(value, namespace.length);\n bytes = hashfunc(bytes);\n bytes[6] = bytes[6] & 0x0f | version;\n bytes[8] = bytes[8] & 0x3f | 0x80;\n\n if (buf) {\n offset = offset || 0;\n\n for (let i = 0; i < 16; ++i) {\n buf[offset + i] = bytes[i];\n }\n\n return buf;\n }\n\n return (0, _stringify.unsafeStringify)(bytes);\n } // Function#name is not settable on some platforms (#270)\n\n\n try {\n generateUUID.name = name; // eslint-disable-next-line no-empty\n } catch (err) {} // For CommonJS default export support\n\n\n generateUUID.DNS = DNS;\n generateUUID.URL = URL;\n return generateUUID;\n}",
|
|
108
|
+
"\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _crypto = _interopRequireDefault(require(\"crypto\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction md5(bytes) {\n if (Array.isArray(bytes)) {\n bytes = Buffer.from(bytes);\n } else if (typeof bytes === 'string') {\n bytes = Buffer.from(bytes, 'utf8');\n }\n\n return _crypto.default.createHash('md5').update(bytes).digest();\n}\n\nvar _default = md5;\nexports.default = _default;",
|
|
109
|
+
"\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _v = _interopRequireDefault(require(\"./v35.js\"));\n\nvar _md = _interopRequireDefault(require(\"./md5.js\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nconst v3 = (0, _v.default)('v3', 0x30, _md.default);\nvar _default = v3;\nexports.default = _default;",
|
|
110
|
+
"\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _crypto = _interopRequireDefault(require(\"crypto\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar _default = {\n randomUUID: _crypto.default.randomUUID\n};\nexports.default = _default;",
|
|
111
|
+
"\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _native = _interopRequireDefault(require(\"./native.js\"));\n\nvar _rng = _interopRequireDefault(require(\"./rng.js\"));\n\nvar _stringify = require(\"./stringify.js\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction v4(options, buf, offset) {\n if (_native.default.randomUUID && !buf && !options) {\n return _native.default.randomUUID();\n }\n\n options = options || {};\n\n const rnds = options.random || (options.rng || _rng.default)(); // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`\n\n\n rnds[6] = rnds[6] & 0x0f | 0x40;\n rnds[8] = rnds[8] & 0x3f | 0x80; // Copy bytes to buffer, if provided\n\n if (buf) {\n offset = offset || 0;\n\n for (let i = 0; i < 16; ++i) {\n buf[offset + i] = rnds[i];\n }\n\n return buf;\n }\n\n return (0, _stringify.unsafeStringify)(rnds);\n}\n\nvar _default = v4;\nexports.default = _default;",
|
|
112
|
+
"\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _crypto = _interopRequireDefault(require(\"crypto\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction sha1(bytes) {\n if (Array.isArray(bytes)) {\n bytes = Buffer.from(bytes);\n } else if (typeof bytes === 'string') {\n bytes = Buffer.from(bytes, 'utf8');\n }\n\n return _crypto.default.createHash('sha1').update(bytes).digest();\n}\n\nvar _default = sha1;\nexports.default = _default;",
|
|
113
|
+
"\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _v = _interopRequireDefault(require(\"./v35.js\"));\n\nvar _sha = _interopRequireDefault(require(\"./sha1.js\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nconst v5 = (0, _v.default)('v5', 0x50, _sha.default);\nvar _default = v5;\nexports.default = _default;",
|
|
114
|
+
"\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _default = '00000000-0000-0000-0000-000000000000';\nexports.default = _default;",
|
|
115
|
+
"\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _validate = _interopRequireDefault(require(\"./validate.js\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction version(uuid) {\n if (!(0, _validate.default)(uuid)) {\n throw TypeError('Invalid UUID');\n }\n\n return parseInt(uuid.slice(14, 15), 16);\n}\n\nvar _default = version;\nexports.default = _default;",
|
|
116
|
+
"\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"NIL\", {\n enumerable: true,\n get: function () {\n return _nil.default;\n }\n});\nObject.defineProperty(exports, \"parse\", {\n enumerable: true,\n get: function () {\n return _parse.default;\n }\n});\nObject.defineProperty(exports, \"stringify\", {\n enumerable: true,\n get: function () {\n return _stringify.default;\n }\n});\nObject.defineProperty(exports, \"v1\", {\n enumerable: true,\n get: function () {\n return _v.default;\n }\n});\nObject.defineProperty(exports, \"v3\", {\n enumerable: true,\n get: function () {\n return _v2.default;\n }\n});\nObject.defineProperty(exports, \"v4\", {\n enumerable: true,\n get: function () {\n return _v3.default;\n }\n});\nObject.defineProperty(exports, \"v5\", {\n enumerable: true,\n get: function () {\n return _v4.default;\n }\n});\nObject.defineProperty(exports, \"validate\", {\n enumerable: true,\n get: function () {\n return _validate.default;\n }\n});\nObject.defineProperty(exports, \"version\", {\n enumerable: true,\n get: function () {\n return _version.default;\n }\n});\n\nvar _v = _interopRequireDefault(require(\"./v1.js\"));\n\nvar _v2 = _interopRequireDefault(require(\"./v3.js\"));\n\nvar _v3 = _interopRequireDefault(require(\"./v4.js\"));\n\nvar _v4 = _interopRequireDefault(require(\"./v5.js\"));\n\nvar _nil = _interopRequireDefault(require(\"./nil.js\"));\n\nvar _version = _interopRequireDefault(require(\"./version.js\"));\n\nvar _validate = _interopRequireDefault(require(\"./validate.js\"));\n\nvar _stringify = _interopRequireDefault(require(\"./stringify.js\"));\n\nvar _parse = _interopRequireDefault(require(\"./parse.js\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }",
|
|
117
|
+
"var __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __name = (target, value) => __defProp(target, \"name\", { value, configurable: true });\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/index.ts\nvar src_exports = {};\n__export(src_exports, {\n isClockSkewCorrectedError: () => isClockSkewCorrectedError,\n isClockSkewError: () => isClockSkewError,\n isRetryableByTrait: () => isRetryableByTrait,\n isServerError: () => isServerError,\n isThrottlingError: () => isThrottlingError,\n isTransientError: () => isTransientError\n});\nmodule.exports = __toCommonJS(src_exports);\n\n// src/constants.ts\nvar CLOCK_SKEW_ERROR_CODES = [\n \"AuthFailure\",\n \"InvalidSignatureException\",\n \"RequestExpired\",\n \"RequestInTheFuture\",\n \"RequestTimeTooSkewed\",\n \"SignatureDoesNotMatch\"\n];\nvar THROTTLING_ERROR_CODES = [\n \"BandwidthLimitExceeded\",\n \"EC2ThrottledException\",\n \"LimitExceededException\",\n \"PriorRequestNotComplete\",\n \"ProvisionedThroughputExceededException\",\n \"RequestLimitExceeded\",\n \"RequestThrottled\",\n \"RequestThrottledException\",\n \"SlowDown\",\n \"ThrottledException\",\n \"Throttling\",\n \"ThrottlingException\",\n \"TooManyRequestsException\",\n \"TransactionInProgressException\"\n // DynamoDB\n];\nvar TRANSIENT_ERROR_CODES = [\"TimeoutError\", \"RequestTimeout\", \"RequestTimeoutException\"];\nvar TRANSIENT_ERROR_STATUS_CODES = [500, 502, 503, 504];\nvar NODEJS_TIMEOUT_ERROR_CODES = [\"ECONNRESET\", \"ECONNREFUSED\", \"EPIPE\", \"ETIMEDOUT\"];\n\n// src/index.ts\nvar isRetryableByTrait = /* @__PURE__ */ __name((error) => error.$retryable !== void 0, \"isRetryableByTrait\");\nvar isClockSkewError = /* @__PURE__ */ __name((error) => CLOCK_SKEW_ERROR_CODES.includes(error.name), \"isClockSkewError\");\nvar isClockSkewCorrectedError = /* @__PURE__ */ __name((error) => {\n var _a;\n return (_a = error.$metadata) == null ? void 0 : _a.clockSkewCorrected;\n}, \"isClockSkewCorrectedError\");\nvar isThrottlingError = /* @__PURE__ */ __name((error) => {\n var _a, _b;\n return ((_a = error.$metadata) == null ? void 0 : _a.httpStatusCode) === 429 || THROTTLING_ERROR_CODES.includes(error.name) || ((_b = error.$retryable) == null ? void 0 : _b.throttling) == true;\n}, \"isThrottlingError\");\nvar isTransientError = /* @__PURE__ */ __name((error) => {\n var _a;\n return isClockSkewCorrectedError(error) || TRANSIENT_ERROR_CODES.includes(error.name) || NODEJS_TIMEOUT_ERROR_CODES.includes((error == null ? void 0 : error.code) || \"\") || TRANSIENT_ERROR_STATUS_CODES.includes(((_a = error.$metadata) == null ? void 0 : _a.httpStatusCode) || 0);\n}, \"isTransientError\");\nvar isServerError = /* @__PURE__ */ __name((error) => {\n var _a;\n if (((_a = error.$metadata) == null ? void 0 : _a.httpStatusCode) !== void 0) {\n const statusCode = error.$metadata.httpStatusCode;\n if (500 <= statusCode && statusCode <= 599 && !isTransientError(error)) {\n return true;\n }\n return false;\n }\n return false;\n}, \"isServerError\");\n// Annotate the CommonJS export names for ESM import in node:\n\n0 && (module.exports = {\n isRetryableByTrait,\n isClockSkewError,\n isClockSkewCorrectedError,\n isThrottlingError,\n isTransientError,\n isServerError\n});\n\n",
|
|
118
|
+
"var __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __name = (target, value) => __defProp(target, \"name\", { value, configurable: true });\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/index.ts\nvar src_exports = {};\n__export(src_exports, {\n AdaptiveRetryStrategy: () => AdaptiveRetryStrategy,\n ConfiguredRetryStrategy: () => ConfiguredRetryStrategy,\n DEFAULT_MAX_ATTEMPTS: () => DEFAULT_MAX_ATTEMPTS,\n DEFAULT_RETRY_DELAY_BASE: () => DEFAULT_RETRY_DELAY_BASE,\n DEFAULT_RETRY_MODE: () => DEFAULT_RETRY_MODE,\n DefaultRateLimiter: () => DefaultRateLimiter,\n INITIAL_RETRY_TOKENS: () => INITIAL_RETRY_TOKENS,\n INVOCATION_ID_HEADER: () => INVOCATION_ID_HEADER,\n MAXIMUM_RETRY_DELAY: () => MAXIMUM_RETRY_DELAY,\n NO_RETRY_INCREMENT: () => NO_RETRY_INCREMENT,\n REQUEST_HEADER: () => REQUEST_HEADER,\n RETRY_COST: () => RETRY_COST,\n RETRY_MODES: () => RETRY_MODES,\n StandardRetryStrategy: () => StandardRetryStrategy,\n THROTTLING_RETRY_DELAY_BASE: () => THROTTLING_RETRY_DELAY_BASE,\n TIMEOUT_RETRY_COST: () => TIMEOUT_RETRY_COST\n});\nmodule.exports = __toCommonJS(src_exports);\n\n// src/config.ts\nvar RETRY_MODES = /* @__PURE__ */ ((RETRY_MODES2) => {\n RETRY_MODES2[\"STANDARD\"] = \"standard\";\n RETRY_MODES2[\"ADAPTIVE\"] = \"adaptive\";\n return RETRY_MODES2;\n})(RETRY_MODES || {});\nvar DEFAULT_MAX_ATTEMPTS = 3;\nvar DEFAULT_RETRY_MODE = \"standard\" /* STANDARD */;\n\n// src/DefaultRateLimiter.ts\nvar import_service_error_classification = require(\"@smithy/service-error-classification\");\nvar _DefaultRateLimiter = class _DefaultRateLimiter {\n constructor(options) {\n // Pre-set state variables\n this.currentCapacity = 0;\n this.enabled = false;\n this.lastMaxRate = 0;\n this.measuredTxRate = 0;\n this.requestCount = 0;\n this.lastTimestamp = 0;\n this.timeWindow = 0;\n this.beta = (options == null ? void 0 : options.beta) ?? 0.7;\n this.minCapacity = (options == null ? void 0 : options.minCapacity) ?? 1;\n this.minFillRate = (options == null ? void 0 : options.minFillRate) ?? 0.5;\n this.scaleConstant = (options == null ? void 0 : options.scaleConstant) ?? 0.4;\n this.smooth = (options == null ? void 0 : options.smooth) ?? 0.8;\n const currentTimeInSeconds = this.getCurrentTimeInSeconds();\n this.lastThrottleTime = currentTimeInSeconds;\n this.lastTxRateBucket = Math.floor(this.getCurrentTimeInSeconds());\n this.fillRate = this.minFillRate;\n this.maxCapacity = this.minCapacity;\n }\n getCurrentTimeInSeconds() {\n return Date.now() / 1e3;\n }\n async getSendToken() {\n return this.acquireTokenBucket(1);\n }\n async acquireTokenBucket(amount) {\n if (!this.enabled) {\n return;\n }\n this.refillTokenBucket();\n if (amount > this.currentCapacity) {\n const delay = (amount - this.currentCapacity) / this.fillRate * 1e3;\n await new Promise((resolve) => setTimeout(resolve, delay));\n }\n this.currentCapacity = this.currentCapacity - amount;\n }\n refillTokenBucket() {\n const timestamp = this.getCurrentTimeInSeconds();\n if (!this.lastTimestamp) {\n this.lastTimestamp = timestamp;\n return;\n }\n const fillAmount = (timestamp - this.lastTimestamp) * this.fillRate;\n this.currentCapacity = Math.min(this.maxCapacity, this.currentCapacity + fillAmount);\n this.lastTimestamp = timestamp;\n }\n updateClientSendingRate(response) {\n let calculatedRate;\n this.updateMeasuredRate();\n if ((0, import_service_error_classification.isThrottlingError)(response)) {\n const rateToUse = !this.enabled ? this.measuredTxRate : Math.min(this.measuredTxRate, this.fillRate);\n this.lastMaxRate = rateToUse;\n this.calculateTimeWindow();\n this.lastThrottleTime = this.getCurrentTimeInSeconds();\n calculatedRate = this.cubicThrottle(rateToUse);\n this.enableTokenBucket();\n } else {\n this.calculateTimeWindow();\n calculatedRate = this.cubicSuccess(this.getCurrentTimeInSeconds());\n }\n const newRate = Math.min(calculatedRate, 2 * this.measuredTxRate);\n this.updateTokenBucketRate(newRate);\n }\n calculateTimeWindow() {\n this.timeWindow = this.getPrecise(Math.pow(this.lastMaxRate * (1 - this.beta) / this.scaleConstant, 1 / 3));\n }\n cubicThrottle(rateToUse) {\n return this.getPrecise(rateToUse * this.beta);\n }\n cubicSuccess(timestamp) {\n return this.getPrecise(\n this.scaleConstant * Math.pow(timestamp - this.lastThrottleTime - this.timeWindow, 3) + this.lastMaxRate\n );\n }\n enableTokenBucket() {\n this.enabled = true;\n }\n updateTokenBucketRate(newRate) {\n this.refillTokenBucket();\n this.fillRate = Math.max(newRate, this.minFillRate);\n this.maxCapacity = Math.max(newRate, this.minCapacity);\n this.currentCapacity = Math.min(this.currentCapacity, this.maxCapacity);\n }\n updateMeasuredRate() {\n const t = this.getCurrentTimeInSeconds();\n const timeBucket = Math.floor(t * 2) / 2;\n this.requestCount++;\n if (timeBucket > this.lastTxRateBucket) {\n const currentRate = this.requestCount / (timeBucket - this.lastTxRateBucket);\n this.measuredTxRate = this.getPrecise(currentRate * this.smooth + this.measuredTxRate * (1 - this.smooth));\n this.requestCount = 0;\n this.lastTxRateBucket = timeBucket;\n }\n }\n getPrecise(num) {\n return parseFloat(num.toFixed(8));\n }\n};\n__name(_DefaultRateLimiter, \"DefaultRateLimiter\");\nvar DefaultRateLimiter = _DefaultRateLimiter;\n\n// src/constants.ts\nvar DEFAULT_RETRY_DELAY_BASE = 100;\nvar MAXIMUM_RETRY_DELAY = 20 * 1e3;\nvar THROTTLING_RETRY_DELAY_BASE = 500;\nvar INITIAL_RETRY_TOKENS = 500;\nvar RETRY_COST = 5;\nvar TIMEOUT_RETRY_COST = 10;\nvar NO_RETRY_INCREMENT = 1;\nvar INVOCATION_ID_HEADER = \"amz-sdk-invocation-id\";\nvar REQUEST_HEADER = \"amz-sdk-request\";\n\n// src/defaultRetryBackoffStrategy.ts\nvar getDefaultRetryBackoffStrategy = /* @__PURE__ */ __name(() => {\n let delayBase = DEFAULT_RETRY_DELAY_BASE;\n const computeNextBackoffDelay = /* @__PURE__ */ __name((attempts) => {\n return Math.floor(Math.min(MAXIMUM_RETRY_DELAY, Math.random() * 2 ** attempts * delayBase));\n }, \"computeNextBackoffDelay\");\n const setDelayBase = /* @__PURE__ */ __name((delay) => {\n delayBase = delay;\n }, \"setDelayBase\");\n return {\n computeNextBackoffDelay,\n setDelayBase\n };\n}, \"getDefaultRetryBackoffStrategy\");\n\n// src/defaultRetryToken.ts\nvar createDefaultRetryToken = /* @__PURE__ */ __name(({\n retryDelay,\n retryCount,\n retryCost\n}) => {\n const getRetryCount = /* @__PURE__ */ __name(() => retryCount, \"getRetryCount\");\n const getRetryDelay = /* @__PURE__ */ __name(() => Math.min(MAXIMUM_RETRY_DELAY, retryDelay), \"getRetryDelay\");\n const getRetryCost = /* @__PURE__ */ __name(() => retryCost, \"getRetryCost\");\n return {\n getRetryCount,\n getRetryDelay,\n getRetryCost\n };\n}, \"createDefaultRetryToken\");\n\n// src/StandardRetryStrategy.ts\nvar _StandardRetryStrategy = class _StandardRetryStrategy {\n constructor(maxAttempts) {\n this.maxAttempts = maxAttempts;\n this.mode = \"standard\" /* STANDARD */;\n this.capacity = INITIAL_RETRY_TOKENS;\n this.retryBackoffStrategy = getDefaultRetryBackoffStrategy();\n this.maxAttemptsProvider = typeof maxAttempts === \"function\" ? maxAttempts : async () => maxAttempts;\n }\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n async acquireInitialRetryToken(retryTokenScope) {\n return createDefaultRetryToken({\n retryDelay: DEFAULT_RETRY_DELAY_BASE,\n retryCount: 0\n });\n }\n async refreshRetryTokenForRetry(token, errorInfo) {\n const maxAttempts = await this.getMaxAttempts();\n if (this.shouldRetry(token, errorInfo, maxAttempts)) {\n const errorType = errorInfo.errorType;\n this.retryBackoffStrategy.setDelayBase(\n errorType === \"THROTTLING\" ? THROTTLING_RETRY_DELAY_BASE : DEFAULT_RETRY_DELAY_BASE\n );\n const delayFromErrorType = this.retryBackoffStrategy.computeNextBackoffDelay(token.getRetryCount());\n const retryDelay = errorInfo.retryAfterHint ? Math.max(errorInfo.retryAfterHint.getTime() - Date.now() || 0, delayFromErrorType) : delayFromErrorType;\n const capacityCost = this.getCapacityCost(errorType);\n this.capacity -= capacityCost;\n return createDefaultRetryToken({\n retryDelay,\n retryCount: token.getRetryCount() + 1,\n retryCost: capacityCost\n });\n }\n throw new Error(\"No retry token available\");\n }\n recordSuccess(token) {\n this.capacity = Math.max(INITIAL_RETRY_TOKENS, this.capacity + (token.getRetryCost() ?? NO_RETRY_INCREMENT));\n }\n /**\n * @returns the current available retry capacity.\n *\n * This number decreases when retries are executed and refills when requests or retries succeed.\n */\n getCapacity() {\n return this.capacity;\n }\n async getMaxAttempts() {\n try {\n return await this.maxAttemptsProvider();\n } catch (error) {\n console.warn(`Max attempts provider could not resolve. Using default of ${DEFAULT_MAX_ATTEMPTS}`);\n return DEFAULT_MAX_ATTEMPTS;\n }\n }\n shouldRetry(tokenToRenew, errorInfo, maxAttempts) {\n const attempts = tokenToRenew.getRetryCount() + 1;\n return attempts < maxAttempts && this.capacity >= this.getCapacityCost(errorInfo.errorType) && this.isRetryableError(errorInfo.errorType);\n }\n getCapacityCost(errorType) {\n return errorType === \"TRANSIENT\" ? TIMEOUT_RETRY_COST : RETRY_COST;\n }\n isRetryableError(errorType) {\n return errorType === \"THROTTLING\" || errorType === \"TRANSIENT\";\n }\n};\n__name(_StandardRetryStrategy, \"StandardRetryStrategy\");\nvar StandardRetryStrategy = _StandardRetryStrategy;\n\n// src/AdaptiveRetryStrategy.ts\nvar _AdaptiveRetryStrategy = class _AdaptiveRetryStrategy {\n constructor(maxAttemptsProvider, options) {\n this.maxAttemptsProvider = maxAttemptsProvider;\n this.mode = \"adaptive\" /* ADAPTIVE */;\n const { rateLimiter } = options ?? {};\n this.rateLimiter = rateLimiter ?? new DefaultRateLimiter();\n this.standardRetryStrategy = new StandardRetryStrategy(maxAttemptsProvider);\n }\n async acquireInitialRetryToken(retryTokenScope) {\n await this.rateLimiter.getSendToken();\n return this.standardRetryStrategy.acquireInitialRetryToken(retryTokenScope);\n }\n async refreshRetryTokenForRetry(tokenToRenew, errorInfo) {\n this.rateLimiter.updateClientSendingRate(errorInfo);\n return this.standardRetryStrategy.refreshRetryTokenForRetry(tokenToRenew, errorInfo);\n }\n recordSuccess(token) {\n this.rateLimiter.updateClientSendingRate({});\n this.standardRetryStrategy.recordSuccess(token);\n }\n};\n__name(_AdaptiveRetryStrategy, \"AdaptiveRetryStrategy\");\nvar AdaptiveRetryStrategy = _AdaptiveRetryStrategy;\n\n// src/ConfiguredRetryStrategy.ts\nvar _ConfiguredRetryStrategy = class _ConfiguredRetryStrategy extends StandardRetryStrategy {\n /**\n * @param maxAttempts - the maximum number of retry attempts allowed.\n * e.g., if set to 3, then 4 total requests are possible.\n * @param computeNextBackoffDelay - a millisecond delay for each retry or a function that takes the retry attempt\n * and returns the delay.\n *\n * @example exponential backoff.\n * ```js\n * new Client({\n * retryStrategy: new ConfiguredRetryStrategy(3, (attempt) => attempt ** 2)\n * });\n * ```\n * @example constant delay.\n * ```js\n * new Client({\n * retryStrategy: new ConfiguredRetryStrategy(3, 2000)\n * });\n * ```\n */\n constructor(maxAttempts, computeNextBackoffDelay = DEFAULT_RETRY_DELAY_BASE) {\n super(typeof maxAttempts === \"function\" ? maxAttempts : async () => maxAttempts);\n if (typeof computeNextBackoffDelay === \"number\") {\n this.computeNextBackoffDelay = () => computeNextBackoffDelay;\n } else {\n this.computeNextBackoffDelay = computeNextBackoffDelay;\n }\n }\n async refreshRetryTokenForRetry(tokenToRenew, errorInfo) {\n const token = await super.refreshRetryTokenForRetry(tokenToRenew, errorInfo);\n token.getRetryDelay = () => this.computeNextBackoffDelay(token.getRetryCount());\n return token;\n }\n};\n__name(_ConfiguredRetryStrategy, \"ConfiguredRetryStrategy\");\nvar ConfiguredRetryStrategy = _ConfiguredRetryStrategy;\n// Annotate the CommonJS export names for ESM import in node:\n\n0 && (module.exports = {\n AdaptiveRetryStrategy,\n ConfiguredRetryStrategy,\n DefaultRateLimiter,\n StandardRetryStrategy,\n RETRY_MODES,\n DEFAULT_MAX_ATTEMPTS,\n DEFAULT_RETRY_MODE,\n DEFAULT_RETRY_DELAY_BASE,\n MAXIMUM_RETRY_DELAY,\n THROTTLING_RETRY_DELAY_BASE,\n INITIAL_RETRY_TOKENS,\n RETRY_COST,\n TIMEOUT_RETRY_COST,\n NO_RETRY_INCREMENT,\n INVOCATION_ID_HEADER,\n REQUEST_HEADER\n});\n\n",
|
|
119
|
+
"var __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __name = (target, value) => __defProp(target, \"name\", { value, configurable: true });\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/index.ts\nvar src_exports = {};\n__export(src_exports, {\n constructStack: () => constructStack\n});\nmodule.exports = __toCommonJS(src_exports);\n\n// src/MiddlewareStack.ts\nvar getAllAliases = /* @__PURE__ */ __name((name, aliases) => {\n const _aliases = [];\n if (name) {\n _aliases.push(name);\n }\n if (aliases) {\n for (const alias of aliases) {\n _aliases.push(alias);\n }\n }\n return _aliases;\n}, \"getAllAliases\");\nvar getMiddlewareNameWithAliases = /* @__PURE__ */ __name((name, aliases) => {\n return `${name || \"anonymous\"}${aliases && aliases.length > 0 ? ` (a.k.a. ${aliases.join(\",\")})` : \"\"}`;\n}, \"getMiddlewareNameWithAliases\");\nvar constructStack = /* @__PURE__ */ __name(() => {\n let absoluteEntries = [];\n let relativeEntries = [];\n let identifyOnResolve = false;\n const entriesNameSet = /* @__PURE__ */ new Set();\n const sort = /* @__PURE__ */ __name((entries) => entries.sort(\n (a, b) => stepWeights[b.step] - stepWeights[a.step] || priorityWeights[b.priority || \"normal\"] - priorityWeights[a.priority || \"normal\"]\n ), \"sort\");\n const removeByName = /* @__PURE__ */ __name((toRemove) => {\n let isRemoved = false;\n const filterCb = /* @__PURE__ */ __name((entry) => {\n const aliases = getAllAliases(entry.name, entry.aliases);\n if (aliases.includes(toRemove)) {\n isRemoved = true;\n for (const alias of aliases) {\n entriesNameSet.delete(alias);\n }\n return false;\n }\n return true;\n }, \"filterCb\");\n absoluteEntries = absoluteEntries.filter(filterCb);\n relativeEntries = relativeEntries.filter(filterCb);\n return isRemoved;\n }, \"removeByName\");\n const removeByReference = /* @__PURE__ */ __name((toRemove) => {\n let isRemoved = false;\n const filterCb = /* @__PURE__ */ __name((entry) => {\n if (entry.middleware === toRemove) {\n isRemoved = true;\n for (const alias of getAllAliases(entry.name, entry.aliases)) {\n entriesNameSet.delete(alias);\n }\n return false;\n }\n return true;\n }, \"filterCb\");\n absoluteEntries = absoluteEntries.filter(filterCb);\n relativeEntries = relativeEntries.filter(filterCb);\n return isRemoved;\n }, \"removeByReference\");\n const cloneTo = /* @__PURE__ */ __name((toStack) => {\n var _a;\n absoluteEntries.forEach((entry) => {\n toStack.add(entry.middleware, { ...entry });\n });\n relativeEntries.forEach((entry) => {\n toStack.addRelativeTo(entry.middleware, { ...entry });\n });\n (_a = toStack.identifyOnResolve) == null ? void 0 : _a.call(toStack, stack.identifyOnResolve());\n return toStack;\n }, \"cloneTo\");\n const expandRelativeMiddlewareList = /* @__PURE__ */ __name((from) => {\n const expandedMiddlewareList = [];\n from.before.forEach((entry) => {\n if (entry.before.length === 0 && entry.after.length === 0) {\n expandedMiddlewareList.push(entry);\n } else {\n expandedMiddlewareList.push(...expandRelativeMiddlewareList(entry));\n }\n });\n expandedMiddlewareList.push(from);\n from.after.reverse().forEach((entry) => {\n if (entry.before.length === 0 && entry.after.length === 0) {\n expandedMiddlewareList.push(entry);\n } else {\n expandedMiddlewareList.push(...expandRelativeMiddlewareList(entry));\n }\n });\n return expandedMiddlewareList;\n }, \"expandRelativeMiddlewareList\");\n const getMiddlewareList = /* @__PURE__ */ __name((debug = false) => {\n const normalizedAbsoluteEntries = [];\n const normalizedRelativeEntries = [];\n const normalizedEntriesNameMap = {};\n absoluteEntries.forEach((entry) => {\n const normalizedEntry = {\n ...entry,\n before: [],\n after: []\n };\n for (const alias of getAllAliases(normalizedEntry.name, normalizedEntry.aliases)) {\n normalizedEntriesNameMap[alias] = normalizedEntry;\n }\n normalizedAbsoluteEntries.push(normalizedEntry);\n });\n relativeEntries.forEach((entry) => {\n const normalizedEntry = {\n ...entry,\n before: [],\n after: []\n };\n for (const alias of getAllAliases(normalizedEntry.name, normalizedEntry.aliases)) {\n normalizedEntriesNameMap[alias] = normalizedEntry;\n }\n normalizedRelativeEntries.push(normalizedEntry);\n });\n normalizedRelativeEntries.forEach((entry) => {\n if (entry.toMiddleware) {\n const toMiddleware = normalizedEntriesNameMap[entry.toMiddleware];\n if (toMiddleware === void 0) {\n if (debug) {\n return;\n }\n throw new Error(\n `${entry.toMiddleware} is not found when adding ${getMiddlewareNameWithAliases(entry.name, entry.aliases)} middleware ${entry.relation} ${entry.toMiddleware}`\n );\n }\n if (entry.relation === \"after\") {\n toMiddleware.after.push(entry);\n }\n if (entry.relation === \"before\") {\n toMiddleware.before.push(entry);\n }\n }\n });\n const mainChain = sort(normalizedAbsoluteEntries).map(expandRelativeMiddlewareList).reduce(\n (wholeList, expandedMiddlewareList) => {\n wholeList.push(...expandedMiddlewareList);\n return wholeList;\n },\n []\n );\n return mainChain;\n }, \"getMiddlewareList\");\n const stack = {\n add: (middleware, options = {}) => {\n const { name, override, aliases: _aliases } = options;\n const entry = {\n step: \"initialize\",\n priority: \"normal\",\n middleware,\n ...options\n };\n const aliases = getAllAliases(name, _aliases);\n if (aliases.length > 0) {\n if (aliases.some((alias) => entriesNameSet.has(alias))) {\n if (!override)\n throw new Error(`Duplicate middleware name '${getMiddlewareNameWithAliases(name, _aliases)}'`);\n for (const alias of aliases) {\n const toOverrideIndex = absoluteEntries.findIndex(\n (entry2) => {\n var _a;\n return entry2.name === alias || ((_a = entry2.aliases) == null ? void 0 : _a.some((a) => a === alias));\n }\n );\n if (toOverrideIndex === -1) {\n continue;\n }\n const toOverride = absoluteEntries[toOverrideIndex];\n if (toOverride.step !== entry.step || entry.priority !== toOverride.priority) {\n throw new Error(\n `\"${getMiddlewareNameWithAliases(toOverride.name, toOverride.aliases)}\" middleware with ${toOverride.priority} priority in ${toOverride.step} step cannot be overridden by \"${getMiddlewareNameWithAliases(name, _aliases)}\" middleware with ${entry.priority} priority in ${entry.step} step.`\n );\n }\n absoluteEntries.splice(toOverrideIndex, 1);\n }\n }\n for (const alias of aliases) {\n entriesNameSet.add(alias);\n }\n }\n absoluteEntries.push(entry);\n },\n addRelativeTo: (middleware, options) => {\n const { name, override, aliases: _aliases } = options;\n const entry = {\n middleware,\n ...options\n };\n const aliases = getAllAliases(name, _aliases);\n if (aliases.length > 0) {\n if (aliases.some((alias) => entriesNameSet.has(alias))) {\n if (!override)\n throw new Error(`Duplicate middleware name '${getMiddlewareNameWithAliases(name, _aliases)}'`);\n for (const alias of aliases) {\n const toOverrideIndex = relativeEntries.findIndex(\n (entry2) => {\n var _a;\n return entry2.name === alias || ((_a = entry2.aliases) == null ? void 0 : _a.some((a) => a === alias));\n }\n );\n if (toOverrideIndex === -1) {\n continue;\n }\n const toOverride = relativeEntries[toOverrideIndex];\n if (toOverride.toMiddleware !== entry.toMiddleware || toOverride.relation !== entry.relation) {\n throw new Error(\n `\"${getMiddlewareNameWithAliases(toOverride.name, toOverride.aliases)}\" middleware ${toOverride.relation} \"${toOverride.toMiddleware}\" middleware cannot be overridden by \"${getMiddlewareNameWithAliases(name, _aliases)}\" middleware ${entry.relation} \"${entry.toMiddleware}\" middleware.`\n );\n }\n relativeEntries.splice(toOverrideIndex, 1);\n }\n }\n for (const alias of aliases) {\n entriesNameSet.add(alias);\n }\n }\n relativeEntries.push(entry);\n },\n clone: () => cloneTo(constructStack()),\n use: (plugin) => {\n plugin.applyToStack(stack);\n },\n remove: (toRemove) => {\n if (typeof toRemove === \"string\")\n return removeByName(toRemove);\n else\n return removeByReference(toRemove);\n },\n removeByTag: (toRemove) => {\n let isRemoved = false;\n const filterCb = /* @__PURE__ */ __name((entry) => {\n const { tags, name, aliases: _aliases } = entry;\n if (tags && tags.includes(toRemove)) {\n const aliases = getAllAliases(name, _aliases);\n for (const alias of aliases) {\n entriesNameSet.delete(alias);\n }\n isRemoved = true;\n return false;\n }\n return true;\n }, \"filterCb\");\n absoluteEntries = absoluteEntries.filter(filterCb);\n relativeEntries = relativeEntries.filter(filterCb);\n return isRemoved;\n },\n concat: (from) => {\n var _a;\n const cloned = cloneTo(constructStack());\n cloned.use(from);\n cloned.identifyOnResolve(\n identifyOnResolve || cloned.identifyOnResolve() || (((_a = from.identifyOnResolve) == null ? void 0 : _a.call(from)) ?? false)\n );\n return cloned;\n },\n applyToStack: cloneTo,\n identify: () => {\n return getMiddlewareList(true).map((mw) => {\n const step = mw.step ?? mw.relation + \" \" + mw.toMiddleware;\n return getMiddlewareNameWithAliases(mw.name, mw.aliases) + \" - \" + step;\n });\n },\n identifyOnResolve(toggle) {\n if (typeof toggle === \"boolean\")\n identifyOnResolve = toggle;\n return identifyOnResolve;\n },\n resolve: (handler, context) => {\n for (const middleware of getMiddlewareList().map((entry) => entry.middleware).reverse()) {\n handler = middleware(handler, context);\n }\n if (identifyOnResolve) {\n console.log(stack.identify());\n }\n return handler;\n }\n };\n return stack;\n}, \"constructStack\");\nvar stepWeights = {\n initialize: 5,\n serialize: 4,\n build: 3,\n finalizeRequest: 2,\n deserialize: 1\n};\nvar priorityWeights = {\n high: 3,\n normal: 2,\n low: 1\n};\n// Annotate the CommonJS export names for ESM import in node:\n\n0 && (module.exports = {\n constructStack\n});\n\n",
|
|
120
|
+
"var __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __name = (target, value) => __defProp(target, \"name\", { value, configurable: true });\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/index.ts\nvar src_exports = {};\n__export(src_exports, {\n isArrayBuffer: () => isArrayBuffer\n});\nmodule.exports = __toCommonJS(src_exports);\nvar isArrayBuffer = /* @__PURE__ */ __name((arg) => typeof ArrayBuffer === \"function\" && arg instanceof ArrayBuffer || Object.prototype.toString.call(arg) === \"[object ArrayBuffer]\", \"isArrayBuffer\");\n// Annotate the CommonJS export names for ESM import in node:\n\n0 && (module.exports = {\n isArrayBuffer\n});\n\n",
|
|
121
|
+
"var __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __name = (target, value) => __defProp(target, \"name\", { value, configurable: true });\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/index.ts\nvar src_exports = {};\n__export(src_exports, {\n fromArrayBuffer: () => fromArrayBuffer,\n fromString: () => fromString\n});\nmodule.exports = __toCommonJS(src_exports);\nvar import_is_array_buffer = require(\"@smithy/is-array-buffer\");\nvar import_buffer = require(\"buffer\");\nvar fromArrayBuffer = /* @__PURE__ */ __name((input, offset = 0, length = input.byteLength - offset) => {\n if (!(0, import_is_array_buffer.isArrayBuffer)(input)) {\n throw new TypeError(`The \"input\" argument must be ArrayBuffer. Received type ${typeof input} (${input})`);\n }\n return import_buffer.Buffer.from(input, offset, length);\n}, \"fromArrayBuffer\");\nvar fromString = /* @__PURE__ */ __name((input, encoding) => {\n if (typeof input !== \"string\") {\n throw new TypeError(`The \"input\" argument must be of type string. Received type ${typeof input} (${input})`);\n }\n return encoding ? import_buffer.Buffer.from(input, encoding) : import_buffer.Buffer.from(input);\n}, \"fromString\");\n// Annotate the CommonJS export names for ESM import in node:\n\n0 && (module.exports = {\n fromArrayBuffer,\n fromString\n});\n\n",
|
|
122
|
+
"\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.fromBase64 = void 0;\nconst util_buffer_from_1 = require(\"@smithy/util-buffer-from\");\nconst BASE64_REGEX = /^[A-Za-z0-9+/]*={0,2}$/;\nconst fromBase64 = (input) => {\n if ((input.length * 3) % 4 !== 0) {\n throw new TypeError(`Incorrect padding on base64 string.`);\n }\n if (!BASE64_REGEX.exec(input)) {\n throw new TypeError(`Invalid base64 string.`);\n }\n const buffer = (0, util_buffer_from_1.fromString)(input, \"base64\");\n return new Uint8Array(buffer.buffer, buffer.byteOffset, buffer.byteLength);\n};\nexports.fromBase64 = fromBase64;\n",
|
|
123
|
+
"var __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __name = (target, value) => __defProp(target, \"name\", { value, configurable: true });\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/index.ts\nvar src_exports = {};\n__export(src_exports, {\n fromUtf8: () => fromUtf8,\n toUint8Array: () => toUint8Array,\n toUtf8: () => toUtf8\n});\nmodule.exports = __toCommonJS(src_exports);\n\n// src/fromUtf8.ts\nvar import_util_buffer_from = require(\"@smithy/util-buffer-from\");\nvar fromUtf8 = /* @__PURE__ */ __name((input) => {\n const buf = (0, import_util_buffer_from.fromString)(input, \"utf8\");\n return new Uint8Array(buf.buffer, buf.byteOffset, buf.byteLength / Uint8Array.BYTES_PER_ELEMENT);\n}, \"fromUtf8\");\n\n// src/toUint8Array.ts\nvar toUint8Array = /* @__PURE__ */ __name((data) => {\n if (typeof data === \"string\") {\n return fromUtf8(data);\n }\n if (ArrayBuffer.isView(data)) {\n return new Uint8Array(data.buffer, data.byteOffset, data.byteLength / Uint8Array.BYTES_PER_ELEMENT);\n }\n return new Uint8Array(data);\n}, \"toUint8Array\");\n\n// src/toUtf8.ts\n\nvar toUtf8 = /* @__PURE__ */ __name((input) => {\n if (typeof input === \"string\") {\n return input;\n }\n if (typeof input !== \"object\" || typeof input.byteOffset !== \"number\" || typeof input.byteLength !== \"number\") {\n throw new Error(\"@smithy/util-utf8: toUtf8 encoder function only accepts string | Uint8Array.\");\n }\n return (0, import_util_buffer_from.fromArrayBuffer)(input.buffer, input.byteOffset, input.byteLength).toString(\"utf8\");\n}, \"toUtf8\");\n// Annotate the CommonJS export names for ESM import in node:\n\n0 && (module.exports = {\n fromUtf8,\n toUint8Array,\n toUtf8\n});\n\n",
|
|
124
|
+
"\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.toBase64 = void 0;\nconst util_buffer_from_1 = require(\"@smithy/util-buffer-from\");\nconst util_utf8_1 = require(\"@smithy/util-utf8\");\nconst toBase64 = (_input) => {\n let input;\n if (typeof _input === \"string\") {\n input = (0, util_utf8_1.fromUtf8)(_input);\n }\n else {\n input = _input;\n }\n if (typeof input !== \"object\" || typeof input.byteOffset !== \"number\" || typeof input.byteLength !== \"number\") {\n throw new Error(\"@smithy/util-base64: toBase64 encoder function only accepts string | Uint8Array.\");\n }\n return (0, util_buffer_from_1.fromArrayBuffer)(input.buffer, input.byteOffset, input.byteLength).toString(\"base64\");\n};\nexports.toBase64 = toBase64;\n",
|
|
125
|
+
"var __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, \"default\"), secondTarget && __copyProps(secondTarget, mod, \"default\"));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/index.ts\nvar src_exports = {};\nmodule.exports = __toCommonJS(src_exports);\n__reExport(src_exports, require(\"././fromBase64\"), module.exports);\n__reExport(src_exports, require(\"././toBase64\"), module.exports);\n// Annotate the CommonJS export names for ESM import in node:\n\n0 && (module.exports = {\n fromBase64,\n toBase64\n});\n\n",
|
|
126
|
+
"\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getAwsChunkedEncodingStream = void 0;\nconst stream_1 = require(\"stream\");\nconst getAwsChunkedEncodingStream = (readableStream, options) => {\n const { base64Encoder, bodyLengthChecker, checksumAlgorithmFn, checksumLocationName, streamHasher } = options;\n const checksumRequired = base64Encoder !== undefined &&\n checksumAlgorithmFn !== undefined &&\n checksumLocationName !== undefined &&\n streamHasher !== undefined;\n const digest = checksumRequired ? streamHasher(checksumAlgorithmFn, readableStream) : undefined;\n const awsChunkedEncodingStream = new stream_1.Readable({ read: () => { } });\n readableStream.on(\"data\", (data) => {\n const length = bodyLengthChecker(data) || 0;\n awsChunkedEncodingStream.push(`${length.toString(16)}\\r\\n`);\n awsChunkedEncodingStream.push(data);\n awsChunkedEncodingStream.push(\"\\r\\n\");\n });\n readableStream.on(\"end\", async () => {\n awsChunkedEncodingStream.push(`0\\r\\n`);\n if (checksumRequired) {\n const checksum = base64Encoder(await digest);\n awsChunkedEncodingStream.push(`${checksumLocationName}:${checksum}\\r\\n`);\n awsChunkedEncodingStream.push(`\\r\\n`);\n }\n awsChunkedEncodingStream.push(null);\n });\n return awsChunkedEncodingStream;\n};\nexports.getAwsChunkedEncodingStream = getAwsChunkedEncodingStream;\n",
|
|
127
|
+
"var __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __name = (target, value) => __defProp(target, \"name\", { value, configurable: true });\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/index.ts\nvar src_exports = {};\n__export(src_exports, {\n escapeUri: () => escapeUri,\n escapeUriPath: () => escapeUriPath\n});\nmodule.exports = __toCommonJS(src_exports);\n\n// src/escape-uri.ts\nvar escapeUri = /* @__PURE__ */ __name((uri) => (\n // AWS percent-encodes some extra non-standard characters in a URI\n encodeURIComponent(uri).replace(/[!'()*]/g, hexEncode)\n), \"escapeUri\");\nvar hexEncode = /* @__PURE__ */ __name((c) => `%${c.charCodeAt(0).toString(16).toUpperCase()}`, \"hexEncode\");\n\n// src/escape-uri-path.ts\nvar escapeUriPath = /* @__PURE__ */ __name((uri) => uri.split(\"/\").map(escapeUri).join(\"/\"), \"escapeUriPath\");\n// Annotate the CommonJS export names for ESM import in node:\n\n0 && (module.exports = {\n escapeUri,\n escapeUriPath\n});\n\n",
|
|
128
|
+
"var __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __name = (target, value) => __defProp(target, \"name\", { value, configurable: true });\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/index.ts\nvar src_exports = {};\n__export(src_exports, {\n buildQueryString: () => buildQueryString\n});\nmodule.exports = __toCommonJS(src_exports);\nvar import_util_uri_escape = require(\"@smithy/util-uri-escape\");\nfunction buildQueryString(query) {\n const parts = [];\n for (let key of Object.keys(query).sort()) {\n const value = query[key];\n key = (0, import_util_uri_escape.escapeUri)(key);\n if (Array.isArray(value)) {\n for (let i = 0, iLen = value.length; i < iLen; i++) {\n parts.push(`${key}=${(0, import_util_uri_escape.escapeUri)(value[i])}`);\n }\n } else {\n let qsEntry = key;\n if (value || typeof value === \"string\") {\n qsEntry += `=${(0, import_util_uri_escape.escapeUri)(value)}`;\n }\n parts.push(qsEntry);\n }\n }\n return parts.join(\"&\");\n}\n__name(buildQueryString, \"buildQueryString\");\n// Annotate the CommonJS export names for ESM import in node:\n\n0 && (module.exports = {\n buildQueryString\n});\n\n",
|
|
129
|
+
"var __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __name = (target, value) => __defProp(target, \"name\", { value, configurable: true });\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/index.ts\nvar src_exports = {};\n__export(src_exports, {\n DEFAULT_REQUEST_TIMEOUT: () => DEFAULT_REQUEST_TIMEOUT,\n NodeHttp2Handler: () => NodeHttp2Handler,\n NodeHttpHandler: () => NodeHttpHandler,\n streamCollector: () => streamCollector\n});\nmodule.exports = __toCommonJS(src_exports);\n\n// src/node-http-handler.ts\nvar import_protocol_http = require(\"@smithy/protocol-http\");\nvar import_querystring_builder = require(\"@smithy/querystring-builder\");\nvar import_http = require(\"http\");\nvar import_https = require(\"https\");\n\n// src/constants.ts\nvar NODEJS_TIMEOUT_ERROR_CODES = [\"ECONNRESET\", \"EPIPE\", \"ETIMEDOUT\"];\n\n// src/get-transformed-headers.ts\nvar getTransformedHeaders = /* @__PURE__ */ __name((headers) => {\n const transformedHeaders = {};\n for (const name of Object.keys(headers)) {\n const headerValues = headers[name];\n transformedHeaders[name] = Array.isArray(headerValues) ? headerValues.join(\",\") : headerValues;\n }\n return transformedHeaders;\n}, \"getTransformedHeaders\");\n\n// src/set-connection-timeout.ts\nvar setConnectionTimeout = /* @__PURE__ */ __name((request, reject, timeoutInMs = 0) => {\n if (!timeoutInMs) {\n return;\n }\n const timeoutId = setTimeout(() => {\n request.destroy();\n reject(\n Object.assign(new Error(`Socket timed out without establishing a connection within ${timeoutInMs} ms`), {\n name: \"TimeoutError\"\n })\n );\n }, timeoutInMs);\n request.on(\"socket\", (socket) => {\n if (socket.connecting) {\n socket.on(\"connect\", () => {\n clearTimeout(timeoutId);\n });\n } else {\n clearTimeout(timeoutId);\n }\n });\n}, \"setConnectionTimeout\");\n\n// src/set-socket-keep-alive.ts\nvar setSocketKeepAlive = /* @__PURE__ */ __name((request, { keepAlive, keepAliveMsecs }) => {\n if (keepAlive !== true) {\n return;\n }\n request.on(\"socket\", (socket) => {\n socket.setKeepAlive(keepAlive, keepAliveMsecs || 0);\n });\n}, \"setSocketKeepAlive\");\n\n// src/set-socket-timeout.ts\nvar setSocketTimeout = /* @__PURE__ */ __name((request, reject, timeoutInMs = 0) => {\n request.setTimeout(timeoutInMs, () => {\n request.destroy();\n reject(Object.assign(new Error(`Connection timed out after ${timeoutInMs} ms`), { name: \"TimeoutError\" }));\n });\n}, \"setSocketTimeout\");\n\n// src/write-request-body.ts\nvar import_stream = require(\"stream\");\nvar MIN_WAIT_TIME = 1e3;\nasync function writeRequestBody(httpRequest, request, maxContinueTimeoutMs = MIN_WAIT_TIME) {\n const headers = request.headers ?? {};\n const expect = headers[\"Expect\"] || headers[\"expect\"];\n let timeoutId = -1;\n let hasError = false;\n if (expect === \"100-continue\") {\n await Promise.race([\n new Promise((resolve) => {\n timeoutId = Number(setTimeout(resolve, Math.max(MIN_WAIT_TIME, maxContinueTimeoutMs)));\n }),\n new Promise((resolve) => {\n httpRequest.on(\"continue\", () => {\n clearTimeout(timeoutId);\n resolve();\n });\n httpRequest.on(\"error\", () => {\n hasError = true;\n clearTimeout(timeoutId);\n resolve();\n });\n })\n ]);\n }\n if (!hasError) {\n writeBody(httpRequest, request.body);\n }\n}\n__name(writeRequestBody, \"writeRequestBody\");\nfunction writeBody(httpRequest, body) {\n if (body instanceof import_stream.Readable) {\n body.pipe(httpRequest);\n return;\n }\n if (body) {\n if (Buffer.isBuffer(body) || typeof body === \"string\") {\n httpRequest.end(body);\n return;\n }\n const uint8 = body;\n if (typeof uint8 === \"object\" && uint8.buffer && typeof uint8.byteOffset === \"number\" && typeof uint8.byteLength === \"number\") {\n httpRequest.end(Buffer.from(uint8.buffer, uint8.byteOffset, uint8.byteLength));\n return;\n }\n httpRequest.end(Buffer.from(body));\n return;\n }\n httpRequest.end();\n}\n__name(writeBody, \"writeBody\");\n\n// src/node-http-handler.ts\nvar DEFAULT_REQUEST_TIMEOUT = 0;\nvar _NodeHttpHandler = class _NodeHttpHandler {\n constructor(options) {\n this.socketWarningTimestamp = 0;\n // Node http handler is hard-coded to http/1.1: https://github.com/nodejs/node/blob/ff5664b83b89c55e4ab5d5f60068fb457f1f5872/lib/_http_server.js#L286\n this.metadata = { handlerProtocol: \"http/1.1\" };\n this.configProvider = new Promise((resolve, reject) => {\n if (typeof options === \"function\") {\n options().then((_options) => {\n resolve(this.resolveDefaultConfig(_options));\n }).catch(reject);\n } else {\n resolve(this.resolveDefaultConfig(options));\n }\n });\n }\n /**\n * @returns the input if it is an HttpHandler of any class,\n * or instantiates a new instance of this handler.\n */\n static create(instanceOrOptions) {\n if (typeof (instanceOrOptions == null ? void 0 : instanceOrOptions.handle) === \"function\") {\n return instanceOrOptions;\n }\n return new _NodeHttpHandler(instanceOrOptions);\n }\n /**\n * @internal\n *\n * @param agent - http(s) agent in use by the NodeHttpHandler instance.\n * @param socketWarningTimestamp - last socket usage check timestamp.\n * @param logger - channel for the warning.\n * @returns timestamp of last emitted warning.\n */\n static checkSocketUsage(agent, socketWarningTimestamp, logger = console) {\n var _a, _b, _c;\n const { sockets, requests, maxSockets } = agent;\n if (typeof maxSockets !== \"number\" || maxSockets === Infinity) {\n return socketWarningTimestamp;\n }\n const interval = 15e3;\n if (Date.now() - interval < socketWarningTimestamp) {\n return socketWarningTimestamp;\n }\n if (sockets && requests) {\n for (const origin in sockets) {\n const socketsInUse = ((_a = sockets[origin]) == null ? void 0 : _a.length) ?? 0;\n const requestsEnqueued = ((_b = requests[origin]) == null ? void 0 : _b.length) ?? 0;\n if (socketsInUse >= maxSockets && requestsEnqueued >= 2 * maxSockets) {\n (_c = logger == null ? void 0 : logger.warn) == null ? void 0 : _c.call(\n logger,\n `@smithy/node-http-handler:WARN - socket usage at capacity=${socketsInUse} and ${requestsEnqueued} additional requests are enqueued.\nSee https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/node-configuring-maxsockets.html\nor increase socketAcquisitionWarningTimeout=(millis) in the NodeHttpHandler config.`\n );\n return Date.now();\n }\n }\n }\n return socketWarningTimestamp;\n }\n resolveDefaultConfig(options) {\n const { requestTimeout, connectionTimeout, socketTimeout, httpAgent, httpsAgent } = options || {};\n const keepAlive = true;\n const maxSockets = 50;\n return {\n connectionTimeout,\n requestTimeout: requestTimeout ?? socketTimeout,\n httpAgent: (() => {\n if (httpAgent instanceof import_http.Agent || typeof (httpAgent == null ? void 0 : httpAgent.destroy) === \"function\") {\n return httpAgent;\n }\n return new import_http.Agent({ keepAlive, maxSockets, ...httpAgent });\n })(),\n httpsAgent: (() => {\n if (httpsAgent instanceof import_https.Agent || typeof (httpsAgent == null ? void 0 : httpsAgent.destroy) === \"function\") {\n return httpsAgent;\n }\n return new import_https.Agent({ keepAlive, maxSockets, ...httpsAgent });\n })(),\n logger: console\n };\n }\n destroy() {\n var _a, _b, _c, _d;\n (_b = (_a = this.config) == null ? void 0 : _a.httpAgent) == null ? void 0 : _b.destroy();\n (_d = (_c = this.config) == null ? void 0 : _c.httpsAgent) == null ? void 0 : _d.destroy();\n }\n async handle(request, { abortSignal } = {}) {\n if (!this.config) {\n this.config = await this.configProvider;\n }\n let socketCheckTimeoutId;\n return new Promise((_resolve, _reject) => {\n let writeRequestBodyPromise = void 0;\n const resolve = /* @__PURE__ */ __name(async (arg) => {\n await writeRequestBodyPromise;\n clearTimeout(socketCheckTimeoutId);\n _resolve(arg);\n }, \"resolve\");\n const reject = /* @__PURE__ */ __name(async (arg) => {\n await writeRequestBodyPromise;\n clearTimeout(socketCheckTimeoutId);\n _reject(arg);\n }, \"reject\");\n if (!this.config) {\n throw new Error(\"Node HTTP request handler config is not resolved\");\n }\n if (abortSignal == null ? void 0 : abortSignal.aborted) {\n const abortError = new Error(\"Request aborted\");\n abortError.name = \"AbortError\";\n reject(abortError);\n return;\n }\n const isSSL = request.protocol === \"https:\";\n const agent = isSSL ? this.config.httpsAgent : this.config.httpAgent;\n socketCheckTimeoutId = setTimeout(\n () => {\n this.socketWarningTimestamp = _NodeHttpHandler.checkSocketUsage(\n agent,\n this.socketWarningTimestamp,\n this.config.logger\n );\n },\n this.config.socketAcquisitionWarningTimeout ?? (this.config.requestTimeout ?? 2e3) + (this.config.connectionTimeout ?? 1e3)\n );\n const queryString = (0, import_querystring_builder.buildQueryString)(request.query || {});\n let auth = void 0;\n if (request.username != null || request.password != null) {\n const username = request.username ?? \"\";\n const password = request.password ?? \"\";\n auth = `${username}:${password}`;\n }\n let path = request.path;\n if (queryString) {\n path += `?${queryString}`;\n }\n if (request.fragment) {\n path += `#${request.fragment}`;\n }\n const nodeHttpsOptions = {\n headers: request.headers,\n host: request.hostname,\n method: request.method,\n path,\n port: request.port,\n agent,\n auth\n };\n const requestFunc = isSSL ? import_https.request : import_http.request;\n const req = requestFunc(nodeHttpsOptions, (res) => {\n const httpResponse = new import_protocol_http.HttpResponse({\n statusCode: res.statusCode || -1,\n reason: res.statusMessage,\n headers: getTransformedHeaders(res.headers),\n body: res\n });\n resolve({ response: httpResponse });\n });\n req.on(\"error\", (err) => {\n if (NODEJS_TIMEOUT_ERROR_CODES.includes(err.code)) {\n reject(Object.assign(err, { name: \"TimeoutError\" }));\n } else {\n reject(err);\n }\n });\n setConnectionTimeout(req, reject, this.config.connectionTimeout);\n setSocketTimeout(req, reject, this.config.requestTimeout);\n if (abortSignal) {\n const onAbort = /* @__PURE__ */ __name(() => {\n req.destroy();\n const abortError = new Error(\"Request aborted\");\n abortError.name = \"AbortError\";\n reject(abortError);\n }, \"onAbort\");\n if (typeof abortSignal.addEventListener === \"function\") {\n const signal = abortSignal;\n signal.addEventListener(\"abort\", onAbort, { once: true });\n req.once(\"close\", () => signal.removeEventListener(\"abort\", onAbort));\n } else {\n abortSignal.onabort = onAbort;\n }\n }\n const httpAgent = nodeHttpsOptions.agent;\n if (typeof httpAgent === \"object\" && \"keepAlive\" in httpAgent) {\n setSocketKeepAlive(req, {\n // @ts-expect-error keepAlive is not public on httpAgent.\n keepAlive: httpAgent.keepAlive,\n // @ts-expect-error keepAliveMsecs is not public on httpAgent.\n keepAliveMsecs: httpAgent.keepAliveMsecs\n });\n }\n writeRequestBodyPromise = writeRequestBody(req, request, this.config.requestTimeout).catch((e) => {\n clearTimeout(socketCheckTimeoutId);\n return _reject(e);\n });\n });\n }\n updateHttpClientConfig(key, value) {\n this.config = void 0;\n this.configProvider = this.configProvider.then((config) => {\n return {\n ...config,\n [key]: value\n };\n });\n }\n httpHandlerConfigs() {\n return this.config ?? {};\n }\n};\n__name(_NodeHttpHandler, \"NodeHttpHandler\");\nvar NodeHttpHandler = _NodeHttpHandler;\n\n// src/node-http2-handler.ts\n\n\nvar import_http22 = require(\"http2\");\n\n// src/node-http2-connection-manager.ts\nvar import_http2 = __toESM(require(\"http2\"));\n\n// src/node-http2-connection-pool.ts\nvar _NodeHttp2ConnectionPool = class _NodeHttp2ConnectionPool {\n constructor(sessions) {\n this.sessions = [];\n this.sessions = sessions ?? [];\n }\n poll() {\n if (this.sessions.length > 0) {\n return this.sessions.shift();\n }\n }\n offerLast(session) {\n this.sessions.push(session);\n }\n contains(session) {\n return this.sessions.includes(session);\n }\n remove(session) {\n this.sessions = this.sessions.filter((s) => s !== session);\n }\n [Symbol.iterator]() {\n return this.sessions[Symbol.iterator]();\n }\n destroy(connection) {\n for (const session of this.sessions) {\n if (session === connection) {\n if (!session.destroyed) {\n session.destroy();\n }\n }\n }\n }\n};\n__name(_NodeHttp2ConnectionPool, \"NodeHttp2ConnectionPool\");\nvar NodeHttp2ConnectionPool = _NodeHttp2ConnectionPool;\n\n// src/node-http2-connection-manager.ts\nvar _NodeHttp2ConnectionManager = class _NodeHttp2ConnectionManager {\n constructor(config) {\n this.sessionCache = /* @__PURE__ */ new Map();\n this.config = config;\n if (this.config.maxConcurrency && this.config.maxConcurrency <= 0) {\n throw new RangeError(\"maxConcurrency must be greater than zero.\");\n }\n }\n lease(requestContext, connectionConfiguration) {\n const url = this.getUrlString(requestContext);\n const existingPool = this.sessionCache.get(url);\n if (existingPool) {\n const existingSession = existingPool.poll();\n if (existingSession && !this.config.disableConcurrency) {\n return existingSession;\n }\n }\n const session = import_http2.default.connect(url);\n if (this.config.maxConcurrency) {\n session.settings({ maxConcurrentStreams: this.config.maxConcurrency }, (err) => {\n if (err) {\n throw new Error(\n \"Fail to set maxConcurrentStreams to \" + this.config.maxConcurrency + \"when creating new session for \" + requestContext.destination.toString()\n );\n }\n });\n }\n session.unref();\n const destroySessionCb = /* @__PURE__ */ __name(() => {\n session.destroy();\n this.deleteSession(url, session);\n }, \"destroySessionCb\");\n session.on(\"goaway\", destroySessionCb);\n session.on(\"error\", destroySessionCb);\n session.on(\"frameError\", destroySessionCb);\n session.on(\"close\", () => this.deleteSession(url, session));\n if (connectionConfiguration.requestTimeout) {\n session.setTimeout(connectionConfiguration.requestTimeout, destroySessionCb);\n }\n const connectionPool = this.sessionCache.get(url) || new NodeHttp2ConnectionPool();\n connectionPool.offerLast(session);\n this.sessionCache.set(url, connectionPool);\n return session;\n }\n /**\n * Delete a session from the connection pool.\n * @param authority The authority of the session to delete.\n * @param session The session to delete.\n */\n deleteSession(authority, session) {\n const existingConnectionPool = this.sessionCache.get(authority);\n if (!existingConnectionPool) {\n return;\n }\n if (!existingConnectionPool.contains(session)) {\n return;\n }\n existingConnectionPool.remove(session);\n this.sessionCache.set(authority, existingConnectionPool);\n }\n release(requestContext, session) {\n var _a;\n const cacheKey = this.getUrlString(requestContext);\n (_a = this.sessionCache.get(cacheKey)) == null ? void 0 : _a.offerLast(session);\n }\n destroy() {\n for (const [key, connectionPool] of this.sessionCache) {\n for (const session of connectionPool) {\n if (!session.destroyed) {\n session.destroy();\n }\n connectionPool.remove(session);\n }\n this.sessionCache.delete(key);\n }\n }\n setMaxConcurrentStreams(maxConcurrentStreams) {\n if (this.config.maxConcurrency && this.config.maxConcurrency <= 0) {\n throw new RangeError(\"maxConcurrentStreams must be greater than zero.\");\n }\n this.config.maxConcurrency = maxConcurrentStreams;\n }\n setDisableConcurrentStreams(disableConcurrentStreams) {\n this.config.disableConcurrency = disableConcurrentStreams;\n }\n getUrlString(request) {\n return request.destination.toString();\n }\n};\n__name(_NodeHttp2ConnectionManager, \"NodeHttp2ConnectionManager\");\nvar NodeHttp2ConnectionManager = _NodeHttp2ConnectionManager;\n\n// src/node-http2-handler.ts\nvar _NodeHttp2Handler = class _NodeHttp2Handler {\n constructor(options) {\n this.metadata = { handlerProtocol: \"h2\" };\n this.connectionManager = new NodeHttp2ConnectionManager({});\n this.configProvider = new Promise((resolve, reject) => {\n if (typeof options === \"function\") {\n options().then((opts) => {\n resolve(opts || {});\n }).catch(reject);\n } else {\n resolve(options || {});\n }\n });\n }\n /**\n * @returns the input if it is an HttpHandler of any class,\n * or instantiates a new instance of this handler.\n */\n static create(instanceOrOptions) {\n if (typeof (instanceOrOptions == null ? void 0 : instanceOrOptions.handle) === \"function\") {\n return instanceOrOptions;\n }\n return new _NodeHttp2Handler(instanceOrOptions);\n }\n destroy() {\n this.connectionManager.destroy();\n }\n async handle(request, { abortSignal } = {}) {\n if (!this.config) {\n this.config = await this.configProvider;\n this.connectionManager.setDisableConcurrentStreams(this.config.disableConcurrentStreams || false);\n if (this.config.maxConcurrentStreams) {\n this.connectionManager.setMaxConcurrentStreams(this.config.maxConcurrentStreams);\n }\n }\n const { requestTimeout, disableConcurrentStreams } = this.config;\n return new Promise((_resolve, _reject) => {\n var _a;\n let fulfilled = false;\n let writeRequestBodyPromise = void 0;\n const resolve = /* @__PURE__ */ __name(async (arg) => {\n await writeRequestBodyPromise;\n _resolve(arg);\n }, \"resolve\");\n const reject = /* @__PURE__ */ __name(async (arg) => {\n await writeRequestBodyPromise;\n _reject(arg);\n }, \"reject\");\n if (abortSignal == null ? void 0 : abortSignal.aborted) {\n fulfilled = true;\n const abortError = new Error(\"Request aborted\");\n abortError.name = \"AbortError\";\n reject(abortError);\n return;\n }\n const { hostname, method, port, protocol, query } = request;\n let auth = \"\";\n if (request.username != null || request.password != null) {\n const username = request.username ?? \"\";\n const password = request.password ?? \"\";\n auth = `${username}:${password}@`;\n }\n const authority = `${protocol}//${auth}${hostname}${port ? `:${port}` : \"\"}`;\n const requestContext = { destination: new URL(authority) };\n const session = this.connectionManager.lease(requestContext, {\n requestTimeout: (_a = this.config) == null ? void 0 : _a.sessionTimeout,\n disableConcurrentStreams: disableConcurrentStreams || false\n });\n const rejectWithDestroy = /* @__PURE__ */ __name((err) => {\n if (disableConcurrentStreams) {\n this.destroySession(session);\n }\n fulfilled = true;\n reject(err);\n }, \"rejectWithDestroy\");\n const queryString = (0, import_querystring_builder.buildQueryString)(query || {});\n let path = request.path;\n if (queryString) {\n path += `?${queryString}`;\n }\n if (request.fragment) {\n path += `#${request.fragment}`;\n }\n const req = session.request({\n ...request.headers,\n [import_http22.constants.HTTP2_HEADER_PATH]: path,\n [import_http22.constants.HTTP2_HEADER_METHOD]: method\n });\n session.ref();\n req.on(\"response\", (headers) => {\n const httpResponse = new import_protocol_http.HttpResponse({\n statusCode: headers[\":status\"] || -1,\n headers: getTransformedHeaders(headers),\n body: req\n });\n fulfilled = true;\n resolve({ response: httpResponse });\n if (disableConcurrentStreams) {\n session.close();\n this.connectionManager.deleteSession(authority, session);\n }\n });\n if (requestTimeout) {\n req.setTimeout(requestTimeout, () => {\n req.close();\n const timeoutError = new Error(`Stream timed out because of no activity for ${requestTimeout} ms`);\n timeoutError.name = \"TimeoutError\";\n rejectWithDestroy(timeoutError);\n });\n }\n if (abortSignal) {\n const onAbort = /* @__PURE__ */ __name(() => {\n req.close();\n const abortError = new Error(\"Request aborted\");\n abortError.name = \"AbortError\";\n rejectWithDestroy(abortError);\n }, \"onAbort\");\n if (typeof abortSignal.addEventListener === \"function\") {\n const signal = abortSignal;\n signal.addEventListener(\"abort\", onAbort, { once: true });\n req.once(\"close\", () => signal.removeEventListener(\"abort\", onAbort));\n } else {\n abortSignal.onabort = onAbort;\n }\n }\n req.on(\"frameError\", (type, code, id) => {\n rejectWithDestroy(new Error(`Frame type id ${type} in stream id ${id} has failed with code ${code}.`));\n });\n req.on(\"error\", rejectWithDestroy);\n req.on(\"aborted\", () => {\n rejectWithDestroy(\n new Error(`HTTP/2 stream is abnormally aborted in mid-communication with result code ${req.rstCode}.`)\n );\n });\n req.on(\"close\", () => {\n session.unref();\n if (disableConcurrentStreams) {\n session.destroy();\n }\n if (!fulfilled) {\n rejectWithDestroy(new Error(\"Unexpected error: http2 request did not get a response\"));\n }\n });\n writeRequestBodyPromise = writeRequestBody(req, request, requestTimeout);\n });\n }\n updateHttpClientConfig(key, value) {\n this.config = void 0;\n this.configProvider = this.configProvider.then((config) => {\n return {\n ...config,\n [key]: value\n };\n });\n }\n httpHandlerConfigs() {\n return this.config ?? {};\n }\n /**\n * Destroys a session.\n * @param session The session to destroy.\n */\n destroySession(session) {\n if (!session.destroyed) {\n session.destroy();\n }\n }\n};\n__name(_NodeHttp2Handler, \"NodeHttp2Handler\");\nvar NodeHttp2Handler = _NodeHttp2Handler;\n\n// src/stream-collector/collector.ts\n\nvar _Collector = class _Collector extends import_stream.Writable {\n constructor() {\n super(...arguments);\n this.bufferedBytes = [];\n }\n _write(chunk, encoding, callback) {\n this.bufferedBytes.push(chunk);\n callback();\n }\n};\n__name(_Collector, \"Collector\");\nvar Collector = _Collector;\n\n// src/stream-collector/index.ts\nvar streamCollector = /* @__PURE__ */ __name((stream) => {\n if (isReadableStreamInstance(stream)) {\n return collectReadableStream(stream);\n }\n return new Promise((resolve, reject) => {\n const collector = new Collector();\n stream.pipe(collector);\n stream.on(\"error\", (err) => {\n collector.end();\n reject(err);\n });\n collector.on(\"error\", reject);\n collector.on(\"finish\", function() {\n const bytes = new Uint8Array(Buffer.concat(this.bufferedBytes));\n resolve(bytes);\n });\n });\n}, \"streamCollector\");\nvar isReadableStreamInstance = /* @__PURE__ */ __name((stream) => typeof ReadableStream === \"function\" && stream instanceof ReadableStream, \"isReadableStreamInstance\");\nasync function collectReadableStream(stream) {\n const chunks = [];\n const reader = stream.getReader();\n let isDone = false;\n let length = 0;\n while (!isDone) {\n const { done, value } = await reader.read();\n if (value) {\n chunks.push(value);\n length += value.length;\n }\n isDone = done;\n }\n const collected = new Uint8Array(length);\n let offset = 0;\n for (const chunk of chunks) {\n collected.set(chunk, offset);\n offset += chunk.length;\n }\n return collected;\n}\n__name(collectReadableStream, \"collectReadableStream\");\n// Annotate the CommonJS export names for ESM import in node:\n\n0 && (module.exports = {\n DEFAULT_REQUEST_TIMEOUT,\n NodeHttpHandler,\n NodeHttp2Handler,\n streamCollector\n});\n\n",
|
|
130
|
+
"var __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __name = (target, value) => __defProp(target, \"name\", { value, configurable: true });\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/index.ts\nvar src_exports = {};\n__export(src_exports, {\n FetchHttpHandler: () => FetchHttpHandler,\n keepAliveSupport: () => keepAliveSupport,\n streamCollector: () => streamCollector\n});\nmodule.exports = __toCommonJS(src_exports);\n\n// src/fetch-http-handler.ts\nvar import_protocol_http = require(\"@smithy/protocol-http\");\nvar import_querystring_builder = require(\"@smithy/querystring-builder\");\n\n// src/request-timeout.ts\nfunction requestTimeout(timeoutInMs = 0) {\n return new Promise((resolve, reject) => {\n if (timeoutInMs) {\n setTimeout(() => {\n const timeoutError = new Error(`Request did not complete within ${timeoutInMs} ms`);\n timeoutError.name = \"TimeoutError\";\n reject(timeoutError);\n }, timeoutInMs);\n }\n });\n}\n__name(requestTimeout, \"requestTimeout\");\n\n// src/fetch-http-handler.ts\nvar keepAliveSupport = {\n supported: void 0\n};\nvar _FetchHttpHandler = class _FetchHttpHandler {\n /**\n * @returns the input if it is an HttpHandler of any class,\n * or instantiates a new instance of this handler.\n */\n static create(instanceOrOptions) {\n if (typeof (instanceOrOptions == null ? void 0 : instanceOrOptions.handle) === \"function\") {\n return instanceOrOptions;\n }\n return new _FetchHttpHandler(instanceOrOptions);\n }\n constructor(options) {\n if (typeof options === \"function\") {\n this.configProvider = options().then((opts) => opts || {});\n } else {\n this.config = options ?? {};\n this.configProvider = Promise.resolve(this.config);\n }\n if (keepAliveSupport.supported === void 0) {\n keepAliveSupport.supported = Boolean(\n typeof Request !== \"undefined\" && \"keepalive\" in new Request(\"https://[::1]\")\n );\n }\n }\n destroy() {\n }\n async handle(request, { abortSignal } = {}) {\n if (!this.config) {\n this.config = await this.configProvider;\n }\n const requestTimeoutInMs = this.config.requestTimeout;\n const keepAlive = this.config.keepAlive === true;\n const credentials = this.config.credentials;\n if (abortSignal == null ? void 0 : abortSignal.aborted) {\n const abortError = new Error(\"Request aborted\");\n abortError.name = \"AbortError\";\n return Promise.reject(abortError);\n }\n let path = request.path;\n const queryString = (0, import_querystring_builder.buildQueryString)(request.query || {});\n if (queryString) {\n path += `?${queryString}`;\n }\n if (request.fragment) {\n path += `#${request.fragment}`;\n }\n let auth = \"\";\n if (request.username != null || request.password != null) {\n const username = request.username ?? \"\";\n const password = request.password ?? \"\";\n auth = `${username}:${password}@`;\n }\n const { port, method } = request;\n const url = `${request.protocol}//${auth}${request.hostname}${port ? `:${port}` : \"\"}${path}`;\n const body = method === \"GET\" || method === \"HEAD\" ? void 0 : request.body;\n const requestOptions = {\n body,\n headers: new Headers(request.headers),\n method,\n credentials\n };\n if (body) {\n requestOptions.duplex = \"half\";\n }\n if (typeof AbortController !== \"undefined\") {\n requestOptions.signal = abortSignal;\n }\n if (keepAliveSupport.supported) {\n requestOptions.keepalive = keepAlive;\n }\n let removeSignalEventListener = /* @__PURE__ */ __name(() => {\n }, \"removeSignalEventListener\");\n const fetchRequest = new Request(url, requestOptions);\n const raceOfPromises = [\n fetch(fetchRequest).then((response) => {\n const fetchHeaders = response.headers;\n const transformedHeaders = {};\n for (const pair of fetchHeaders.entries()) {\n transformedHeaders[pair[0]] = pair[1];\n }\n const hasReadableStream = response.body != void 0;\n if (!hasReadableStream) {\n return response.blob().then((body2) => ({\n response: new import_protocol_http.HttpResponse({\n headers: transformedHeaders,\n reason: response.statusText,\n statusCode: response.status,\n body: body2\n })\n }));\n }\n return {\n response: new import_protocol_http.HttpResponse({\n headers: transformedHeaders,\n reason: response.statusText,\n statusCode: response.status,\n body: response.body\n })\n };\n }),\n requestTimeout(requestTimeoutInMs)\n ];\n if (abortSignal) {\n raceOfPromises.push(\n new Promise((resolve, reject) => {\n const onAbort = /* @__PURE__ */ __name(() => {\n const abortError = new Error(\"Request aborted\");\n abortError.name = \"AbortError\";\n reject(abortError);\n }, \"onAbort\");\n if (typeof abortSignal.addEventListener === \"function\") {\n const signal = abortSignal;\n signal.addEventListener(\"abort\", onAbort, { once: true });\n removeSignalEventListener = /* @__PURE__ */ __name(() => signal.removeEventListener(\"abort\", onAbort), \"removeSignalEventListener\");\n } else {\n abortSignal.onabort = onAbort;\n }\n })\n );\n }\n return Promise.race(raceOfPromises).finally(removeSignalEventListener);\n }\n updateHttpClientConfig(key, value) {\n this.config = void 0;\n this.configProvider = this.configProvider.then((config) => {\n config[key] = value;\n return config;\n });\n }\n httpHandlerConfigs() {\n return this.config ?? {};\n }\n};\n__name(_FetchHttpHandler, \"FetchHttpHandler\");\nvar FetchHttpHandler = _FetchHttpHandler;\n\n// src/stream-collector.ts\nvar import_util_base64 = require(\"@smithy/util-base64\");\nvar streamCollector = /* @__PURE__ */ __name((stream) => {\n if (typeof Blob === \"function\" && stream instanceof Blob) {\n return collectBlob(stream);\n }\n return collectStream(stream);\n}, \"streamCollector\");\nasync function collectBlob(blob) {\n const base64 = await readToBase64(blob);\n const arrayBuffer = (0, import_util_base64.fromBase64)(base64);\n return new Uint8Array(arrayBuffer);\n}\n__name(collectBlob, \"collectBlob\");\nasync function collectStream(stream) {\n const chunks = [];\n const reader = stream.getReader();\n let isDone = false;\n let length = 0;\n while (!isDone) {\n const { done, value } = await reader.read();\n if (value) {\n chunks.push(value);\n length += value.length;\n }\n isDone = done;\n }\n const collected = new Uint8Array(length);\n let offset = 0;\n for (const chunk of chunks) {\n collected.set(chunk, offset);\n offset += chunk.length;\n }\n return collected;\n}\n__name(collectStream, \"collectStream\");\nfunction readToBase64(blob) {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.onloadend = () => {\n if (reader.readyState !== 2) {\n return reject(new Error(\"Reader aborted too early\"));\n }\n const result = reader.result ?? \"\";\n const commaIndex = result.indexOf(\",\");\n const dataOffset = commaIndex > -1 ? commaIndex + 1 : result.length;\n resolve(result.substring(dataOffset));\n };\n reader.onabort = () => reject(new Error(\"Read aborted\"));\n reader.onerror = () => reject(reader.error);\n reader.readAsDataURL(blob);\n });\n}\n__name(readToBase64, \"readToBase64\");\n// Annotate the CommonJS export names for ESM import in node:\n\n0 && (module.exports = {\n keepAliveSupport,\n FetchHttpHandler,\n streamCollector\n});\n\n",
|
|
131
|
+
"var __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __name = (target, value) => __defProp(target, \"name\", { value, configurable: true });\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/index.ts\nvar src_exports = {};\n__export(src_exports, {\n fromHex: () => fromHex,\n toHex: () => toHex\n});\nmodule.exports = __toCommonJS(src_exports);\nvar SHORT_TO_HEX = {};\nvar HEX_TO_SHORT = {};\nfor (let i = 0; i < 256; i++) {\n let encodedByte = i.toString(16).toLowerCase();\n if (encodedByte.length === 1) {\n encodedByte = `0${encodedByte}`;\n }\n SHORT_TO_HEX[i] = encodedByte;\n HEX_TO_SHORT[encodedByte] = i;\n}\nfunction fromHex(encoded) {\n if (encoded.length % 2 !== 0) {\n throw new Error(\"Hex encoded strings must have an even number length\");\n }\n const out = new Uint8Array(encoded.length / 2);\n for (let i = 0; i < encoded.length; i += 2) {\n const encodedByte = encoded.slice(i, i + 2).toLowerCase();\n if (encodedByte in HEX_TO_SHORT) {\n out[i / 2] = HEX_TO_SHORT[encodedByte];\n } else {\n throw new Error(`Cannot decode unrecognized sequence ${encodedByte} as hexadecimal`);\n }\n }\n return out;\n}\n__name(fromHex, \"fromHex\");\nfunction toHex(bytes) {\n let out = \"\";\n for (let i = 0; i < bytes.byteLength; i++) {\n out += SHORT_TO_HEX[bytes[i]];\n }\n return out;\n}\n__name(toHex, \"toHex\");\n// Annotate the CommonJS export names for ESM import in node:\n\n0 && (module.exports = {\n fromHex,\n toHex\n});\n\n",
|
|
132
|
+
"\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.isReadableStream = void 0;\nconst isReadableStream = (stream) => {\n var _a;\n return typeof ReadableStream === \"function\" &&\n (((_a = stream === null || stream === void 0 ? void 0 : stream.constructor) === null || _a === void 0 ? void 0 : _a.name) === ReadableStream.name || stream instanceof ReadableStream);\n};\nexports.isReadableStream = isReadableStream;\n",
|
|
133
|
+
"\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.sdkStreamMixin = void 0;\nconst fetch_http_handler_1 = require(\"@smithy/fetch-http-handler\");\nconst util_base64_1 = require(\"@smithy/util-base64\");\nconst util_hex_encoding_1 = require(\"@smithy/util-hex-encoding\");\nconst util_utf8_1 = require(\"@smithy/util-utf8\");\nconst stream_type_check_1 = require(\"./stream-type-check\");\nconst ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED = \"The stream has already been transformed.\";\nconst sdkStreamMixin = (stream) => {\n var _a, _b;\n if (!isBlobInstance(stream) && !(0, stream_type_check_1.isReadableStream)(stream)) {\n const name = ((_b = (_a = stream === null || stream === void 0 ? void 0 : stream.__proto__) === null || _a === void 0 ? void 0 : _a.constructor) === null || _b === void 0 ? void 0 : _b.name) || stream;\n throw new Error(`Unexpected stream implementation, expect Blob or ReadableStream, got ${name}`);\n }\n let transformed = false;\n const transformToByteArray = async () => {\n if (transformed) {\n throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED);\n }\n transformed = true;\n return await (0, fetch_http_handler_1.streamCollector)(stream);\n };\n const blobToWebStream = (blob) => {\n if (typeof blob.stream !== \"function\") {\n throw new Error(\"Cannot transform payload Blob to web stream. Please make sure the Blob.stream() is polyfilled.\\n\" +\n \"If you are using React Native, this API is not yet supported, see: https://react-native.canny.io/feature-requests/p/fetch-streaming-body\");\n }\n return blob.stream();\n };\n return Object.assign(stream, {\n transformToByteArray: transformToByteArray,\n transformToString: async (encoding) => {\n const buf = await transformToByteArray();\n if (encoding === \"base64\") {\n return (0, util_base64_1.toBase64)(buf);\n }\n else if (encoding === \"hex\") {\n return (0, util_hex_encoding_1.toHex)(buf);\n }\n else if (encoding === undefined || encoding === \"utf8\" || encoding === \"utf-8\") {\n return (0, util_utf8_1.toUtf8)(buf);\n }\n else if (typeof TextDecoder === \"function\") {\n return new TextDecoder(encoding).decode(buf);\n }\n else {\n throw new Error(\"TextDecoder is not available, please make sure polyfill is provided.\");\n }\n },\n transformToWebStream: () => {\n if (transformed) {\n throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED);\n }\n transformed = true;\n if (isBlobInstance(stream)) {\n return blobToWebStream(stream);\n }\n else if ((0, stream_type_check_1.isReadableStream)(stream)) {\n return stream;\n }\n else {\n throw new Error(`Cannot transform payload to web stream, got ${stream}`);\n }\n },\n });\n};\nexports.sdkStreamMixin = sdkStreamMixin;\nconst isBlobInstance = (stream) => typeof Blob === \"function\" && stream instanceof Blob;\n",
|
|
134
|
+
"\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.sdkStreamMixin = void 0;\nconst node_http_handler_1 = require(\"@smithy/node-http-handler\");\nconst util_buffer_from_1 = require(\"@smithy/util-buffer-from\");\nconst stream_1 = require(\"stream\");\nconst util_1 = require(\"util\");\nconst sdk_stream_mixin_browser_1 = require(\"./sdk-stream-mixin.browser\");\nconst ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED = \"The stream has already been transformed.\";\nconst sdkStreamMixin = (stream) => {\n var _a, _b;\n if (!(stream instanceof stream_1.Readable)) {\n try {\n return (0, sdk_stream_mixin_browser_1.sdkStreamMixin)(stream);\n }\n catch (e) {\n const name = ((_b = (_a = stream === null || stream === void 0 ? void 0 : stream.__proto__) === null || _a === void 0 ? void 0 : _a.constructor) === null || _b === void 0 ? void 0 : _b.name) || stream;\n throw new Error(`Unexpected stream implementation, expect Stream.Readable instance, got ${name}`);\n }\n }\n let transformed = false;\n const transformToByteArray = async () => {\n if (transformed) {\n throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED);\n }\n transformed = true;\n return await (0, node_http_handler_1.streamCollector)(stream);\n };\n return Object.assign(stream, {\n transformToByteArray,\n transformToString: async (encoding) => {\n const buf = await transformToByteArray();\n if (encoding === undefined || Buffer.isEncoding(encoding)) {\n return (0, util_buffer_from_1.fromArrayBuffer)(buf.buffer, buf.byteOffset, buf.byteLength).toString(encoding);\n }\n else {\n const decoder = new util_1.TextDecoder(encoding);\n return decoder.decode(buf);\n }\n },\n transformToWebStream: () => {\n if (transformed) {\n throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED);\n }\n if (stream.readableFlowing !== null) {\n throw new Error(\"The stream has been consumed by other callbacks.\");\n }\n if (typeof stream_1.Readable.toWeb !== \"function\") {\n throw new Error(\"Readable.toWeb() is not supported. Please make sure you are using Node.js >= 17.0.0, or polyfill is available.\");\n }\n transformed = true;\n return stream_1.Readable.toWeb(stream);\n },\n });\n};\nexports.sdkStreamMixin = sdkStreamMixin;\n",
|
|
135
|
+
"\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.splitStream = void 0;\nasync function splitStream(stream) {\n if (typeof stream.stream === \"function\") {\n stream = stream.stream();\n }\n const readableStream = stream;\n return readableStream.tee();\n}\nexports.splitStream = splitStream;\n",
|
|
136
|
+
"\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.splitStream = void 0;\nconst stream_1 = require(\"stream\");\nconst splitStream_browser_1 = require(\"./splitStream.browser\");\nconst stream_type_check_1 = require(\"./stream-type-check\");\nasync function splitStream(stream) {\n if ((0, stream_type_check_1.isReadableStream)(stream)) {\n return (0, splitStream_browser_1.splitStream)(stream);\n }\n const stream1 = new stream_1.PassThrough();\n const stream2 = new stream_1.PassThrough();\n stream.pipe(stream1);\n stream.pipe(stream2);\n return [stream1, stream2];\n}\nexports.splitStream = splitStream;\n",
|
|
137
|
+
"\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.headStream = void 0;\nasync function headStream(stream, bytes) {\n var _a;\n let byteLengthCounter = 0;\n const chunks = [];\n const reader = stream.getReader();\n let isDone = false;\n while (!isDone) {\n const { done, value } = await reader.read();\n if (value) {\n chunks.push(value);\n byteLengthCounter += (_a = value === null || value === void 0 ? void 0 : value.byteLength) !== null && _a !== void 0 ? _a : 0;\n }\n if (byteLengthCounter >= bytes) {\n break;\n }\n isDone = done;\n }\n reader.releaseLock();\n const collected = new Uint8Array(Math.min(bytes, byteLengthCounter));\n let offset = 0;\n for (const chunk of chunks) {\n if (chunk.byteLength > collected.byteLength - offset) {\n collected.set(chunk.subarray(0, collected.byteLength - offset), offset);\n break;\n }\n else {\n collected.set(chunk, offset);\n }\n offset += chunk.length;\n }\n return collected;\n}\nexports.headStream = headStream;\n",
|
|
138
|
+
"\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.headStream = void 0;\nconst stream_1 = require(\"stream\");\nconst headStream_browser_1 = require(\"./headStream.browser\");\nconst stream_type_check_1 = require(\"./stream-type-check\");\nconst headStream = (stream, bytes) => {\n if ((0, stream_type_check_1.isReadableStream)(stream)) {\n return (0, headStream_browser_1.headStream)(stream, bytes);\n }\n return new Promise((resolve, reject) => {\n const collector = new Collector();\n collector.limit = bytes;\n stream.pipe(collector);\n stream.on(\"error\", (err) => {\n collector.end();\n reject(err);\n });\n collector.on(\"error\", reject);\n collector.on(\"finish\", function () {\n const bytes = new Uint8Array(Buffer.concat(this.buffers));\n resolve(bytes);\n });\n });\n};\nexports.headStream = headStream;\nclass Collector extends stream_1.Writable {\n constructor() {\n super(...arguments);\n this.buffers = [];\n this.limit = Infinity;\n this.bytesBuffered = 0;\n }\n _write(chunk, encoding, callback) {\n var _a;\n this.buffers.push(chunk);\n this.bytesBuffered += (_a = chunk.byteLength) !== null && _a !== void 0 ? _a : 0;\n if (this.bytesBuffered >= this.limit) {\n const excess = this.bytesBuffered - this.limit;\n const tailBuffer = this.buffers[this.buffers.length - 1];\n this.buffers[this.buffers.length - 1] = tailBuffer.subarray(0, tailBuffer.byteLength - excess);\n this.emit(\"finish\");\n }\n callback();\n }\n}\n",
|
|
139
|
+
"var __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __name = (target, value) => __defProp(target, \"name\", { value, configurable: true });\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, \"default\"), secondTarget && __copyProps(secondTarget, mod, \"default\"));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/index.ts\nvar src_exports = {};\n__export(src_exports, {\n Uint8ArrayBlobAdapter: () => Uint8ArrayBlobAdapter\n});\nmodule.exports = __toCommonJS(src_exports);\n\n// src/blob/transforms.ts\nvar import_util_base64 = require(\"@smithy/util-base64\");\nvar import_util_utf8 = require(\"@smithy/util-utf8\");\nfunction transformToString(payload, encoding = \"utf-8\") {\n if (encoding === \"base64\") {\n return (0, import_util_base64.toBase64)(payload);\n }\n return (0, import_util_utf8.toUtf8)(payload);\n}\n__name(transformToString, \"transformToString\");\nfunction transformFromString(str, encoding) {\n if (encoding === \"base64\") {\n return Uint8ArrayBlobAdapter.mutate((0, import_util_base64.fromBase64)(str));\n }\n return Uint8ArrayBlobAdapter.mutate((0, import_util_utf8.fromUtf8)(str));\n}\n__name(transformFromString, \"transformFromString\");\n\n// src/blob/Uint8ArrayBlobAdapter.ts\nvar _Uint8ArrayBlobAdapter = class _Uint8ArrayBlobAdapter extends Uint8Array {\n /**\n * @param source - such as a string or Stream.\n * @returns a new Uint8ArrayBlobAdapter extending Uint8Array.\n */\n static fromString(source, encoding = \"utf-8\") {\n switch (typeof source) {\n case \"string\":\n return transformFromString(source, encoding);\n default:\n throw new Error(`Unsupported conversion from ${typeof source} to Uint8ArrayBlobAdapter.`);\n }\n }\n /**\n * @param source - Uint8Array to be mutated.\n * @returns the same Uint8Array but with prototype switched to Uint8ArrayBlobAdapter.\n */\n static mutate(source) {\n Object.setPrototypeOf(source, _Uint8ArrayBlobAdapter.prototype);\n return source;\n }\n /**\n * @param encoding - default 'utf-8'.\n * @returns the blob as string.\n */\n transformToString(encoding = \"utf-8\") {\n return transformToString(this, encoding);\n }\n};\n__name(_Uint8ArrayBlobAdapter, \"Uint8ArrayBlobAdapter\");\nvar Uint8ArrayBlobAdapter = _Uint8ArrayBlobAdapter;\n\n// src/index.ts\n__reExport(src_exports, require(\"././getAwsChunkedEncodingStream\"), module.exports);\n__reExport(src_exports, require(\"././sdk-stream-mixin\"), module.exports);\n__reExport(src_exports, require(\"././splitStream\"), module.exports);\n__reExport(src_exports, require(\"././headStream\"), module.exports);\n__reExport(src_exports, require(\"././stream-type-check\"), module.exports);\n// Annotate the CommonJS export names for ESM import in node:\n\n0 && (module.exports = {\n Uint8ArrayBlobAdapter,\n getAwsChunkedEncodingStream,\n sdkStreamMixin,\n splitStream,\n headStream,\n isReadableStream\n});\n\n",
|
|
140
|
+
"var __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __name = (target, value) => __defProp(target, \"name\", { value, configurable: true });\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/index.ts\nvar src_exports = {};\n__export(src_exports, {\n Client: () => Client,\n Command: () => Command,\n LazyJsonString: () => LazyJsonString,\n NoOpLogger: () => NoOpLogger,\n SENSITIVE_STRING: () => SENSITIVE_STRING,\n ServiceException: () => ServiceException,\n StringWrapper: () => StringWrapper,\n _json: () => _json,\n collectBody: () => collectBody,\n convertMap: () => convertMap,\n createAggregatedClient: () => createAggregatedClient,\n dateToUtcString: () => dateToUtcString,\n decorateServiceException: () => decorateServiceException,\n emitWarningIfUnsupportedVersion: () => emitWarningIfUnsupportedVersion,\n expectBoolean: () => expectBoolean,\n expectByte: () => expectByte,\n expectFloat32: () => expectFloat32,\n expectInt: () => expectInt,\n expectInt32: () => expectInt32,\n expectLong: () => expectLong,\n expectNonNull: () => expectNonNull,\n expectNumber: () => expectNumber,\n expectObject: () => expectObject,\n expectShort: () => expectShort,\n expectString: () => expectString,\n expectUnion: () => expectUnion,\n extendedEncodeURIComponent: () => extendedEncodeURIComponent,\n getArrayIfSingleItem: () => getArrayIfSingleItem,\n getDefaultClientConfiguration: () => getDefaultClientConfiguration,\n getDefaultExtensionConfiguration: () => getDefaultExtensionConfiguration,\n getValueFromTextNode: () => getValueFromTextNode,\n handleFloat: () => handleFloat,\n limitedParseDouble: () => limitedParseDouble,\n limitedParseFloat: () => limitedParseFloat,\n limitedParseFloat32: () => limitedParseFloat32,\n loadConfigsForDefaultMode: () => loadConfigsForDefaultMode,\n logger: () => logger,\n map: () => map,\n parseBoolean: () => parseBoolean,\n parseEpochTimestamp: () => parseEpochTimestamp,\n parseRfc3339DateTime: () => parseRfc3339DateTime,\n parseRfc3339DateTimeWithOffset: () => parseRfc3339DateTimeWithOffset,\n parseRfc7231DateTime: () => parseRfc7231DateTime,\n resolveDefaultRuntimeConfig: () => resolveDefaultRuntimeConfig,\n resolvedPath: () => resolvedPath,\n serializeDateTime: () => serializeDateTime,\n serializeFloat: () => serializeFloat,\n splitEvery: () => splitEvery,\n strictParseByte: () => strictParseByte,\n strictParseDouble: () => strictParseDouble,\n strictParseFloat: () => strictParseFloat,\n strictParseFloat32: () => strictParseFloat32,\n strictParseInt: () => strictParseInt,\n strictParseInt32: () => strictParseInt32,\n strictParseLong: () => strictParseLong,\n strictParseShort: () => strictParseShort,\n take: () => take,\n throwDefaultError: () => throwDefaultError,\n withBaseException: () => withBaseException\n});\nmodule.exports = __toCommonJS(src_exports);\n\n// src/NoOpLogger.ts\nvar _NoOpLogger = class _NoOpLogger {\n trace() {\n }\n debug() {\n }\n info() {\n }\n warn() {\n }\n error() {\n }\n};\n__name(_NoOpLogger, \"NoOpLogger\");\nvar NoOpLogger = _NoOpLogger;\n\n// src/client.ts\nvar import_middleware_stack = require(\"@smithy/middleware-stack\");\nvar _Client = class _Client {\n constructor(config) {\n this.middlewareStack = (0, import_middleware_stack.constructStack)();\n this.config = config;\n }\n send(command, optionsOrCb, cb) {\n const options = typeof optionsOrCb !== \"function\" ? optionsOrCb : void 0;\n const callback = typeof optionsOrCb === \"function\" ? optionsOrCb : cb;\n const handler = command.resolveMiddleware(this.middlewareStack, this.config, options);\n if (callback) {\n handler(command).then(\n (result) => callback(null, result.output),\n (err) => callback(err)\n ).catch(\n // prevent any errors thrown in the callback from triggering an\n // unhandled promise rejection\n () => {\n }\n );\n } else {\n return handler(command).then((result) => result.output);\n }\n }\n destroy() {\n if (this.config.requestHandler.destroy)\n this.config.requestHandler.destroy();\n }\n};\n__name(_Client, \"Client\");\nvar Client = _Client;\n\n// src/collect-stream-body.ts\nvar import_util_stream = require(\"@smithy/util-stream\");\nvar collectBody = /* @__PURE__ */ __name(async (streamBody = new Uint8Array(), context) => {\n if (streamBody instanceof Uint8Array) {\n return import_util_stream.Uint8ArrayBlobAdapter.mutate(streamBody);\n }\n if (!streamBody) {\n return import_util_stream.Uint8ArrayBlobAdapter.mutate(new Uint8Array());\n }\n const fromContext = context.streamCollector(streamBody);\n return import_util_stream.Uint8ArrayBlobAdapter.mutate(await fromContext);\n}, \"collectBody\");\n\n// src/command.ts\n\nvar import_types = require(\"@smithy/types\");\nvar _Command = class _Command {\n constructor() {\n this.middlewareStack = (0, import_middleware_stack.constructStack)();\n }\n /**\n * Factory for Command ClassBuilder.\n * @internal\n */\n static classBuilder() {\n return new ClassBuilder();\n }\n /**\n * @internal\n */\n resolveMiddlewareWithContext(clientStack, configuration, options, {\n middlewareFn,\n clientName,\n commandName,\n inputFilterSensitiveLog,\n outputFilterSensitiveLog,\n smithyContext,\n additionalContext,\n CommandCtor\n }) {\n for (const mw of middlewareFn.bind(this)(CommandCtor, clientStack, configuration, options)) {\n this.middlewareStack.use(mw);\n }\n const stack = clientStack.concat(this.middlewareStack);\n const { logger: logger2 } = configuration;\n const handlerExecutionContext = {\n logger: logger2,\n clientName,\n commandName,\n inputFilterSensitiveLog,\n outputFilterSensitiveLog,\n [import_types.SMITHY_CONTEXT_KEY]: {\n commandInstance: this,\n ...smithyContext\n },\n ...additionalContext\n };\n const { requestHandler } = configuration;\n return stack.resolve(\n (request) => requestHandler.handle(request.request, options || {}),\n handlerExecutionContext\n );\n }\n};\n__name(_Command, \"Command\");\nvar Command = _Command;\nvar _ClassBuilder = class _ClassBuilder {\n constructor() {\n this._init = () => {\n };\n this._ep = {};\n this._middlewareFn = () => [];\n this._commandName = \"\";\n this._clientName = \"\";\n this._additionalContext = {};\n this._smithyContext = {};\n this._inputFilterSensitiveLog = (_) => _;\n this._outputFilterSensitiveLog = (_) => _;\n this._serializer = null;\n this._deserializer = null;\n }\n /**\n * Optional init callback.\n */\n init(cb) {\n this._init = cb;\n }\n /**\n * Set the endpoint parameter instructions.\n */\n ep(endpointParameterInstructions) {\n this._ep = endpointParameterInstructions;\n return this;\n }\n /**\n * Add any number of middleware.\n */\n m(middlewareSupplier) {\n this._middlewareFn = middlewareSupplier;\n return this;\n }\n /**\n * Set the initial handler execution context Smithy field.\n */\n s(service, operation, smithyContext = {}) {\n this._smithyContext = {\n service,\n operation,\n ...smithyContext\n };\n return this;\n }\n /**\n * Set the initial handler execution context.\n */\n c(additionalContext = {}) {\n this._additionalContext = additionalContext;\n return this;\n }\n /**\n * Set constant string identifiers for the operation.\n */\n n(clientName, commandName) {\n this._clientName = clientName;\n this._commandName = commandName;\n return this;\n }\n /**\n * Set the input and output sensistive log filters.\n */\n f(inputFilter = (_) => _, outputFilter = (_) => _) {\n this._inputFilterSensitiveLog = inputFilter;\n this._outputFilterSensitiveLog = outputFilter;\n return this;\n }\n /**\n * Sets the serializer.\n */\n ser(serializer) {\n this._serializer = serializer;\n return this;\n }\n /**\n * Sets the deserializer.\n */\n de(deserializer) {\n this._deserializer = deserializer;\n return this;\n }\n /**\n * @returns a Command class with the classBuilder properties.\n */\n build() {\n var _a;\n const closure = this;\n let CommandRef;\n return CommandRef = (_a = class extends Command {\n /**\n * @public\n */\n constructor(...[input]) {\n super();\n /**\n * @internal\n */\n // @ts-ignore used in middlewareFn closure.\n this.serialize = closure._serializer;\n /**\n * @internal\n */\n // @ts-ignore used in middlewareFn closure.\n this.deserialize = closure._deserializer;\n this.input = input ?? {};\n closure._init(this);\n }\n /**\n * @public\n */\n static getEndpointParameterInstructions() {\n return closure._ep;\n }\n /**\n * @internal\n */\n resolveMiddleware(stack, configuration, options) {\n return this.resolveMiddlewareWithContext(stack, configuration, options, {\n CommandCtor: CommandRef,\n middlewareFn: closure._middlewareFn,\n clientName: closure._clientName,\n commandName: closure._commandName,\n inputFilterSensitiveLog: closure._inputFilterSensitiveLog,\n outputFilterSensitiveLog: closure._outputFilterSensitiveLog,\n smithyContext: closure._smithyContext,\n additionalContext: closure._additionalContext\n });\n }\n }, __name(_a, \"CommandRef\"), _a);\n }\n};\n__name(_ClassBuilder, \"ClassBuilder\");\nvar ClassBuilder = _ClassBuilder;\n\n// src/constants.ts\nvar SENSITIVE_STRING = \"***SensitiveInformation***\";\n\n// src/create-aggregated-client.ts\nvar createAggregatedClient = /* @__PURE__ */ __name((commands, Client2) => {\n for (const command of Object.keys(commands)) {\n const CommandCtor = commands[command];\n const methodImpl = /* @__PURE__ */ __name(async function(args, optionsOrCb, cb) {\n const command2 = new CommandCtor(args);\n if (typeof optionsOrCb === \"function\") {\n this.send(command2, optionsOrCb);\n } else if (typeof cb === \"function\") {\n if (typeof optionsOrCb !== \"object\")\n throw new Error(`Expected http options but got ${typeof optionsOrCb}`);\n this.send(command2, optionsOrCb || {}, cb);\n } else {\n return this.send(command2, optionsOrCb);\n }\n }, \"methodImpl\");\n const methodName = (command[0].toLowerCase() + command.slice(1)).replace(/Command$/, \"\");\n Client2.prototype[methodName] = methodImpl;\n }\n}, \"createAggregatedClient\");\n\n// src/parse-utils.ts\nvar parseBoolean = /* @__PURE__ */ __name((value) => {\n switch (value) {\n case \"true\":\n return true;\n case \"false\":\n return false;\n default:\n throw new Error(`Unable to parse boolean value \"${value}\"`);\n }\n}, \"parseBoolean\");\nvar expectBoolean = /* @__PURE__ */ __name((value) => {\n if (value === null || value === void 0) {\n return void 0;\n }\n if (typeof value === \"number\") {\n if (value === 0 || value === 1) {\n logger.warn(stackTraceWarning(`Expected boolean, got ${typeof value}: ${value}`));\n }\n if (value === 0) {\n return false;\n }\n if (value === 1) {\n return true;\n }\n }\n if (typeof value === \"string\") {\n const lower = value.toLowerCase();\n if (lower === \"false\" || lower === \"true\") {\n logger.warn(stackTraceWarning(`Expected boolean, got ${typeof value}: ${value}`));\n }\n if (lower === \"false\") {\n return false;\n }\n if (lower === \"true\") {\n return true;\n }\n }\n if (typeof value === \"boolean\") {\n return value;\n }\n throw new TypeError(`Expected boolean, got ${typeof value}: ${value}`);\n}, \"expectBoolean\");\nvar expectNumber = /* @__PURE__ */ __name((value) => {\n if (value === null || value === void 0) {\n return void 0;\n }\n if (typeof value === \"string\") {\n const parsed = parseFloat(value);\n if (!Number.isNaN(parsed)) {\n if (String(parsed) !== String(value)) {\n logger.warn(stackTraceWarning(`Expected number but observed string: ${value}`));\n }\n return parsed;\n }\n }\n if (typeof value === \"number\") {\n return value;\n }\n throw new TypeError(`Expected number, got ${typeof value}: ${value}`);\n}, \"expectNumber\");\nvar MAX_FLOAT = Math.ceil(2 ** 127 * (2 - 2 ** -23));\nvar expectFloat32 = /* @__PURE__ */ __name((value) => {\n const expected = expectNumber(value);\n if (expected !== void 0 && !Number.isNaN(expected) && expected !== Infinity && expected !== -Infinity) {\n if (Math.abs(expected) > MAX_FLOAT) {\n throw new TypeError(`Expected 32-bit float, got ${value}`);\n }\n }\n return expected;\n}, \"expectFloat32\");\nvar expectLong = /* @__PURE__ */ __name((value) => {\n if (value === null || value === void 0) {\n return void 0;\n }\n if (Number.isInteger(value) && !Number.isNaN(value)) {\n return value;\n }\n throw new TypeError(`Expected integer, got ${typeof value}: ${value}`);\n}, \"expectLong\");\nvar expectInt = expectLong;\nvar expectInt32 = /* @__PURE__ */ __name((value) => expectSizedInt(value, 32), \"expectInt32\");\nvar expectShort = /* @__PURE__ */ __name((value) => expectSizedInt(value, 16), \"expectShort\");\nvar expectByte = /* @__PURE__ */ __name((value) => expectSizedInt(value, 8), \"expectByte\");\nvar expectSizedInt = /* @__PURE__ */ __name((value, size) => {\n const expected = expectLong(value);\n if (expected !== void 0 && castInt(expected, size) !== expected) {\n throw new TypeError(`Expected ${size}-bit integer, got ${value}`);\n }\n return expected;\n}, \"expectSizedInt\");\nvar castInt = /* @__PURE__ */ __name((value, size) => {\n switch (size) {\n case 32:\n return Int32Array.of(value)[0];\n case 16:\n return Int16Array.of(value)[0];\n case 8:\n return Int8Array.of(value)[0];\n }\n}, \"castInt\");\nvar expectNonNull = /* @__PURE__ */ __name((value, location) => {\n if (value === null || value === void 0) {\n if (location) {\n throw new TypeError(`Expected a non-null value for ${location}`);\n }\n throw new TypeError(\"Expected a non-null value\");\n }\n return value;\n}, \"expectNonNull\");\nvar expectObject = /* @__PURE__ */ __name((value) => {\n if (value === null || value === void 0) {\n return void 0;\n }\n if (typeof value === \"object\" && !Array.isArray(value)) {\n return value;\n }\n const receivedType = Array.isArray(value) ? \"array\" : typeof value;\n throw new TypeError(`Expected object, got ${receivedType}: ${value}`);\n}, \"expectObject\");\nvar expectString = /* @__PURE__ */ __name((value) => {\n if (value === null || value === void 0) {\n return void 0;\n }\n if (typeof value === \"string\") {\n return value;\n }\n if ([\"boolean\", \"number\", \"bigint\"].includes(typeof value)) {\n logger.warn(stackTraceWarning(`Expected string, got ${typeof value}: ${value}`));\n return String(value);\n }\n throw new TypeError(`Expected string, got ${typeof value}: ${value}`);\n}, \"expectString\");\nvar expectUnion = /* @__PURE__ */ __name((value) => {\n if (value === null || value === void 0) {\n return void 0;\n }\n const asObject = expectObject(value);\n const setKeys = Object.entries(asObject).filter(([, v]) => v != null).map(([k]) => k);\n if (setKeys.length === 0) {\n throw new TypeError(`Unions must have exactly one non-null member. None were found.`);\n }\n if (setKeys.length > 1) {\n throw new TypeError(`Unions must have exactly one non-null member. Keys ${setKeys} were not null.`);\n }\n return asObject;\n}, \"expectUnion\");\nvar strictParseDouble = /* @__PURE__ */ __name((value) => {\n if (typeof value == \"string\") {\n return expectNumber(parseNumber(value));\n }\n return expectNumber(value);\n}, \"strictParseDouble\");\nvar strictParseFloat = strictParseDouble;\nvar strictParseFloat32 = /* @__PURE__ */ __name((value) => {\n if (typeof value == \"string\") {\n return expectFloat32(parseNumber(value));\n }\n return expectFloat32(value);\n}, \"strictParseFloat32\");\nvar NUMBER_REGEX = /(-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?)|(-?Infinity)|(NaN)/g;\nvar parseNumber = /* @__PURE__ */ __name((value) => {\n const matches = value.match(NUMBER_REGEX);\n if (matches === null || matches[0].length !== value.length) {\n throw new TypeError(`Expected real number, got implicit NaN`);\n }\n return parseFloat(value);\n}, \"parseNumber\");\nvar limitedParseDouble = /* @__PURE__ */ __name((value) => {\n if (typeof value == \"string\") {\n return parseFloatString(value);\n }\n return expectNumber(value);\n}, \"limitedParseDouble\");\nvar handleFloat = limitedParseDouble;\nvar limitedParseFloat = limitedParseDouble;\nvar limitedParseFloat32 = /* @__PURE__ */ __name((value) => {\n if (typeof value == \"string\") {\n return parseFloatString(value);\n }\n return expectFloat32(value);\n}, \"limitedParseFloat32\");\nvar parseFloatString = /* @__PURE__ */ __name((value) => {\n switch (value) {\n case \"NaN\":\n return NaN;\n case \"Infinity\":\n return Infinity;\n case \"-Infinity\":\n return -Infinity;\n default:\n throw new Error(`Unable to parse float value: ${value}`);\n }\n}, \"parseFloatString\");\nvar strictParseLong = /* @__PURE__ */ __name((value) => {\n if (typeof value === \"string\") {\n return expectLong(parseNumber(value));\n }\n return expectLong(value);\n}, \"strictParseLong\");\nvar strictParseInt = strictParseLong;\nvar strictParseInt32 = /* @__PURE__ */ __name((value) => {\n if (typeof value === \"string\") {\n return expectInt32(parseNumber(value));\n }\n return expectInt32(value);\n}, \"strictParseInt32\");\nvar strictParseShort = /* @__PURE__ */ __name((value) => {\n if (typeof value === \"string\") {\n return expectShort(parseNumber(value));\n }\n return expectShort(value);\n}, \"strictParseShort\");\nvar strictParseByte = /* @__PURE__ */ __name((value) => {\n if (typeof value === \"string\") {\n return expectByte(parseNumber(value));\n }\n return expectByte(value);\n}, \"strictParseByte\");\nvar stackTraceWarning = /* @__PURE__ */ __name((message) => {\n return String(new TypeError(message).stack || message).split(\"\\n\").slice(0, 5).filter((s) => !s.includes(\"stackTraceWarning\")).join(\"\\n\");\n}, \"stackTraceWarning\");\nvar logger = {\n warn: console.warn\n};\n\n// src/date-utils.ts\nvar DAYS = [\"Sun\", \"Mon\", \"Tue\", \"Wed\", \"Thu\", \"Fri\", \"Sat\"];\nvar MONTHS = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\nfunction dateToUtcString(date) {\n const year = date.getUTCFullYear();\n const month = date.getUTCMonth();\n const dayOfWeek = date.getUTCDay();\n const dayOfMonthInt = date.getUTCDate();\n const hoursInt = date.getUTCHours();\n const minutesInt = date.getUTCMinutes();\n const secondsInt = date.getUTCSeconds();\n const dayOfMonthString = dayOfMonthInt < 10 ? `0${dayOfMonthInt}` : `${dayOfMonthInt}`;\n const hoursString = hoursInt < 10 ? `0${hoursInt}` : `${hoursInt}`;\n const minutesString = minutesInt < 10 ? `0${minutesInt}` : `${minutesInt}`;\n const secondsString = secondsInt < 10 ? `0${secondsInt}` : `${secondsInt}`;\n return `${DAYS[dayOfWeek]}, ${dayOfMonthString} ${MONTHS[month]} ${year} ${hoursString}:${minutesString}:${secondsString} GMT`;\n}\n__name(dateToUtcString, \"dateToUtcString\");\nvar RFC3339 = new RegExp(/^(\\d{4})-(\\d{2})-(\\d{2})[tT](\\d{2}):(\\d{2}):(\\d{2})(?:\\.(\\d+))?[zZ]$/);\nvar parseRfc3339DateTime = /* @__PURE__ */ __name((value) => {\n if (value === null || value === void 0) {\n return void 0;\n }\n if (typeof value !== \"string\") {\n throw new TypeError(\"RFC-3339 date-times must be expressed as strings\");\n }\n const match = RFC3339.exec(value);\n if (!match) {\n throw new TypeError(\"Invalid RFC-3339 date-time value\");\n }\n const [_, yearStr, monthStr, dayStr, hours, minutes, seconds, fractionalMilliseconds] = match;\n const year = strictParseShort(stripLeadingZeroes(yearStr));\n const month = parseDateValue(monthStr, \"month\", 1, 12);\n const day = parseDateValue(dayStr, \"day\", 1, 31);\n return buildDate(year, month, day, { hours, minutes, seconds, fractionalMilliseconds });\n}, \"parseRfc3339DateTime\");\nvar RFC3339_WITH_OFFSET = new RegExp(\n /^(\\d{4})-(\\d{2})-(\\d{2})[tT](\\d{2}):(\\d{2}):(\\d{2})(?:\\.(\\d+))?(([-+]\\d{2}\\:\\d{2})|[zZ])$/\n);\nvar parseRfc3339DateTimeWithOffset = /* @__PURE__ */ __name((value) => {\n if (value === null || value === void 0) {\n return void 0;\n }\n if (typeof value !== \"string\") {\n throw new TypeError(\"RFC-3339 date-times must be expressed as strings\");\n }\n const match = RFC3339_WITH_OFFSET.exec(value);\n if (!match) {\n throw new TypeError(\"Invalid RFC-3339 date-time value\");\n }\n const [_, yearStr, monthStr, dayStr, hours, minutes, seconds, fractionalMilliseconds, offsetStr] = match;\n const year = strictParseShort(stripLeadingZeroes(yearStr));\n const month = parseDateValue(monthStr, \"month\", 1, 12);\n const day = parseDateValue(dayStr, \"day\", 1, 31);\n const date = buildDate(year, month, day, { hours, minutes, seconds, fractionalMilliseconds });\n if (offsetStr.toUpperCase() != \"Z\") {\n date.setTime(date.getTime() - parseOffsetToMilliseconds(offsetStr));\n }\n return date;\n}, \"parseRfc3339DateTimeWithOffset\");\nvar IMF_FIXDATE = new RegExp(\n /^(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun), (\\d{2}) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (\\d{4}) (\\d{1,2}):(\\d{2}):(\\d{2})(?:\\.(\\d+))? GMT$/\n);\nvar RFC_850_DATE = new RegExp(\n /^(?:Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday), (\\d{2})-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\\d{2}) (\\d{1,2}):(\\d{2}):(\\d{2})(?:\\.(\\d+))? GMT$/\n);\nvar ASC_TIME = new RegExp(\n /^(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ( [1-9]|\\d{2}) (\\d{1,2}):(\\d{2}):(\\d{2})(?:\\.(\\d+))? (\\d{4})$/\n);\nvar parseRfc7231DateTime = /* @__PURE__ */ __name((value) => {\n if (value === null || value === void 0) {\n return void 0;\n }\n if (typeof value !== \"string\") {\n throw new TypeError(\"RFC-7231 date-times must be expressed as strings\");\n }\n let match = IMF_FIXDATE.exec(value);\n if (match) {\n const [_, dayStr, monthStr, yearStr, hours, minutes, seconds, fractionalMilliseconds] = match;\n return buildDate(\n strictParseShort(stripLeadingZeroes(yearStr)),\n parseMonthByShortName(monthStr),\n parseDateValue(dayStr, \"day\", 1, 31),\n { hours, minutes, seconds, fractionalMilliseconds }\n );\n }\n match = RFC_850_DATE.exec(value);\n if (match) {\n const [_, dayStr, monthStr, yearStr, hours, minutes, seconds, fractionalMilliseconds] = match;\n return adjustRfc850Year(\n buildDate(parseTwoDigitYear(yearStr), parseMonthByShortName(monthStr), parseDateValue(dayStr, \"day\", 1, 31), {\n hours,\n minutes,\n seconds,\n fractionalMilliseconds\n })\n );\n }\n match = ASC_TIME.exec(value);\n if (match) {\n const [_, monthStr, dayStr, hours, minutes, seconds, fractionalMilliseconds, yearStr] = match;\n return buildDate(\n strictParseShort(stripLeadingZeroes(yearStr)),\n parseMonthByShortName(monthStr),\n parseDateValue(dayStr.trimLeft(), \"day\", 1, 31),\n { hours, minutes, seconds, fractionalMilliseconds }\n );\n }\n throw new TypeError(\"Invalid RFC-7231 date-time value\");\n}, \"parseRfc7231DateTime\");\nvar parseEpochTimestamp = /* @__PURE__ */ __name((value) => {\n if (value === null || value === void 0) {\n return void 0;\n }\n let valueAsDouble;\n if (typeof value === \"number\") {\n valueAsDouble = value;\n } else if (typeof value === \"string\") {\n valueAsDouble = strictParseDouble(value);\n } else if (typeof value === \"object\" && value.tag === 1) {\n valueAsDouble = value.value;\n } else {\n throw new TypeError(\"Epoch timestamps must be expressed as floating point numbers or their string representation\");\n }\n if (Number.isNaN(valueAsDouble) || valueAsDouble === Infinity || valueAsDouble === -Infinity) {\n throw new TypeError(\"Epoch timestamps must be valid, non-Infinite, non-NaN numerics\");\n }\n return new Date(Math.round(valueAsDouble * 1e3));\n}, \"parseEpochTimestamp\");\nvar buildDate = /* @__PURE__ */ __name((year, month, day, time) => {\n const adjustedMonth = month - 1;\n validateDayOfMonth(year, adjustedMonth, day);\n return new Date(\n Date.UTC(\n year,\n adjustedMonth,\n day,\n parseDateValue(time.hours, \"hour\", 0, 23),\n parseDateValue(time.minutes, \"minute\", 0, 59),\n // seconds can go up to 60 for leap seconds\n parseDateValue(time.seconds, \"seconds\", 0, 60),\n parseMilliseconds(time.fractionalMilliseconds)\n )\n );\n}, \"buildDate\");\nvar parseTwoDigitYear = /* @__PURE__ */ __name((value) => {\n const thisYear = (/* @__PURE__ */ new Date()).getUTCFullYear();\n const valueInThisCentury = Math.floor(thisYear / 100) * 100 + strictParseShort(stripLeadingZeroes(value));\n if (valueInThisCentury < thisYear) {\n return valueInThisCentury + 100;\n }\n return valueInThisCentury;\n}, \"parseTwoDigitYear\");\nvar FIFTY_YEARS_IN_MILLIS = 50 * 365 * 24 * 60 * 60 * 1e3;\nvar adjustRfc850Year = /* @__PURE__ */ __name((input) => {\n if (input.getTime() - (/* @__PURE__ */ new Date()).getTime() > FIFTY_YEARS_IN_MILLIS) {\n return new Date(\n Date.UTC(\n input.getUTCFullYear() - 100,\n input.getUTCMonth(),\n input.getUTCDate(),\n input.getUTCHours(),\n input.getUTCMinutes(),\n input.getUTCSeconds(),\n input.getUTCMilliseconds()\n )\n );\n }\n return input;\n}, \"adjustRfc850Year\");\nvar parseMonthByShortName = /* @__PURE__ */ __name((value) => {\n const monthIdx = MONTHS.indexOf(value);\n if (monthIdx < 0) {\n throw new TypeError(`Invalid month: ${value}`);\n }\n return monthIdx + 1;\n}, \"parseMonthByShortName\");\nvar DAYS_IN_MONTH = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];\nvar validateDayOfMonth = /* @__PURE__ */ __name((year, month, day) => {\n let maxDays = DAYS_IN_MONTH[month];\n if (month === 1 && isLeapYear(year)) {\n maxDays = 29;\n }\n if (day > maxDays) {\n throw new TypeError(`Invalid day for ${MONTHS[month]} in ${year}: ${day}`);\n }\n}, \"validateDayOfMonth\");\nvar isLeapYear = /* @__PURE__ */ __name((year) => {\n return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0);\n}, \"isLeapYear\");\nvar parseDateValue = /* @__PURE__ */ __name((value, type, lower, upper) => {\n const dateVal = strictParseByte(stripLeadingZeroes(value));\n if (dateVal < lower || dateVal > upper) {\n throw new TypeError(`${type} must be between ${lower} and ${upper}, inclusive`);\n }\n return dateVal;\n}, \"parseDateValue\");\nvar parseMilliseconds = /* @__PURE__ */ __name((value) => {\n if (value === null || value === void 0) {\n return 0;\n }\n return strictParseFloat32(\"0.\" + value) * 1e3;\n}, \"parseMilliseconds\");\nvar parseOffsetToMilliseconds = /* @__PURE__ */ __name((value) => {\n const directionStr = value[0];\n let direction = 1;\n if (directionStr == \"+\") {\n direction = 1;\n } else if (directionStr == \"-\") {\n direction = -1;\n } else {\n throw new TypeError(`Offset direction, ${directionStr}, must be \"+\" or \"-\"`);\n }\n const hour = Number(value.substring(1, 3));\n const minute = Number(value.substring(4, 6));\n return direction * (hour * 60 + minute) * 60 * 1e3;\n}, \"parseOffsetToMilliseconds\");\nvar stripLeadingZeroes = /* @__PURE__ */ __name((value) => {\n let idx = 0;\n while (idx < value.length - 1 && value.charAt(idx) === \"0\") {\n idx++;\n }\n if (idx === 0) {\n return value;\n }\n return value.slice(idx);\n}, \"stripLeadingZeroes\");\n\n// src/exceptions.ts\nvar _ServiceException = class _ServiceException extends Error {\n constructor(options) {\n super(options.message);\n Object.setPrototypeOf(this, _ServiceException.prototype);\n this.name = options.name;\n this.$fault = options.$fault;\n this.$metadata = options.$metadata;\n }\n};\n__name(_ServiceException, \"ServiceException\");\nvar ServiceException = _ServiceException;\nvar decorateServiceException = /* @__PURE__ */ __name((exception, additions = {}) => {\n Object.entries(additions).filter(([, v]) => v !== void 0).forEach(([k, v]) => {\n if (exception[k] == void 0 || exception[k] === \"\") {\n exception[k] = v;\n }\n });\n const message = exception.message || exception.Message || \"UnknownError\";\n exception.message = message;\n delete exception.Message;\n return exception;\n}, \"decorateServiceException\");\n\n// src/default-error-handler.ts\nvar throwDefaultError = /* @__PURE__ */ __name(({ output, parsedBody, exceptionCtor, errorCode }) => {\n const $metadata = deserializeMetadata(output);\n const statusCode = $metadata.httpStatusCode ? $metadata.httpStatusCode + \"\" : void 0;\n const response = new exceptionCtor({\n name: (parsedBody == null ? void 0 : parsedBody.code) || (parsedBody == null ? void 0 : parsedBody.Code) || errorCode || statusCode || \"UnknownError\",\n $fault: \"client\",\n $metadata\n });\n throw decorateServiceException(response, parsedBody);\n}, \"throwDefaultError\");\nvar withBaseException = /* @__PURE__ */ __name((ExceptionCtor) => {\n return ({ output, parsedBody, errorCode }) => {\n throwDefaultError({ output, parsedBody, exceptionCtor: ExceptionCtor, errorCode });\n };\n}, \"withBaseException\");\nvar deserializeMetadata = /* @__PURE__ */ __name((output) => ({\n httpStatusCode: output.statusCode,\n requestId: output.headers[\"x-amzn-requestid\"] ?? output.headers[\"x-amzn-request-id\"] ?? output.headers[\"x-amz-request-id\"],\n extendedRequestId: output.headers[\"x-amz-id-2\"],\n cfId: output.headers[\"x-amz-cf-id\"]\n}), \"deserializeMetadata\");\n\n// src/defaults-mode.ts\nvar loadConfigsForDefaultMode = /* @__PURE__ */ __name((mode) => {\n switch (mode) {\n case \"standard\":\n return {\n retryMode: \"standard\",\n connectionTimeout: 3100\n };\n case \"in-region\":\n return {\n retryMode: \"standard\",\n connectionTimeout: 1100\n };\n case \"cross-region\":\n return {\n retryMode: \"standard\",\n connectionTimeout: 3100\n };\n case \"mobile\":\n return {\n retryMode: \"standard\",\n connectionTimeout: 3e4\n };\n default:\n return {};\n }\n}, \"loadConfigsForDefaultMode\");\n\n// src/emitWarningIfUnsupportedVersion.ts\nvar warningEmitted = false;\nvar emitWarningIfUnsupportedVersion = /* @__PURE__ */ __name((version) => {\n if (version && !warningEmitted && parseInt(version.substring(1, version.indexOf(\".\"))) < 16) {\n warningEmitted = true;\n }\n}, \"emitWarningIfUnsupportedVersion\");\n\n// src/extensions/checksum.ts\n\nvar getChecksumConfiguration = /* @__PURE__ */ __name((runtimeConfig) => {\n const checksumAlgorithms = [];\n for (const id in import_types.AlgorithmId) {\n const algorithmId = import_types.AlgorithmId[id];\n if (runtimeConfig[algorithmId] === void 0) {\n continue;\n }\n checksumAlgorithms.push({\n algorithmId: () => algorithmId,\n checksumConstructor: () => runtimeConfig[algorithmId]\n });\n }\n return {\n _checksumAlgorithms: checksumAlgorithms,\n addChecksumAlgorithm(algo) {\n this._checksumAlgorithms.push(algo);\n },\n checksumAlgorithms() {\n return this._checksumAlgorithms;\n }\n };\n}, \"getChecksumConfiguration\");\nvar resolveChecksumRuntimeConfig = /* @__PURE__ */ __name((clientConfig) => {\n const runtimeConfig = {};\n clientConfig.checksumAlgorithms().forEach((checksumAlgorithm) => {\n runtimeConfig[checksumAlgorithm.algorithmId()] = checksumAlgorithm.checksumConstructor();\n });\n return runtimeConfig;\n}, \"resolveChecksumRuntimeConfig\");\n\n// src/extensions/retry.ts\nvar getRetryConfiguration = /* @__PURE__ */ __name((runtimeConfig) => {\n let _retryStrategy = runtimeConfig.retryStrategy;\n return {\n setRetryStrategy(retryStrategy) {\n _retryStrategy = retryStrategy;\n },\n retryStrategy() {\n return _retryStrategy;\n }\n };\n}, \"getRetryConfiguration\");\nvar resolveRetryRuntimeConfig = /* @__PURE__ */ __name((retryStrategyConfiguration) => {\n const runtimeConfig = {};\n runtimeConfig.retryStrategy = retryStrategyConfiguration.retryStrategy();\n return runtimeConfig;\n}, \"resolveRetryRuntimeConfig\");\n\n// src/extensions/defaultExtensionConfiguration.ts\nvar getDefaultExtensionConfiguration = /* @__PURE__ */ __name((runtimeConfig) => {\n return {\n ...getChecksumConfiguration(runtimeConfig),\n ...getRetryConfiguration(runtimeConfig)\n };\n}, \"getDefaultExtensionConfiguration\");\nvar getDefaultClientConfiguration = getDefaultExtensionConfiguration;\nvar resolveDefaultRuntimeConfig = /* @__PURE__ */ __name((config) => {\n return {\n ...resolveChecksumRuntimeConfig(config),\n ...resolveRetryRuntimeConfig(config)\n };\n}, \"resolveDefaultRuntimeConfig\");\n\n// src/extended-encode-uri-component.ts\nfunction extendedEncodeURIComponent(str) {\n return encodeURIComponent(str).replace(/[!'()*]/g, function(c) {\n return \"%\" + c.charCodeAt(0).toString(16).toUpperCase();\n });\n}\n__name(extendedEncodeURIComponent, \"extendedEncodeURIComponent\");\n\n// src/get-array-if-single-item.ts\nvar getArrayIfSingleItem = /* @__PURE__ */ __name((mayBeArray) => Array.isArray(mayBeArray) ? mayBeArray : [mayBeArray], \"getArrayIfSingleItem\");\n\n// src/get-value-from-text-node.ts\nvar getValueFromTextNode = /* @__PURE__ */ __name((obj) => {\n const textNodeName = \"#text\";\n for (const key in obj) {\n if (obj.hasOwnProperty(key) && obj[key][textNodeName] !== void 0) {\n obj[key] = obj[key][textNodeName];\n } else if (typeof obj[key] === \"object\" && obj[key] !== null) {\n obj[key] = getValueFromTextNode(obj[key]);\n }\n }\n return obj;\n}, \"getValueFromTextNode\");\n\n// src/lazy-json.ts\nvar StringWrapper = /* @__PURE__ */ __name(function() {\n const Class = Object.getPrototypeOf(this).constructor;\n const Constructor = Function.bind.apply(String, [null, ...arguments]);\n const instance = new Constructor();\n Object.setPrototypeOf(instance, Class.prototype);\n return instance;\n}, \"StringWrapper\");\nStringWrapper.prototype = Object.create(String.prototype, {\n constructor: {\n value: StringWrapper,\n enumerable: false,\n writable: true,\n configurable: true\n }\n});\nObject.setPrototypeOf(StringWrapper, String);\nvar _LazyJsonString = class _LazyJsonString extends StringWrapper {\n deserializeJSON() {\n return JSON.parse(super.toString());\n }\n toJSON() {\n return super.toString();\n }\n static fromObject(object) {\n if (object instanceof _LazyJsonString) {\n return object;\n } else if (object instanceof String || typeof object === \"string\") {\n return new _LazyJsonString(object);\n }\n return new _LazyJsonString(JSON.stringify(object));\n }\n};\n__name(_LazyJsonString, \"LazyJsonString\");\nvar LazyJsonString = _LazyJsonString;\n\n// src/object-mapping.ts\nfunction map(arg0, arg1, arg2) {\n let target;\n let filter;\n let instructions;\n if (typeof arg1 === \"undefined\" && typeof arg2 === \"undefined\") {\n target = {};\n instructions = arg0;\n } else {\n target = arg0;\n if (typeof arg1 === \"function\") {\n filter = arg1;\n instructions = arg2;\n return mapWithFilter(target, filter, instructions);\n } else {\n instructions = arg1;\n }\n }\n for (const key of Object.keys(instructions)) {\n if (!Array.isArray(instructions[key])) {\n target[key] = instructions[key];\n continue;\n }\n applyInstruction(target, null, instructions, key);\n }\n return target;\n}\n__name(map, \"map\");\nvar convertMap = /* @__PURE__ */ __name((target) => {\n const output = {};\n for (const [k, v] of Object.entries(target || {})) {\n output[k] = [, v];\n }\n return output;\n}, \"convertMap\");\nvar take = /* @__PURE__ */ __name((source, instructions) => {\n const out = {};\n for (const key in instructions) {\n applyInstruction(out, source, instructions, key);\n }\n return out;\n}, \"take\");\nvar mapWithFilter = /* @__PURE__ */ __name((target, filter, instructions) => {\n return map(\n target,\n Object.entries(instructions).reduce(\n (_instructions, [key, value]) => {\n if (Array.isArray(value)) {\n _instructions[key] = value;\n } else {\n if (typeof value === \"function\") {\n _instructions[key] = [filter, value()];\n } else {\n _instructions[key] = [filter, value];\n }\n }\n return _instructions;\n },\n {}\n )\n );\n}, \"mapWithFilter\");\nvar applyInstruction = /* @__PURE__ */ __name((target, source, instructions, targetKey) => {\n if (source !== null) {\n let instruction = instructions[targetKey];\n if (typeof instruction === \"function\") {\n instruction = [, instruction];\n }\n const [filter2 = nonNullish, valueFn = pass, sourceKey = targetKey] = instruction;\n if (typeof filter2 === \"function\" && filter2(source[sourceKey]) || typeof filter2 !== \"function\" && !!filter2) {\n target[targetKey] = valueFn(source[sourceKey]);\n }\n return;\n }\n let [filter, value] = instructions[targetKey];\n if (typeof value === \"function\") {\n let _value;\n const defaultFilterPassed = filter === void 0 && (_value = value()) != null;\n const customFilterPassed = typeof filter === \"function\" && !!filter(void 0) || typeof filter !== \"function\" && !!filter;\n if (defaultFilterPassed) {\n target[targetKey] = _value;\n } else if (customFilterPassed) {\n target[targetKey] = value();\n }\n } else {\n const defaultFilterPassed = filter === void 0 && value != null;\n const customFilterPassed = typeof filter === \"function\" && !!filter(value) || typeof filter !== \"function\" && !!filter;\n if (defaultFilterPassed || customFilterPassed) {\n target[targetKey] = value;\n }\n }\n}, \"applyInstruction\");\nvar nonNullish = /* @__PURE__ */ __name((_) => _ != null, \"nonNullish\");\nvar pass = /* @__PURE__ */ __name((_) => _, \"pass\");\n\n// src/resolve-path.ts\nvar resolvedPath = /* @__PURE__ */ __name((resolvedPath2, input, memberName, labelValueProvider, uriLabel, isGreedyLabel) => {\n if (input != null && input[memberName] !== void 0) {\n const labelValue = labelValueProvider();\n if (labelValue.length <= 0) {\n throw new Error(\"Empty value provided for input HTTP label: \" + memberName + \".\");\n }\n resolvedPath2 = resolvedPath2.replace(\n uriLabel,\n isGreedyLabel ? labelValue.split(\"/\").map((segment) => extendedEncodeURIComponent(segment)).join(\"/\") : extendedEncodeURIComponent(labelValue)\n );\n } else {\n throw new Error(\"No value provided for input HTTP label: \" + memberName + \".\");\n }\n return resolvedPath2;\n}, \"resolvedPath\");\n\n// src/ser-utils.ts\nvar serializeFloat = /* @__PURE__ */ __name((value) => {\n if (value !== value) {\n return \"NaN\";\n }\n switch (value) {\n case Infinity:\n return \"Infinity\";\n case -Infinity:\n return \"-Infinity\";\n default:\n return value;\n }\n}, \"serializeFloat\");\nvar serializeDateTime = /* @__PURE__ */ __name((date) => date.toISOString().replace(\".000Z\", \"Z\"), \"serializeDateTime\");\n\n// src/serde-json.ts\nvar _json = /* @__PURE__ */ __name((obj) => {\n if (obj == null) {\n return {};\n }\n if (Array.isArray(obj)) {\n return obj.filter((_) => _ != null).map(_json);\n }\n if (typeof obj === \"object\") {\n const target = {};\n for (const key of Object.keys(obj)) {\n if (obj[key] == null) {\n continue;\n }\n target[key] = _json(obj[key]);\n }\n return target;\n }\n return obj;\n}, \"_json\");\n\n// src/split-every.ts\nfunction splitEvery(value, delimiter, numDelimiters) {\n if (numDelimiters <= 0 || !Number.isInteger(numDelimiters)) {\n throw new Error(\"Invalid number of delimiters (\" + numDelimiters + \") for splitEvery.\");\n }\n const segments = value.split(delimiter);\n if (numDelimiters === 1) {\n return segments;\n }\n const compoundSegments = [];\n let currentSegment = \"\";\n for (let i = 0; i < segments.length; i++) {\n if (currentSegment === \"\") {\n currentSegment = segments[i];\n } else {\n currentSegment += delimiter + segments[i];\n }\n if ((i + 1) % numDelimiters === 0) {\n compoundSegments.push(currentSegment);\n currentSegment = \"\";\n }\n }\n if (currentSegment !== \"\") {\n compoundSegments.push(currentSegment);\n }\n return compoundSegments;\n}\n__name(splitEvery, \"splitEvery\");\n// Annotate the CommonJS export names for ESM import in node:\n\n0 && (module.exports = {\n NoOpLogger,\n Client,\n collectBody,\n Command,\n SENSITIVE_STRING,\n createAggregatedClient,\n dateToUtcString,\n parseRfc3339DateTime,\n parseRfc3339DateTimeWithOffset,\n parseRfc7231DateTime,\n parseEpochTimestamp,\n throwDefaultError,\n withBaseException,\n loadConfigsForDefaultMode,\n emitWarningIfUnsupportedVersion,\n getDefaultExtensionConfiguration,\n getDefaultClientConfiguration,\n resolveDefaultRuntimeConfig,\n ServiceException,\n decorateServiceException,\n extendedEncodeURIComponent,\n getArrayIfSingleItem,\n getValueFromTextNode,\n StringWrapper,\n LazyJsonString,\n map,\n convertMap,\n take,\n parseBoolean,\n expectBoolean,\n expectNumber,\n expectFloat32,\n expectLong,\n expectInt,\n expectInt32,\n expectShort,\n expectByte,\n expectNonNull,\n expectObject,\n expectString,\n expectUnion,\n strictParseDouble,\n strictParseFloat,\n strictParseFloat32,\n limitedParseDouble,\n handleFloat,\n limitedParseFloat,\n limitedParseFloat32,\n strictParseLong,\n strictParseInt,\n strictParseInt32,\n strictParseShort,\n strictParseByte,\n logger,\n resolvedPath,\n serializeFloat,\n serializeDateTime,\n _json,\n splitEvery\n});\n\n",
|
|
141
|
+
"\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.isStreamingPayload = void 0;\nconst stream_1 = require(\"stream\");\nconst isStreamingPayload = (request) => (request === null || request === void 0 ? void 0 : request.body) instanceof stream_1.Readable ||\n (typeof ReadableStream !== \"undefined\" && (request === null || request === void 0 ? void 0 : request.body) instanceof ReadableStream);\nexports.isStreamingPayload = isStreamingPayload;\n",
|
|
142
|
+
"var __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __name = (target, value) => __defProp(target, \"name\", { value, configurable: true });\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/index.ts\nvar src_exports = {};\n__export(src_exports, {\n AdaptiveRetryStrategy: () => AdaptiveRetryStrategy,\n CONFIG_MAX_ATTEMPTS: () => CONFIG_MAX_ATTEMPTS,\n CONFIG_RETRY_MODE: () => CONFIG_RETRY_MODE,\n ENV_MAX_ATTEMPTS: () => ENV_MAX_ATTEMPTS,\n ENV_RETRY_MODE: () => ENV_RETRY_MODE,\n NODE_MAX_ATTEMPT_CONFIG_OPTIONS: () => NODE_MAX_ATTEMPT_CONFIG_OPTIONS,\n NODE_RETRY_MODE_CONFIG_OPTIONS: () => NODE_RETRY_MODE_CONFIG_OPTIONS,\n StandardRetryStrategy: () => StandardRetryStrategy,\n defaultDelayDecider: () => defaultDelayDecider,\n defaultRetryDecider: () => defaultRetryDecider,\n getOmitRetryHeadersPlugin: () => getOmitRetryHeadersPlugin,\n getRetryAfterHint: () => getRetryAfterHint,\n getRetryPlugin: () => getRetryPlugin,\n omitRetryHeadersMiddleware: () => omitRetryHeadersMiddleware,\n omitRetryHeadersMiddlewareOptions: () => omitRetryHeadersMiddlewareOptions,\n resolveRetryConfig: () => resolveRetryConfig,\n retryMiddleware: () => retryMiddleware,\n retryMiddlewareOptions: () => retryMiddlewareOptions\n});\nmodule.exports = __toCommonJS(src_exports);\n\n// src/AdaptiveRetryStrategy.ts\n\n\n// src/StandardRetryStrategy.ts\nvar import_protocol_http = require(\"@smithy/protocol-http\");\n\n\nvar import_uuid = require(\"uuid\");\n\n// src/defaultRetryQuota.ts\nvar import_util_retry = require(\"@smithy/util-retry\");\nvar getDefaultRetryQuota = /* @__PURE__ */ __name((initialRetryTokens, options) => {\n const MAX_CAPACITY = initialRetryTokens;\n const noRetryIncrement = (options == null ? void 0 : options.noRetryIncrement) ?? import_util_retry.NO_RETRY_INCREMENT;\n const retryCost = (options == null ? void 0 : options.retryCost) ?? import_util_retry.RETRY_COST;\n const timeoutRetryCost = (options == null ? void 0 : options.timeoutRetryCost) ?? import_util_retry.TIMEOUT_RETRY_COST;\n let availableCapacity = initialRetryTokens;\n const getCapacityAmount = /* @__PURE__ */ __name((error) => error.name === \"TimeoutError\" ? timeoutRetryCost : retryCost, \"getCapacityAmount\");\n const hasRetryTokens = /* @__PURE__ */ __name((error) => getCapacityAmount(error) <= availableCapacity, \"hasRetryTokens\");\n const retrieveRetryTokens = /* @__PURE__ */ __name((error) => {\n if (!hasRetryTokens(error)) {\n throw new Error(\"No retry token available\");\n }\n const capacityAmount = getCapacityAmount(error);\n availableCapacity -= capacityAmount;\n return capacityAmount;\n }, \"retrieveRetryTokens\");\n const releaseRetryTokens = /* @__PURE__ */ __name((capacityReleaseAmount) => {\n availableCapacity += capacityReleaseAmount ?? noRetryIncrement;\n availableCapacity = Math.min(availableCapacity, MAX_CAPACITY);\n }, \"releaseRetryTokens\");\n return Object.freeze({\n hasRetryTokens,\n retrieveRetryTokens,\n releaseRetryTokens\n });\n}, \"getDefaultRetryQuota\");\n\n// src/delayDecider.ts\n\nvar defaultDelayDecider = /* @__PURE__ */ __name((delayBase, attempts) => Math.floor(Math.min(import_util_retry.MAXIMUM_RETRY_DELAY, Math.random() * 2 ** attempts * delayBase)), \"defaultDelayDecider\");\n\n// src/retryDecider.ts\nvar import_service_error_classification = require(\"@smithy/service-error-classification\");\nvar defaultRetryDecider = /* @__PURE__ */ __name((error) => {\n if (!error) {\n return false;\n }\n return (0, import_service_error_classification.isRetryableByTrait)(error) || (0, import_service_error_classification.isClockSkewError)(error) || (0, import_service_error_classification.isThrottlingError)(error) || (0, import_service_error_classification.isTransientError)(error);\n}, \"defaultRetryDecider\");\n\n// src/util.ts\nvar asSdkError = /* @__PURE__ */ __name((error) => {\n if (error instanceof Error)\n return error;\n if (error instanceof Object)\n return Object.assign(new Error(), error);\n if (typeof error === \"string\")\n return new Error(error);\n return new Error(`AWS SDK error wrapper for ${error}`);\n}, \"asSdkError\");\n\n// src/StandardRetryStrategy.ts\nvar _StandardRetryStrategy = class _StandardRetryStrategy {\n constructor(maxAttemptsProvider, options) {\n this.maxAttemptsProvider = maxAttemptsProvider;\n this.mode = import_util_retry.RETRY_MODES.STANDARD;\n this.retryDecider = (options == null ? void 0 : options.retryDecider) ?? defaultRetryDecider;\n this.delayDecider = (options == null ? void 0 : options.delayDecider) ?? defaultDelayDecider;\n this.retryQuota = (options == null ? void 0 : options.retryQuota) ?? getDefaultRetryQuota(import_util_retry.INITIAL_RETRY_TOKENS);\n }\n shouldRetry(error, attempts, maxAttempts) {\n return attempts < maxAttempts && this.retryDecider(error) && this.retryQuota.hasRetryTokens(error);\n }\n async getMaxAttempts() {\n let maxAttempts;\n try {\n maxAttempts = await this.maxAttemptsProvider();\n } catch (error) {\n maxAttempts = import_util_retry.DEFAULT_MAX_ATTEMPTS;\n }\n return maxAttempts;\n }\n async retry(next, args, options) {\n let retryTokenAmount;\n let attempts = 0;\n let totalDelay = 0;\n const maxAttempts = await this.getMaxAttempts();\n const { request } = args;\n if (import_protocol_http.HttpRequest.isInstance(request)) {\n request.headers[import_util_retry.INVOCATION_ID_HEADER] = (0, import_uuid.v4)();\n }\n while (true) {\n try {\n if (import_protocol_http.HttpRequest.isInstance(request)) {\n request.headers[import_util_retry.REQUEST_HEADER] = `attempt=${attempts + 1}; max=${maxAttempts}`;\n }\n if (options == null ? void 0 : options.beforeRequest) {\n await options.beforeRequest();\n }\n const { response, output } = await next(args);\n if (options == null ? void 0 : options.afterRequest) {\n options.afterRequest(response);\n }\n this.retryQuota.releaseRetryTokens(retryTokenAmount);\n output.$metadata.attempts = attempts + 1;\n output.$metadata.totalRetryDelay = totalDelay;\n return { response, output };\n } catch (e) {\n const err = asSdkError(e);\n attempts++;\n if (this.shouldRetry(err, attempts, maxAttempts)) {\n retryTokenAmount = this.retryQuota.retrieveRetryTokens(err);\n const delayFromDecider = this.delayDecider(\n (0, import_service_error_classification.isThrottlingError)(err) ? import_util_retry.THROTTLING_RETRY_DELAY_BASE : import_util_retry.DEFAULT_RETRY_DELAY_BASE,\n attempts\n );\n const delayFromResponse = getDelayFromRetryAfterHeader(err.$response);\n const delay = Math.max(delayFromResponse || 0, delayFromDecider);\n totalDelay += delay;\n await new Promise((resolve) => setTimeout(resolve, delay));\n continue;\n }\n if (!err.$metadata) {\n err.$metadata = {};\n }\n err.$metadata.attempts = attempts;\n err.$metadata.totalRetryDelay = totalDelay;\n throw err;\n }\n }\n }\n};\n__name(_StandardRetryStrategy, \"StandardRetryStrategy\");\nvar StandardRetryStrategy = _StandardRetryStrategy;\nvar getDelayFromRetryAfterHeader = /* @__PURE__ */ __name((response) => {\n if (!import_protocol_http.HttpResponse.isInstance(response))\n return;\n const retryAfterHeaderName = Object.keys(response.headers).find((key) => key.toLowerCase() === \"retry-after\");\n if (!retryAfterHeaderName)\n return;\n const retryAfter = response.headers[retryAfterHeaderName];\n const retryAfterSeconds = Number(retryAfter);\n if (!Number.isNaN(retryAfterSeconds))\n return retryAfterSeconds * 1e3;\n const retryAfterDate = new Date(retryAfter);\n return retryAfterDate.getTime() - Date.now();\n}, \"getDelayFromRetryAfterHeader\");\n\n// src/AdaptiveRetryStrategy.ts\nvar _AdaptiveRetryStrategy = class _AdaptiveRetryStrategy extends StandardRetryStrategy {\n constructor(maxAttemptsProvider, options) {\n const { rateLimiter, ...superOptions } = options ?? {};\n super(maxAttemptsProvider, superOptions);\n this.rateLimiter = rateLimiter ?? new import_util_retry.DefaultRateLimiter();\n this.mode = import_util_retry.RETRY_MODES.ADAPTIVE;\n }\n async retry(next, args) {\n return super.retry(next, args, {\n beforeRequest: async () => {\n return this.rateLimiter.getSendToken();\n },\n afterRequest: (response) => {\n this.rateLimiter.updateClientSendingRate(response);\n }\n });\n }\n};\n__name(_AdaptiveRetryStrategy, \"AdaptiveRetryStrategy\");\nvar AdaptiveRetryStrategy = _AdaptiveRetryStrategy;\n\n// src/configurations.ts\nvar import_util_middleware = require(\"@smithy/util-middleware\");\n\nvar ENV_MAX_ATTEMPTS = \"AWS_MAX_ATTEMPTS\";\nvar CONFIG_MAX_ATTEMPTS = \"max_attempts\";\nvar NODE_MAX_ATTEMPT_CONFIG_OPTIONS = {\n environmentVariableSelector: (env) => {\n const value = env[ENV_MAX_ATTEMPTS];\n if (!value)\n return void 0;\n const maxAttempt = parseInt(value);\n if (Number.isNaN(maxAttempt)) {\n throw new Error(`Environment variable ${ENV_MAX_ATTEMPTS} mast be a number, got \"${value}\"`);\n }\n return maxAttempt;\n },\n configFileSelector: (profile) => {\n const value = profile[CONFIG_MAX_ATTEMPTS];\n if (!value)\n return void 0;\n const maxAttempt = parseInt(value);\n if (Number.isNaN(maxAttempt)) {\n throw new Error(`Shared config file entry ${CONFIG_MAX_ATTEMPTS} mast be a number, got \"${value}\"`);\n }\n return maxAttempt;\n },\n default: import_util_retry.DEFAULT_MAX_ATTEMPTS\n};\nvar resolveRetryConfig = /* @__PURE__ */ __name((input) => {\n const { retryStrategy } = input;\n const maxAttempts = (0, import_util_middleware.normalizeProvider)(input.maxAttempts ?? import_util_retry.DEFAULT_MAX_ATTEMPTS);\n return {\n ...input,\n maxAttempts,\n retryStrategy: async () => {\n if (retryStrategy) {\n return retryStrategy;\n }\n const retryMode = await (0, import_util_middleware.normalizeProvider)(input.retryMode)();\n if (retryMode === import_util_retry.RETRY_MODES.ADAPTIVE) {\n return new import_util_retry.AdaptiveRetryStrategy(maxAttempts);\n }\n return new import_util_retry.StandardRetryStrategy(maxAttempts);\n }\n };\n}, \"resolveRetryConfig\");\nvar ENV_RETRY_MODE = \"AWS_RETRY_MODE\";\nvar CONFIG_RETRY_MODE = \"retry_mode\";\nvar NODE_RETRY_MODE_CONFIG_OPTIONS = {\n environmentVariableSelector: (env) => env[ENV_RETRY_MODE],\n configFileSelector: (profile) => profile[CONFIG_RETRY_MODE],\n default: import_util_retry.DEFAULT_RETRY_MODE\n};\n\n// src/omitRetryHeadersMiddleware.ts\n\n\nvar omitRetryHeadersMiddleware = /* @__PURE__ */ __name(() => (next) => async (args) => {\n const { request } = args;\n if (import_protocol_http.HttpRequest.isInstance(request)) {\n delete request.headers[import_util_retry.INVOCATION_ID_HEADER];\n delete request.headers[import_util_retry.REQUEST_HEADER];\n }\n return next(args);\n}, \"omitRetryHeadersMiddleware\");\nvar omitRetryHeadersMiddlewareOptions = {\n name: \"omitRetryHeadersMiddleware\",\n tags: [\"RETRY\", \"HEADERS\", \"OMIT_RETRY_HEADERS\"],\n relation: \"before\",\n toMiddleware: \"awsAuthMiddleware\",\n override: true\n};\nvar getOmitRetryHeadersPlugin = /* @__PURE__ */ __name((options) => ({\n applyToStack: (clientStack) => {\n clientStack.addRelativeTo(omitRetryHeadersMiddleware(), omitRetryHeadersMiddlewareOptions);\n }\n}), \"getOmitRetryHeadersPlugin\");\n\n// src/retryMiddleware.ts\n\n\nvar import_smithy_client = require(\"@smithy/smithy-client\");\n\n\nvar import_isStreamingPayload = require(\"./isStreamingPayload/isStreamingPayload\");\nvar retryMiddleware = /* @__PURE__ */ __name((options) => (next, context) => async (args) => {\n var _a;\n let retryStrategy = await options.retryStrategy();\n const maxAttempts = await options.maxAttempts();\n if (isRetryStrategyV2(retryStrategy)) {\n retryStrategy = retryStrategy;\n let retryToken = await retryStrategy.acquireInitialRetryToken(context[\"partition_id\"]);\n let lastError = new Error();\n let attempts = 0;\n let totalRetryDelay = 0;\n const { request } = args;\n const isRequest = import_protocol_http.HttpRequest.isInstance(request);\n if (isRequest) {\n request.headers[import_util_retry.INVOCATION_ID_HEADER] = (0, import_uuid.v4)();\n }\n while (true) {\n try {\n if (isRequest) {\n request.headers[import_util_retry.REQUEST_HEADER] = `attempt=${attempts + 1}; max=${maxAttempts}`;\n }\n const { response, output } = await next(args);\n retryStrategy.recordSuccess(retryToken);\n output.$metadata.attempts = attempts + 1;\n output.$metadata.totalRetryDelay = totalRetryDelay;\n return { response, output };\n } catch (e) {\n const retryErrorInfo = getRetryErrorInfo(e);\n lastError = asSdkError(e);\n if (isRequest && (0, import_isStreamingPayload.isStreamingPayload)(request)) {\n (_a = context.logger instanceof import_smithy_client.NoOpLogger ? console : context.logger) == null ? void 0 : _a.warn(\n \"An error was encountered in a non-retryable streaming request.\"\n );\n throw lastError;\n }\n try {\n retryToken = await retryStrategy.refreshRetryTokenForRetry(retryToken, retryErrorInfo);\n } catch (refreshError) {\n if (!lastError.$metadata) {\n lastError.$metadata = {};\n }\n lastError.$metadata.attempts = attempts + 1;\n lastError.$metadata.totalRetryDelay = totalRetryDelay;\n throw lastError;\n }\n attempts = retryToken.getRetryCount();\n const delay = retryToken.getRetryDelay();\n totalRetryDelay += delay;\n await new Promise((resolve) => setTimeout(resolve, delay));\n }\n }\n } else {\n retryStrategy = retryStrategy;\n if (retryStrategy == null ? void 0 : retryStrategy.mode)\n context.userAgent = [...context.userAgent || [], [\"cfg/retry-mode\", retryStrategy.mode]];\n return retryStrategy.retry(next, args);\n }\n}, \"retryMiddleware\");\nvar isRetryStrategyV2 = /* @__PURE__ */ __name((retryStrategy) => typeof retryStrategy.acquireInitialRetryToken !== \"undefined\" && typeof retryStrategy.refreshRetryTokenForRetry !== \"undefined\" && typeof retryStrategy.recordSuccess !== \"undefined\", \"isRetryStrategyV2\");\nvar getRetryErrorInfo = /* @__PURE__ */ __name((error) => {\n const errorInfo = {\n error,\n errorType: getRetryErrorType(error)\n };\n const retryAfterHint = getRetryAfterHint(error.$response);\n if (retryAfterHint) {\n errorInfo.retryAfterHint = retryAfterHint;\n }\n return errorInfo;\n}, \"getRetryErrorInfo\");\nvar getRetryErrorType = /* @__PURE__ */ __name((error) => {\n if ((0, import_service_error_classification.isThrottlingError)(error))\n return \"THROTTLING\";\n if ((0, import_service_error_classification.isTransientError)(error))\n return \"TRANSIENT\";\n if ((0, import_service_error_classification.isServerError)(error))\n return \"SERVER_ERROR\";\n return \"CLIENT_ERROR\";\n}, \"getRetryErrorType\");\nvar retryMiddlewareOptions = {\n name: \"retryMiddleware\",\n tags: [\"RETRY\"],\n step: \"finalizeRequest\",\n priority: \"high\",\n override: true\n};\nvar getRetryPlugin = /* @__PURE__ */ __name((options) => ({\n applyToStack: (clientStack) => {\n clientStack.add(retryMiddleware(options), retryMiddlewareOptions);\n }\n}), \"getRetryPlugin\");\nvar getRetryAfterHint = /* @__PURE__ */ __name((response) => {\n if (!import_protocol_http.HttpResponse.isInstance(response))\n return;\n const retryAfterHeaderName = Object.keys(response.headers).find((key) => key.toLowerCase() === \"retry-after\");\n if (!retryAfterHeaderName)\n return;\n const retryAfter = response.headers[retryAfterHeaderName];\n const retryAfterSeconds = Number(retryAfter);\n if (!Number.isNaN(retryAfterSeconds))\n return new Date(retryAfterSeconds * 1e3);\n const retryAfterDate = new Date(retryAfter);\n return retryAfterDate;\n}, \"getRetryAfterHint\");\n// Annotate the CommonJS export names for ESM import in node:\n\n0 && (module.exports = {\n AdaptiveRetryStrategy,\n StandardRetryStrategy,\n ENV_MAX_ATTEMPTS,\n CONFIG_MAX_ATTEMPTS,\n NODE_MAX_ATTEMPT_CONFIG_OPTIONS,\n resolveRetryConfig,\n ENV_RETRY_MODE,\n CONFIG_RETRY_MODE,\n NODE_RETRY_MODE_CONFIG_OPTIONS,\n defaultDelayDecider,\n omitRetryHeadersMiddleware,\n omitRetryHeadersMiddlewareOptions,\n getOmitRetryHeadersPlugin,\n defaultRetryDecider,\n retryMiddleware,\n retryMiddlewareOptions,\n getRetryPlugin,\n getRetryAfterHint\n});\n\n",
|
|
143
|
+
"var __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __name = (target, value) => __defProp(target, \"name\", { value, configurable: true });\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/index.ts\nvar src_exports = {};\n__export(src_exports, {\n DefaultIdentityProviderConfig: () => DefaultIdentityProviderConfig,\n EXPIRATION_MS: () => EXPIRATION_MS,\n HttpApiKeyAuthSigner: () => HttpApiKeyAuthSigner,\n HttpBearerAuthSigner: () => HttpBearerAuthSigner,\n NoAuthSigner: () => NoAuthSigner,\n RequestBuilder: () => RequestBuilder,\n createIsIdentityExpiredFunction: () => createIsIdentityExpiredFunction,\n createPaginator: () => createPaginator,\n doesIdentityRequireRefresh: () => doesIdentityRequireRefresh,\n getHttpAuthSchemeEndpointRuleSetPlugin: () => getHttpAuthSchemeEndpointRuleSetPlugin,\n getHttpAuthSchemePlugin: () => getHttpAuthSchemePlugin,\n getHttpSigningPlugin: () => getHttpSigningPlugin,\n getSmithyContext: () => getSmithyContext3,\n httpAuthSchemeEndpointRuleSetMiddlewareOptions: () => httpAuthSchemeEndpointRuleSetMiddlewareOptions,\n httpAuthSchemeMiddleware: () => httpAuthSchemeMiddleware,\n httpAuthSchemeMiddlewareOptions: () => httpAuthSchemeMiddlewareOptions,\n httpSigningMiddleware: () => httpSigningMiddleware,\n httpSigningMiddlewareOptions: () => httpSigningMiddlewareOptions,\n isIdentityExpired: () => isIdentityExpired,\n memoizeIdentityProvider: () => memoizeIdentityProvider,\n normalizeProvider: () => normalizeProvider,\n requestBuilder: () => requestBuilder\n});\nmodule.exports = __toCommonJS(src_exports);\n\n// src/middleware-http-auth-scheme/httpAuthSchemeMiddleware.ts\nvar import_util_middleware = require(\"@smithy/util-middleware\");\nfunction convertHttpAuthSchemesToMap(httpAuthSchemes) {\n const map = /* @__PURE__ */ new Map();\n for (const scheme of httpAuthSchemes) {\n map.set(scheme.schemeId, scheme);\n }\n return map;\n}\n__name(convertHttpAuthSchemesToMap, \"convertHttpAuthSchemesToMap\");\nvar httpAuthSchemeMiddleware = /* @__PURE__ */ __name((config, mwOptions) => (next, context) => async (args) => {\n var _a;\n const options = config.httpAuthSchemeProvider(\n await mwOptions.httpAuthSchemeParametersProvider(config, context, args.input)\n );\n const authSchemes = convertHttpAuthSchemesToMap(config.httpAuthSchemes);\n const smithyContext = (0, import_util_middleware.getSmithyContext)(context);\n const failureReasons = [];\n for (const option of options) {\n const scheme = authSchemes.get(option.schemeId);\n if (!scheme) {\n failureReasons.push(`HttpAuthScheme \\`${option.schemeId}\\` was not enabled for this service.`);\n continue;\n }\n const identityProvider = scheme.identityProvider(await mwOptions.identityProviderConfigProvider(config));\n if (!identityProvider) {\n failureReasons.push(`HttpAuthScheme \\`${option.schemeId}\\` did not have an IdentityProvider configured.`);\n continue;\n }\n const { identityProperties = {}, signingProperties = {} } = ((_a = option.propertiesExtractor) == null ? void 0 : _a.call(option, config, context)) || {};\n option.identityProperties = Object.assign(option.identityProperties || {}, identityProperties);\n option.signingProperties = Object.assign(option.signingProperties || {}, signingProperties);\n smithyContext.selectedHttpAuthScheme = {\n httpAuthOption: option,\n identity: await identityProvider(option.identityProperties),\n signer: scheme.signer\n };\n break;\n }\n if (!smithyContext.selectedHttpAuthScheme) {\n throw new Error(failureReasons.join(\"\\n\"));\n }\n return next(args);\n}, \"httpAuthSchemeMiddleware\");\n\n// src/middleware-http-auth-scheme/getHttpAuthSchemeEndpointRuleSetPlugin.ts\nvar import_middleware_endpoint = require(\"@smithy/middleware-endpoint\");\nvar httpAuthSchemeEndpointRuleSetMiddlewareOptions = {\n step: \"serialize\",\n tags: [\"HTTP_AUTH_SCHEME\"],\n name: \"httpAuthSchemeMiddleware\",\n override: true,\n relation: \"before\",\n toMiddleware: import_middleware_endpoint.endpointMiddlewareOptions.name\n};\nvar getHttpAuthSchemeEndpointRuleSetPlugin = /* @__PURE__ */ __name((config, {\n httpAuthSchemeParametersProvider,\n identityProviderConfigProvider\n}) => ({\n applyToStack: (clientStack) => {\n clientStack.addRelativeTo(\n httpAuthSchemeMiddleware(config, {\n httpAuthSchemeParametersProvider,\n identityProviderConfigProvider\n }),\n httpAuthSchemeEndpointRuleSetMiddlewareOptions\n );\n }\n}), \"getHttpAuthSchemeEndpointRuleSetPlugin\");\n\n// src/middleware-http-auth-scheme/getHttpAuthSchemePlugin.ts\nvar import_middleware_serde = require(\"@smithy/middleware-serde\");\nvar httpAuthSchemeMiddlewareOptions = {\n step: \"serialize\",\n tags: [\"HTTP_AUTH_SCHEME\"],\n name: \"httpAuthSchemeMiddleware\",\n override: true,\n relation: \"before\",\n toMiddleware: import_middleware_serde.serializerMiddlewareOption.name\n};\nvar getHttpAuthSchemePlugin = /* @__PURE__ */ __name((config, {\n httpAuthSchemeParametersProvider,\n identityProviderConfigProvider\n}) => ({\n applyToStack: (clientStack) => {\n clientStack.addRelativeTo(\n httpAuthSchemeMiddleware(config, {\n httpAuthSchemeParametersProvider,\n identityProviderConfigProvider\n }),\n httpAuthSchemeMiddlewareOptions\n );\n }\n}), \"getHttpAuthSchemePlugin\");\n\n// src/middleware-http-signing/httpSigningMiddleware.ts\nvar import_protocol_http = require(\"@smithy/protocol-http\");\n\nvar defaultErrorHandler = /* @__PURE__ */ __name((signingProperties) => (error) => {\n throw error;\n}, \"defaultErrorHandler\");\nvar defaultSuccessHandler = /* @__PURE__ */ __name((httpResponse, signingProperties) => {\n}, \"defaultSuccessHandler\");\nvar httpSigningMiddleware = /* @__PURE__ */ __name((config) => (next, context) => async (args) => {\n if (!import_protocol_http.HttpRequest.isInstance(args.request)) {\n return next(args);\n }\n const smithyContext = (0, import_util_middleware.getSmithyContext)(context);\n const scheme = smithyContext.selectedHttpAuthScheme;\n if (!scheme) {\n throw new Error(`No HttpAuthScheme was selected: unable to sign request`);\n }\n const {\n httpAuthOption: { signingProperties = {} },\n identity,\n signer\n } = scheme;\n const output = await next({\n ...args,\n request: await signer.sign(args.request, identity, signingProperties)\n }).catch((signer.errorHandler || defaultErrorHandler)(signingProperties));\n (signer.successHandler || defaultSuccessHandler)(output.response, signingProperties);\n return output;\n}, \"httpSigningMiddleware\");\n\n// src/middleware-http-signing/getHttpSigningMiddleware.ts\nvar import_middleware_retry = require(\"@smithy/middleware-retry\");\nvar httpSigningMiddlewareOptions = {\n step: \"finalizeRequest\",\n tags: [\"HTTP_SIGNING\"],\n name: \"httpSigningMiddleware\",\n aliases: [\"apiKeyMiddleware\", \"tokenMiddleware\", \"awsAuthMiddleware\"],\n override: true,\n relation: \"after\",\n toMiddleware: import_middleware_retry.retryMiddlewareOptions.name\n};\nvar getHttpSigningPlugin = /* @__PURE__ */ __name((config) => ({\n applyToStack: (clientStack) => {\n clientStack.addRelativeTo(httpSigningMiddleware(config), httpSigningMiddlewareOptions);\n }\n}), \"getHttpSigningPlugin\");\n\n// src/util-identity-and-auth/DefaultIdentityProviderConfig.ts\nvar _DefaultIdentityProviderConfig = class _DefaultIdentityProviderConfig {\n /**\n * Creates an IdentityProviderConfig with a record of scheme IDs to identity providers.\n *\n * @param config scheme IDs and identity providers to configure\n */\n constructor(config) {\n this.authSchemes = /* @__PURE__ */ new Map();\n for (const [key, value] of Object.entries(config)) {\n if (value !== void 0) {\n this.authSchemes.set(key, value);\n }\n }\n }\n getIdentityProvider(schemeId) {\n return this.authSchemes.get(schemeId);\n }\n};\n__name(_DefaultIdentityProviderConfig, \"DefaultIdentityProviderConfig\");\nvar DefaultIdentityProviderConfig = _DefaultIdentityProviderConfig;\n\n// src/util-identity-and-auth/httpAuthSchemes/httpApiKeyAuth.ts\n\nvar import_types = require(\"@smithy/types\");\nvar _HttpApiKeyAuthSigner = class _HttpApiKeyAuthSigner {\n async sign(httpRequest, identity, signingProperties) {\n if (!signingProperties) {\n throw new Error(\n \"request could not be signed with `apiKey` since the `name` and `in` signer properties are missing\"\n );\n }\n if (!signingProperties.name) {\n throw new Error(\"request could not be signed with `apiKey` since the `name` signer property is missing\");\n }\n if (!signingProperties.in) {\n throw new Error(\"request could not be signed with `apiKey` since the `in` signer property is missing\");\n }\n if (!identity.apiKey) {\n throw new Error(\"request could not be signed with `apiKey` since the `apiKey` is not defined\");\n }\n const clonedRequest = import_protocol_http.HttpRequest.clone(httpRequest);\n if (signingProperties.in === import_types.HttpApiKeyAuthLocation.QUERY) {\n clonedRequest.query[signingProperties.name] = identity.apiKey;\n } else if (signingProperties.in === import_types.HttpApiKeyAuthLocation.HEADER) {\n clonedRequest.headers[signingProperties.name] = signingProperties.scheme ? `${signingProperties.scheme} ${identity.apiKey}` : identity.apiKey;\n } else {\n throw new Error(\n \"request can only be signed with `apiKey` locations `query` or `header`, but found: `\" + signingProperties.in + \"`\"\n );\n }\n return clonedRequest;\n }\n};\n__name(_HttpApiKeyAuthSigner, \"HttpApiKeyAuthSigner\");\nvar HttpApiKeyAuthSigner = _HttpApiKeyAuthSigner;\n\n// src/util-identity-and-auth/httpAuthSchemes/httpBearerAuth.ts\n\nvar _HttpBearerAuthSigner = class _HttpBearerAuthSigner {\n async sign(httpRequest, identity, signingProperties) {\n const clonedRequest = import_protocol_http.HttpRequest.clone(httpRequest);\n if (!identity.token) {\n throw new Error(\"request could not be signed with `token` since the `token` is not defined\");\n }\n clonedRequest.headers[\"Authorization\"] = `Bearer ${identity.token}`;\n return clonedRequest;\n }\n};\n__name(_HttpBearerAuthSigner, \"HttpBearerAuthSigner\");\nvar HttpBearerAuthSigner = _HttpBearerAuthSigner;\n\n// src/util-identity-and-auth/httpAuthSchemes/noAuth.ts\nvar _NoAuthSigner = class _NoAuthSigner {\n async sign(httpRequest, identity, signingProperties) {\n return httpRequest;\n }\n};\n__name(_NoAuthSigner, \"NoAuthSigner\");\nvar NoAuthSigner = _NoAuthSigner;\n\n// src/util-identity-and-auth/memoizeIdentityProvider.ts\nvar createIsIdentityExpiredFunction = /* @__PURE__ */ __name((expirationMs) => (identity) => doesIdentityRequireRefresh(identity) && identity.expiration.getTime() - Date.now() < expirationMs, \"createIsIdentityExpiredFunction\");\nvar EXPIRATION_MS = 3e5;\nvar isIdentityExpired = createIsIdentityExpiredFunction(EXPIRATION_MS);\nvar doesIdentityRequireRefresh = /* @__PURE__ */ __name((identity) => identity.expiration !== void 0, \"doesIdentityRequireRefresh\");\nvar memoizeIdentityProvider = /* @__PURE__ */ __name((provider, isExpired, requiresRefresh) => {\n if (provider === void 0) {\n return void 0;\n }\n const normalizedProvider = typeof provider !== \"function\" ? async () => Promise.resolve(provider) : provider;\n let resolved;\n let pending;\n let hasResult;\n let isConstant = false;\n const coalesceProvider = /* @__PURE__ */ __name(async (options) => {\n if (!pending) {\n pending = normalizedProvider(options);\n }\n try {\n resolved = await pending;\n hasResult = true;\n isConstant = false;\n } finally {\n pending = void 0;\n }\n return resolved;\n }, \"coalesceProvider\");\n if (isExpired === void 0) {\n return async (options) => {\n if (!hasResult || (options == null ? void 0 : options.forceRefresh)) {\n resolved = await coalesceProvider(options);\n }\n return resolved;\n };\n }\n return async (options) => {\n if (!hasResult || (options == null ? void 0 : options.forceRefresh)) {\n resolved = await coalesceProvider(options);\n }\n if (isConstant) {\n return resolved;\n }\n if (!requiresRefresh(resolved)) {\n isConstant = true;\n return resolved;\n }\n if (isExpired(resolved)) {\n await coalesceProvider(options);\n return resolved;\n }\n return resolved;\n };\n}, \"memoizeIdentityProvider\");\n\n// src/getSmithyContext.ts\n\nvar getSmithyContext3 = /* @__PURE__ */ __name((context) => context[import_types.SMITHY_CONTEXT_KEY] || (context[import_types.SMITHY_CONTEXT_KEY] = {}), \"getSmithyContext\");\n\n// src/normalizeProvider.ts\nvar normalizeProvider = /* @__PURE__ */ __name((input) => {\n if (typeof input === \"function\")\n return input;\n const promisified = Promise.resolve(input);\n return () => promisified;\n}, \"normalizeProvider\");\n\n// src/protocols/requestBuilder.ts\n\nvar import_smithy_client = require(\"@smithy/smithy-client\");\nfunction requestBuilder(input, context) {\n return new RequestBuilder(input, context);\n}\n__name(requestBuilder, \"requestBuilder\");\nvar _RequestBuilder = class _RequestBuilder {\n constructor(input, context) {\n this.input = input;\n this.context = context;\n this.query = {};\n this.method = \"\";\n this.headers = {};\n this.path = \"\";\n this.body = null;\n this.hostname = \"\";\n this.resolvePathStack = [];\n }\n async build() {\n const { hostname, protocol = \"https\", port, path: basePath } = await this.context.endpoint();\n this.path = basePath;\n for (const resolvePath of this.resolvePathStack) {\n resolvePath(this.path);\n }\n return new import_protocol_http.HttpRequest({\n protocol,\n hostname: this.hostname || hostname,\n port,\n method: this.method,\n path: this.path,\n query: this.query,\n body: this.body,\n headers: this.headers\n });\n }\n /**\n * Brevity setter for \"hostname\".\n */\n hn(hostname) {\n this.hostname = hostname;\n return this;\n }\n /**\n * Brevity initial builder for \"basepath\".\n */\n bp(uriLabel) {\n this.resolvePathStack.push((basePath) => {\n this.path = `${(basePath == null ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\"}` + uriLabel;\n });\n return this;\n }\n /**\n * Brevity incremental builder for \"path\".\n */\n p(memberName, labelValueProvider, uriLabel, isGreedyLabel) {\n this.resolvePathStack.push((path) => {\n this.path = (0, import_smithy_client.resolvedPath)(path, this.input, memberName, labelValueProvider, uriLabel, isGreedyLabel);\n });\n return this;\n }\n /**\n * Brevity setter for \"headers\".\n */\n h(headers) {\n this.headers = headers;\n return this;\n }\n /**\n * Brevity setter for \"query\".\n */\n q(query) {\n this.query = query;\n return this;\n }\n /**\n * Brevity setter for \"body\".\n */\n b(body) {\n this.body = body;\n return this;\n }\n /**\n * Brevity setter for \"method\".\n */\n m(method) {\n this.method = method;\n return this;\n }\n};\n__name(_RequestBuilder, \"RequestBuilder\");\nvar RequestBuilder = _RequestBuilder;\n\n// src/pagination/createPaginator.ts\nvar makePagedClientRequest = /* @__PURE__ */ __name(async (CommandCtor, client, input, ...args) => {\n return await client.send(new CommandCtor(input), ...args);\n}, \"makePagedClientRequest\");\nfunction createPaginator(ClientCtor, CommandCtor, inputTokenName, outputTokenName, pageSizeTokenName) {\n return /* @__PURE__ */ __name(async function* paginateOperation(config, input, ...additionalArguments) {\n let token = config.startingToken || void 0;\n let hasNext = true;\n let page;\n while (hasNext) {\n input[inputTokenName] = token;\n if (pageSizeTokenName) {\n input[pageSizeTokenName] = input[pageSizeTokenName] ?? config.pageSize;\n }\n if (config.client instanceof ClientCtor) {\n page = await makePagedClientRequest(CommandCtor, config.client, input, ...additionalArguments);\n } else {\n throw new Error(`Invalid client, expected instance of ${ClientCtor.name}`);\n }\n yield page;\n const prevToken = token;\n token = get(page, outputTokenName);\n hasNext = !!(token && (!config.stopOnSameToken || token !== prevToken));\n }\n return void 0;\n }, \"paginateOperation\");\n}\n__name(createPaginator, \"createPaginator\");\nvar get = /* @__PURE__ */ __name((fromObject, path) => {\n let cursor = fromObject;\n const pathComponents = path.split(\".\");\n for (const step of pathComponents) {\n if (!cursor || typeof cursor !== \"object\") {\n return void 0;\n }\n cursor = cursor[step];\n }\n return cursor;\n}, \"get\");\n// Annotate the CommonJS export names for ESM import in node:\n\n0 && (module.exports = {\n createPaginator,\n httpAuthSchemeMiddleware,\n httpAuthSchemeEndpointRuleSetMiddlewareOptions,\n getHttpAuthSchemeEndpointRuleSetPlugin,\n httpAuthSchemeMiddlewareOptions,\n getHttpAuthSchemePlugin,\n httpSigningMiddleware,\n httpSigningMiddlewareOptions,\n getHttpSigningPlugin,\n DefaultIdentityProviderConfig,\n HttpApiKeyAuthSigner,\n HttpBearerAuthSigner,\n NoAuthSigner,\n createIsIdentityExpiredFunction,\n EXPIRATION_MS,\n isIdentityExpired,\n doesIdentityRequireRefresh,\n memoizeIdentityProvider,\n getSmithyContext,\n normalizeProvider,\n requestBuilder,\n RequestBuilder\n});\n\n",
|
|
144
|
+
"import { HttpRequest } from \"@smithy/protocol-http\";\nconst CONTENT_LENGTH_HEADER = \"content-length\";\nexport function contentLengthMiddleware(bodyLengthChecker) {\n return (next) => async (args) => {\n const request = args.request;\n if (HttpRequest.isInstance(request)) {\n const { body, headers } = request;\n if (body &&\n Object.keys(headers)\n .map((str) => str.toLowerCase())\n .indexOf(CONTENT_LENGTH_HEADER) === -1) {\n try {\n const length = bodyLengthChecker(body);\n request.headers = {\n ...request.headers,\n [CONTENT_LENGTH_HEADER]: String(length),\n };\n }\n catch (error) {\n }\n }\n }\n return next({\n ...args,\n request,\n });\n };\n}\nexport const contentLengthMiddlewareOptions = {\n step: \"build\",\n tags: [\"SET_CONTENT_LENGTH\", \"CONTENT_LENGTH\"],\n name: \"contentLengthMiddleware\",\n override: true,\n};\nexport const getContentLengthPlugin = (options) => ({\n applyToStack: (clientStack) => {\n clientStack.add(contentLengthMiddleware(options.bodyLengthChecker), contentLengthMiddlewareOptions);\n },\n});\n",
|
|
145
|
+
"export const resolveParamsForS3 = async (endpointParams) => {\n const bucket = endpointParams?.Bucket || \"\";\n if (typeof endpointParams.Bucket === \"string\") {\n endpointParams.Bucket = bucket.replace(/#/g, encodeURIComponent(\"#\")).replace(/\\?/g, encodeURIComponent(\"?\"));\n }\n if (isArnBucketName(bucket)) {\n if (endpointParams.ForcePathStyle === true) {\n throw new Error(\"Path-style addressing cannot be used with ARN buckets\");\n }\n }\n else if (!isDnsCompatibleBucketName(bucket) ||\n (bucket.indexOf(\".\") !== -1 && !String(endpointParams.Endpoint).startsWith(\"http:\")) ||\n bucket.toLowerCase() !== bucket ||\n bucket.length < 3) {\n endpointParams.ForcePathStyle = true;\n }\n if (endpointParams.DisableMultiRegionAccessPoints) {\n endpointParams.disableMultiRegionAccessPoints = true;\n endpointParams.DisableMRAP = true;\n }\n return endpointParams;\n};\nconst DOMAIN_PATTERN = /^[a-z0-9][a-z0-9\\.\\-]{1,61}[a-z0-9]$/;\nconst IP_ADDRESS_PATTERN = /(\\d+\\.){3}\\d+/;\nconst DOTS_PATTERN = /\\.\\./;\nexport const DOT_PATTERN = /\\./;\nexport const S3_HOSTNAME_PATTERN = /^(.+\\.)?s3(-fips)?(\\.dualstack)?[.-]([a-z0-9-]+)\\./;\nexport const isDnsCompatibleBucketName = (bucketName) => DOMAIN_PATTERN.test(bucketName) && !IP_ADDRESS_PATTERN.test(bucketName) && !DOTS_PATTERN.test(bucketName);\nexport const isArnBucketName = (bucketName) => {\n const [arn, partition, service, , , bucket] = bucketName.split(\":\");\n const isArn = arn === \"arn\" && bucketName.split(\":\").length >= 6;\n const isValidArn = Boolean(isArn && partition && service && bucket);\n if (isArn && !isValidArn) {\n throw new Error(`Invalid ARN: ${bucketName} was an invalid ARN.`);\n }\n return isValidArn;\n};\n",
|
|
146
|
+
"export * from \"./s3\";\n",
|
|
147
|
+
"export const createConfigValueProvider = (configKey, canonicalEndpointParamKey, config) => {\n const configProvider = async () => {\n const configValue = config[configKey] ?? config[canonicalEndpointParamKey];\n if (typeof configValue === \"function\") {\n return configValue();\n }\n return configValue;\n };\n if (configKey === \"credentialScope\" || canonicalEndpointParamKey === \"CredentialScope\") {\n return async () => {\n const credentials = typeof config.credentials === \"function\" ? await config.credentials() : config.credentials;\n const configValue = credentials?.credentialScope ?? credentials?.CredentialScope;\n return configValue;\n };\n }\n if (configKey === \"accountId\" || canonicalEndpointParamKey === \"AccountId\") {\n return async () => {\n const credentials = typeof config.credentials === \"function\" ? await config.credentials() : config.credentials;\n const configValue = credentials?.accountId ?? credentials?.AccountId;\n return configValue;\n };\n }\n if (configKey === \"endpoint\" || canonicalEndpointParamKey === \"endpoint\") {\n return async () => {\n const endpoint = await configProvider();\n if (endpoint && typeof endpoint === \"object\") {\n if (\"url\" in endpoint) {\n return endpoint.url.href;\n }\n if (\"hostname\" in endpoint) {\n const { protocol, hostname, port, path } = endpoint;\n return `${protocol}//${hostname}${port ? \":\" + port : \"\"}${path}`;\n }\n }\n return endpoint;\n };\n }\n return configProvider;\n};\n",
|
|
148
|
+
"export class ProviderError extends Error {\n constructor(message, options = true) {\n let logger;\n let tryNextLink = true;\n if (typeof options === \"boolean\") {\n logger = undefined;\n tryNextLink = options;\n }\n else if (options != null && typeof options === \"object\") {\n logger = options.logger;\n tryNextLink = options.tryNextLink ?? true;\n }\n super(message);\n this.name = \"ProviderError\";\n this.tryNextLink = tryNextLink;\n Object.setPrototypeOf(this, ProviderError.prototype);\n logger?.debug?.(`@smithy/property-provider ${tryNextLink ? \"->\" : \"(!)\"} ${message}`);\n }\n static from(error, options = true) {\n return Object.assign(new this(error.message, options), error);\n }\n}\n",
|
|
149
|
+
"import { ProviderError } from \"./ProviderError\";\nexport class CredentialsProviderError extends ProviderError {\n constructor(message, options = true) {\n super(message, options);\n this.name = \"CredentialsProviderError\";\n Object.setPrototypeOf(this, CredentialsProviderError.prototype);\n }\n}\n",
|
|
150
|
+
"import { ProviderError } from \"./ProviderError\";\nexport class TokenProviderError extends ProviderError {\n constructor(message, options = true) {\n super(message, options);\n this.name = \"TokenProviderError\";\n Object.setPrototypeOf(this, TokenProviderError.prototype);\n }\n}\n",
|
|
151
|
+
"import { ProviderError } from \"./ProviderError\";\nexport const chain = (...providers) => async () => {\n if (providers.length === 0) {\n throw new ProviderError(\"No providers in chain\");\n }\n let lastProviderError;\n for (const provider of providers) {\n try {\n const credentials = await provider();\n return credentials;\n }\n catch (err) {\n lastProviderError = err;\n if (err?.tryNextLink) {\n continue;\n }\n throw err;\n }\n }\n throw lastProviderError;\n};\n",
|
|
152
|
+
"export const fromStatic = (staticValue) => () => Promise.resolve(staticValue);\n",
|
|
153
|
+
"export const memoize = (provider, isExpired, requiresRefresh) => {\n let resolved;\n let pending;\n let hasResult;\n let isConstant = false;\n const coalesceProvider = async () => {\n if (!pending) {\n pending = provider();\n }\n try {\n resolved = await pending;\n hasResult = true;\n isConstant = false;\n }\n finally {\n pending = undefined;\n }\n return resolved;\n };\n if (isExpired === undefined) {\n return async (options) => {\n if (!hasResult || options?.forceRefresh) {\n resolved = await coalesceProvider();\n }\n return resolved;\n };\n }\n return async (options) => {\n if (!hasResult || options?.forceRefresh) {\n resolved = await coalesceProvider();\n }\n if (isConstant) {\n return resolved;\n }\n if (requiresRefresh && !requiresRefresh(resolved)) {\n isConstant = true;\n return resolved;\n }\n if (isExpired(resolved)) {\n await coalesceProvider();\n return resolved;\n }\n return resolved;\n };\n};\n",
|
|
154
|
+
"export * from \"./CredentialsProviderError\";\nexport * from \"./ProviderError\";\nexport * from \"./TokenProviderError\";\nexport * from \"./chain\";\nexport * from \"./fromStatic\";\nexport * from \"./memoize\";\n",
|
|
155
|
+
"export function getSelectorName(functionString) {\n try {\n const constants = new Set(Array.from(functionString.match(/([A-Z_]){3,}/g) ?? []));\n constants.delete(\"CONFIG\");\n constants.delete(\"CONFIG_PREFIX_SEPARATOR\");\n constants.delete(\"ENV\");\n return [...constants].join(\", \");\n }\n catch (e) {\n return functionString;\n }\n}\n",
|
|
156
|
+
"import { CredentialsProviderError } from \"@smithy/property-provider\";\nimport { getSelectorName } from \"./getSelectorName\";\nexport const fromEnv = (envVarSelector, logger) => async () => {\n try {\n const config = envVarSelector(process.env);\n if (config === undefined) {\n throw new Error();\n }\n return config;\n }\n catch (e) {\n throw new CredentialsProviderError(e.message || `Not found in ENV: ${getSelectorName(envVarSelector.toString())}`, { logger });\n }\n};\n",
|
|
157
|
+
"import { homedir } from \"os\";\nimport { sep } from \"path\";\nconst homeDirCache = {};\nconst getHomeDirCacheKey = () => {\n if (process && process.geteuid) {\n return `${process.geteuid()}`;\n }\n return \"DEFAULT\";\n};\nexport const getHomeDir = () => {\n const { HOME, USERPROFILE, HOMEPATH, HOMEDRIVE = `C:${sep}` } = process.env;\n if (HOME)\n return HOME;\n if (USERPROFILE)\n return USERPROFILE;\n if (HOMEPATH)\n return `${HOMEDRIVE}${HOMEPATH}`;\n const homeDirCacheKey = getHomeDirCacheKey();\n if (!homeDirCache[homeDirCacheKey])\n homeDirCache[homeDirCacheKey] = homedir();\n return homeDirCache[homeDirCacheKey];\n};\n",
|
|
158
|
+
"export const ENV_PROFILE = \"AWS_PROFILE\";\nexport const DEFAULT_PROFILE = \"default\";\nexport const getProfileName = (init) => init.profile || process.env[ENV_PROFILE] || DEFAULT_PROFILE;\n",
|
|
159
|
+
"import { createHash } from \"crypto\";\nimport { join } from \"path\";\nimport { getHomeDir } from \"./getHomeDir\";\nexport const getSSOTokenFilepath = (id) => {\n const hasher = createHash(\"sha1\");\n const cacheName = hasher.update(id).digest(\"hex\");\n return join(getHomeDir(), \".aws\", \"sso\", \"cache\", `${cacheName}.json`);\n};\n",
|
|
160
|
+
"import { promises as fsPromises } from \"fs\";\nimport { getSSOTokenFilepath } from \"./getSSOTokenFilepath\";\nconst { readFile } = fsPromises;\nexport const getSSOTokenFromFile = async (id) => {\n const ssoTokenFilepath = getSSOTokenFilepath(id);\n const ssoTokenText = await readFile(ssoTokenFilepath, \"utf8\");\n return JSON.parse(ssoTokenText);\n};\n",
|
|
161
|
+
"import { IniSectionType } from \"@smithy/types\";\nimport { CONFIG_PREFIX_SEPARATOR } from \"./loadSharedConfigFiles\";\nexport const getConfigData = (data) => Object.entries(data)\n .filter(([key]) => {\n const indexOfSeparator = key.indexOf(CONFIG_PREFIX_SEPARATOR);\n if (indexOfSeparator === -1) {\n return false;\n }\n return Object.values(IniSectionType).includes(key.substring(0, indexOfSeparator));\n})\n .reduce((acc, [key, value]) => {\n const indexOfSeparator = key.indexOf(CONFIG_PREFIX_SEPARATOR);\n const updatedKey = key.substring(0, indexOfSeparator) === IniSectionType.PROFILE ? key.substring(indexOfSeparator + 1) : key;\n acc[updatedKey] = value;\n return acc;\n}, {\n ...(data.default && { default: data.default }),\n});\n",
|
|
162
|
+
"import { join } from \"path\";\nimport { getHomeDir } from \"./getHomeDir\";\nexport const ENV_CONFIG_PATH = \"AWS_CONFIG_FILE\";\nexport const getConfigFilepath = () => process.env[ENV_CONFIG_PATH] || join(getHomeDir(), \".aws\", \"config\");\n",
|
|
163
|
+
"import { join } from \"path\";\nimport { getHomeDir } from \"./getHomeDir\";\nexport const ENV_CREDENTIALS_PATH = \"AWS_SHARED_CREDENTIALS_FILE\";\nexport const getCredentialsFilepath = () => process.env[ENV_CREDENTIALS_PATH] || join(getHomeDir(), \".aws\", \"credentials\");\n",
|
|
164
|
+
"import { IniSectionType } from \"@smithy/types\";\nimport { CONFIG_PREFIX_SEPARATOR } from \"./loadSharedConfigFiles\";\nconst prefixKeyRegex = /^([\\w-]+)\\s([\"'])?([\\w-@\\+\\.%:/]+)\\2$/;\nconst profileNameBlockList = [\"__proto__\", \"profile __proto__\"];\nexport const parseIni = (iniData) => {\n const map = {};\n let currentSection;\n let currentSubSection;\n for (const iniLine of iniData.split(/\\r?\\n/)) {\n const trimmedLine = iniLine.split(/(^|\\s)[;#]/)[0].trim();\n const isSection = trimmedLine[0] === \"[\" && trimmedLine[trimmedLine.length - 1] === \"]\";\n if (isSection) {\n currentSection = undefined;\n currentSubSection = undefined;\n const sectionName = trimmedLine.substring(1, trimmedLine.length - 1);\n const matches = prefixKeyRegex.exec(sectionName);\n if (matches) {\n const [, prefix, , name] = matches;\n if (Object.values(IniSectionType).includes(prefix)) {\n currentSection = [prefix, name].join(CONFIG_PREFIX_SEPARATOR);\n }\n }\n else {\n currentSection = sectionName;\n }\n if (profileNameBlockList.includes(sectionName)) {\n throw new Error(`Found invalid profile name \"${sectionName}\"`);\n }\n }\n else if (currentSection) {\n const indexOfEqualsSign = trimmedLine.indexOf(\"=\");\n if (![0, -1].includes(indexOfEqualsSign)) {\n const [name, value] = [\n trimmedLine.substring(0, indexOfEqualsSign).trim(),\n trimmedLine.substring(indexOfEqualsSign + 1).trim(),\n ];\n if (value === \"\") {\n currentSubSection = name;\n }\n else {\n if (currentSubSection && iniLine.trimStart() === iniLine) {\n currentSubSection = undefined;\n }\n map[currentSection] = map[currentSection] || {};\n const key = currentSubSection ? [currentSubSection, name].join(CONFIG_PREFIX_SEPARATOR) : name;\n map[currentSection][key] = value;\n }\n }\n }\n }\n return map;\n};\n",
|
|
165
|
+
"import { promises as fsPromises } from \"fs\";\nconst { readFile } = fsPromises;\nconst filePromisesHash = {};\nexport const slurpFile = (path, options) => {\n if (!filePromisesHash[path] || options?.ignoreCache) {\n filePromisesHash[path] = readFile(path, \"utf8\");\n }\n return filePromisesHash[path];\n};\n",
|
|
166
|
+
"import { join } from \"path\";\nimport { getConfigData } from \"./getConfigData\";\nimport { getConfigFilepath } from \"./getConfigFilepath\";\nimport { getCredentialsFilepath } from \"./getCredentialsFilepath\";\nimport { getHomeDir } from \"./getHomeDir\";\nimport { parseIni } from \"./parseIni\";\nimport { slurpFile } from \"./slurpFile\";\nconst swallowError = () => ({});\nexport const CONFIG_PREFIX_SEPARATOR = \".\";\nexport const loadSharedConfigFiles = async (init = {}) => {\n const { filepath = getCredentialsFilepath(), configFilepath = getConfigFilepath() } = init;\n const homeDir = getHomeDir();\n const relativeHomeDirPrefix = \"~/\";\n let resolvedFilepath = filepath;\n if (filepath.startsWith(relativeHomeDirPrefix)) {\n resolvedFilepath = join(homeDir, filepath.slice(2));\n }\n let resolvedConfigFilepath = configFilepath;\n if (configFilepath.startsWith(relativeHomeDirPrefix)) {\n resolvedConfigFilepath = join(homeDir, configFilepath.slice(2));\n }\n const parsedFiles = await Promise.all([\n slurpFile(resolvedConfigFilepath, {\n ignoreCache: init.ignoreCache,\n })\n .then(parseIni)\n .then(getConfigData)\n .catch(swallowError),\n slurpFile(resolvedFilepath, {\n ignoreCache: init.ignoreCache,\n })\n .then(parseIni)\n .catch(swallowError),\n ]);\n return {\n configFile: parsedFiles[0],\n credentialsFile: parsedFiles[1],\n };\n};\n",
|
|
167
|
+
"import { IniSectionType } from \"@smithy/types\";\nimport { CONFIG_PREFIX_SEPARATOR } from \"./loadSharedConfigFiles\";\nexport const getSsoSessionData = (data) => Object.entries(data)\n .filter(([key]) => key.startsWith(IniSectionType.SSO_SESSION + CONFIG_PREFIX_SEPARATOR))\n .reduce((acc, [key, value]) => ({ ...acc, [key.substring(key.indexOf(CONFIG_PREFIX_SEPARATOR) + 1)]: value }), {});\n",
|
|
168
|
+
"import { getConfigFilepath } from \"./getConfigFilepath\";\nimport { getSsoSessionData } from \"./getSsoSessionData\";\nimport { parseIni } from \"./parseIni\";\nimport { slurpFile } from \"./slurpFile\";\nconst swallowError = () => ({});\nexport const loadSsoSessionData = async (init = {}) => slurpFile(init.configFilepath ?? getConfigFilepath())\n .then(parseIni)\n .then(getSsoSessionData)\n .catch(swallowError);\n",
|
|
169
|
+
"export const mergeConfigFiles = (...files) => {\n const merged = {};\n for (const file of files) {\n for (const [key, values] of Object.entries(file)) {\n if (merged[key] !== undefined) {\n Object.assign(merged[key], values);\n }\n else {\n merged[key] = values;\n }\n }\n }\n return merged;\n};\n",
|
|
170
|
+
"import { loadSharedConfigFiles } from \"./loadSharedConfigFiles\";\nimport { mergeConfigFiles } from \"./mergeConfigFiles\";\nexport const parseKnownFiles = async (init) => {\n const parsedFiles = await loadSharedConfigFiles(init);\n return mergeConfigFiles(parsedFiles.configFile, parsedFiles.credentialsFile);\n};\n",
|
|
171
|
+
"export * from \"./getHomeDir\";\nexport * from \"./getProfileName\";\nexport * from \"./getSSOTokenFilepath\";\nexport * from \"./getSSOTokenFromFile\";\nexport * from \"./loadSharedConfigFiles\";\nexport * from \"./loadSsoSessionData\";\nexport * from \"./parseKnownFiles\";\nexport * from \"./types\";\n",
|
|
172
|
+
"import { CredentialsProviderError } from \"@smithy/property-provider\";\nimport { getProfileName, loadSharedConfigFiles } from \"@smithy/shared-ini-file-loader\";\nimport { getSelectorName } from \"./getSelectorName\";\nexport const fromSharedConfigFiles = (configSelector, { preferredFile = \"config\", ...init } = {}) => async () => {\n const profile = getProfileName(init);\n const { configFile, credentialsFile } = await loadSharedConfigFiles(init);\n const profileFromCredentials = credentialsFile[profile] || {};\n const profileFromConfig = configFile[profile] || {};\n const mergedProfile = preferredFile === \"config\"\n ? { ...profileFromCredentials, ...profileFromConfig }\n : { ...profileFromConfig, ...profileFromCredentials };\n try {\n const cfgFile = preferredFile === \"config\" ? configFile : credentialsFile;\n const configValue = configSelector(mergedProfile, cfgFile);\n if (configValue === undefined) {\n throw new Error();\n }\n return configValue;\n }\n catch (e) {\n throw new CredentialsProviderError(e.message || `Not found in config files w/ profile [${profile}]: ${getSelectorName(configSelector.toString())}`, { logger: init.logger });\n }\n};\n",
|
|
173
|
+
"import { fromStatic as convertToProvider } from \"@smithy/property-provider\";\nconst isFunction = (func) => typeof func === \"function\";\nexport const fromStatic = (defaultValue) => isFunction(defaultValue) ? async () => await defaultValue() : convertToProvider(defaultValue);\n",
|
|
174
|
+
"import { chain, memoize } from \"@smithy/property-provider\";\nimport { fromEnv } from \"./fromEnv\";\nimport { fromSharedConfigFiles } from \"./fromSharedConfigFiles\";\nimport { fromStatic } from \"./fromStatic\";\nexport const loadConfig = ({ environmentVariableSelector, configFileSelector, default: defaultValue }, configuration = {}) => memoize(chain(fromEnv(environmentVariableSelector), fromSharedConfigFiles(configFileSelector, configuration), fromStatic(defaultValue)));\n",
|
|
175
|
+
"export * from \"./configLoader\";\n",
|
|
176
|
+
"import { CONFIG_PREFIX_SEPARATOR } from \"@smithy/shared-ini-file-loader\";\nconst ENV_ENDPOINT_URL = \"AWS_ENDPOINT_URL\";\nconst CONFIG_ENDPOINT_URL = \"endpoint_url\";\nexport const getEndpointUrlConfig = (serviceId) => ({\n environmentVariableSelector: (env) => {\n const serviceSuffixParts = serviceId.split(\" \").map((w) => w.toUpperCase());\n const serviceEndpointUrl = env[[ENV_ENDPOINT_URL, ...serviceSuffixParts].join(\"_\")];\n if (serviceEndpointUrl)\n return serviceEndpointUrl;\n const endpointUrl = env[ENV_ENDPOINT_URL];\n if (endpointUrl)\n return endpointUrl;\n return undefined;\n },\n configFileSelector: (profile, config) => {\n if (config && profile.services) {\n const servicesSection = config[[\"services\", profile.services].join(CONFIG_PREFIX_SEPARATOR)];\n if (servicesSection) {\n const servicePrefixParts = serviceId.split(\" \").map((w) => w.toLowerCase());\n const endpointUrl = servicesSection[[servicePrefixParts.join(\"_\"), CONFIG_ENDPOINT_URL].join(CONFIG_PREFIX_SEPARATOR)];\n if (endpointUrl)\n return endpointUrl;\n }\n }\n const endpointUrl = profile[CONFIG_ENDPOINT_URL];\n if (endpointUrl)\n return endpointUrl;\n return undefined;\n },\n default: undefined,\n});\n",
|
|
177
|
+
"import { loadConfig } from \"@smithy/node-config-provider\";\nimport { getEndpointUrlConfig } from \"./getEndpointUrlConfig\";\nexport const getEndpointFromConfig = async (serviceId) => loadConfig(getEndpointUrlConfig(serviceId))();\n",
|
|
178
|
+
"export function parseQueryString(querystring) {\n const query = {};\n querystring = querystring.replace(/^\\?/, \"\");\n if (querystring) {\n for (const pair of querystring.split(\"&\")) {\n let [key, value = null] = pair.split(\"=\");\n key = decodeURIComponent(key);\n if (value) {\n value = decodeURIComponent(value);\n }\n if (!(key in query)) {\n query[key] = value;\n }\n else if (Array.isArray(query[key])) {\n query[key].push(value);\n }\n else {\n query[key] = [query[key], value];\n }\n }\n }\n return query;\n}\n",
|
|
179
|
+
"import { parseQueryString } from \"@smithy/querystring-parser\";\nexport const parseUrl = (url) => {\n if (typeof url === \"string\") {\n return parseUrl(new URL(url));\n }\n const { hostname, pathname, port, protocol, search } = url;\n let query;\n if (search) {\n query = parseQueryString(search);\n }\n return {\n hostname,\n port: port ? parseInt(port) : undefined,\n protocol,\n path: pathname,\n query,\n };\n};\n",
|
|
180
|
+
"import { parseUrl } from \"@smithy/url-parser\";\nexport const toEndpointV1 = (endpoint) => {\n if (typeof endpoint === \"object\") {\n if (\"url\" in endpoint) {\n return parseUrl(endpoint.url);\n }\n return endpoint;\n }\n return parseUrl(endpoint);\n};\n",
|
|
181
|
+
"import { resolveParamsForS3 } from \"../service-customizations\";\nimport { createConfigValueProvider } from \"./createConfigValueProvider\";\nimport { getEndpointFromConfig } from \"./getEndpointFromConfig\";\nimport { toEndpointV1 } from \"./toEndpointV1\";\nexport const getEndpointFromInstructions = async (commandInput, instructionsSupplier, clientConfig, context) => {\n if (!clientConfig.endpoint) {\n const endpointFromConfig = await getEndpointFromConfig(clientConfig.serviceId || \"\");\n if (endpointFromConfig) {\n clientConfig.endpoint = () => Promise.resolve(toEndpointV1(endpointFromConfig));\n }\n }\n const endpointParams = await resolveParams(commandInput, instructionsSupplier, clientConfig);\n if (typeof clientConfig.endpointProvider !== \"function\") {\n throw new Error(\"config.endpointProvider is not set.\");\n }\n const endpoint = clientConfig.endpointProvider(endpointParams, context);\n return endpoint;\n};\nexport const resolveParams = async (commandInput, instructionsSupplier, clientConfig) => {\n const endpointParams = {};\n const instructions = instructionsSupplier?.getEndpointParameterInstructions?.() || {};\n for (const [name, instruction] of Object.entries(instructions)) {\n switch (instruction.type) {\n case \"staticContextParams\":\n endpointParams[name] = instruction.value;\n break;\n case \"contextParams\":\n endpointParams[name] = commandInput[instruction.name];\n break;\n case \"clientContextParams\":\n case \"builtInParams\":\n endpointParams[name] = await createConfigValueProvider(instruction.name, name, clientConfig)();\n break;\n default:\n throw new Error(\"Unrecognized endpoint parameter instruction: \" + JSON.stringify(instruction));\n }\n }\n if (Object.keys(instructions).length === 0) {\n Object.assign(endpointParams, clientConfig);\n }\n if (String(clientConfig.serviceId).toLowerCase() === \"s3\") {\n await resolveParamsForS3(endpointParams);\n }\n return endpointParams;\n};\n",
|
|
182
|
+
"export * from \"./getEndpointFromInstructions\";\nexport * from \"./toEndpointV1\";\n",
|
|
183
|
+
"import { getSmithyContext } from \"@smithy/util-middleware\";\nimport { getEndpointFromInstructions } from \"./adaptors/getEndpointFromInstructions\";\nexport const endpointMiddleware = ({ config, instructions, }) => {\n return (next, context) => async (args) => {\n const endpoint = await getEndpointFromInstructions(args.input, {\n getEndpointParameterInstructions() {\n return instructions;\n },\n }, { ...config }, context);\n context.endpointV2 = endpoint;\n context.authSchemes = endpoint.properties?.authSchemes;\n const authScheme = context.authSchemes?.[0];\n if (authScheme) {\n context[\"signing_region\"] = authScheme.signingRegion;\n context[\"signing_service\"] = authScheme.signingName;\n const smithyContext = getSmithyContext(context);\n const httpAuthOption = smithyContext?.selectedHttpAuthScheme?.httpAuthOption;\n if (httpAuthOption) {\n httpAuthOption.signingProperties = Object.assign(httpAuthOption.signingProperties || {}, {\n signing_region: authScheme.signingRegion,\n signingRegion: authScheme.signingRegion,\n signing_service: authScheme.signingName,\n signingName: authScheme.signingName,\n signingRegionSet: authScheme.signingRegionSet,\n }, authScheme.properties);\n }\n }\n return next({\n ...args,\n });\n };\n};\n",
|
|
184
|
+
"export const deserializerMiddleware = (options, deserializer) => (next) => async (args) => {\n const { response } = await next(args);\n try {\n const parsed = await deserializer(response, options);\n return {\n response,\n output: parsed,\n };\n }\n catch (error) {\n Object.defineProperty(error, \"$response\", {\n value: response,\n });\n if (!(\"$metadata\" in error)) {\n const hint = `Deserialization error: to see the raw response, inspect the hidden field {error}.$response on this object.`;\n error.message += \"\\n \" + hint;\n if (typeof error.$responseBodyText !== \"undefined\") {\n if (error.$response) {\n error.$response.body = error.$responseBodyText;\n }\n }\n }\n throw error;\n }\n};\n",
|
|
185
|
+
"export const serializerMiddleware = (options, serializer) => (next, context) => async (args) => {\n const endpoint = context.endpointV2?.url && options.urlParser\n ? async () => options.urlParser(context.endpointV2.url)\n : options.endpoint;\n if (!endpoint) {\n throw new Error(\"No valid endpoint provider available.\");\n }\n const request = await serializer(args.input, { ...options, endpoint });\n return next({\n ...args,\n request,\n });\n};\n",
|
|
186
|
+
"import { deserializerMiddleware } from \"./deserializerMiddleware\";\nimport { serializerMiddleware } from \"./serializerMiddleware\";\nexport const deserializerMiddlewareOption = {\n name: \"deserializerMiddleware\",\n step: \"deserialize\",\n tags: [\"DESERIALIZER\"],\n override: true,\n};\nexport const serializerMiddlewareOption = {\n name: \"serializerMiddleware\",\n step: \"serialize\",\n tags: [\"SERIALIZER\"],\n override: true,\n};\nexport function getSerdePlugin(config, serializer, deserializer) {\n return {\n applyToStack: (commandStack) => {\n commandStack.add(deserializerMiddleware(config, deserializer), deserializerMiddlewareOption);\n commandStack.add(serializerMiddleware(config, serializer), serializerMiddlewareOption);\n },\n };\n}\n",
|
|
187
|
+
"export * from \"./deserializerMiddleware\";\nexport * from \"./serdePlugin\";\nexport * from \"./serializerMiddleware\";\n",
|
|
188
|
+
"import { serializerMiddlewareOption } from \"@smithy/middleware-serde\";\nimport { endpointMiddleware } from \"./endpointMiddleware\";\nexport const endpointMiddlewareOptions = {\n step: \"serialize\",\n tags: [\"ENDPOINT_PARAMETERS\", \"ENDPOINT_V2\", \"ENDPOINT\"],\n name: \"endpointV2Middleware\",\n override: true,\n relation: \"before\",\n toMiddleware: serializerMiddlewareOption.name,\n};\nexport const getEndpointPlugin = (config, instructions) => ({\n applyToStack: (clientStack) => {\n clientStack.addRelativeTo(endpointMiddleware({\n config,\n instructions,\n }), endpointMiddlewareOptions);\n },\n});\n",
|
|
189
|
+
"import { normalizeProvider } from \"@smithy/util-middleware\";\nimport { toEndpointV1 } from \"./adaptors/toEndpointV1\";\nexport const resolveEndpointConfig = (input) => {\n const tls = input.tls ?? true;\n const { endpoint } = input;\n const customEndpointProvider = endpoint != null ? async () => toEndpointV1(await normalizeProvider(endpoint)()) : undefined;\n const isCustomEndpoint = !!endpoint;\n return {\n ...input,\n endpoint: customEndpointProvider,\n tls,\n isCustomEndpoint,\n useDualstackEndpoint: normalizeProvider(input.useDualstackEndpoint ?? false),\n useFipsEndpoint: normalizeProvider(input.useFipsEndpoint ?? false),\n };\n};\n",
|
|
190
|
+
"export * from \"./adaptors\";\nexport * from \"./endpointMiddleware\";\nexport * from \"./getEndpointPlugin\";\nexport * from \"./resolveEndpointConfig\";\nexport * from \"./types\";\n",
|
|
191
|
+
"export var RETRY_MODES;\n(function (RETRY_MODES) {\n RETRY_MODES[\"STANDARD\"] = \"standard\";\n RETRY_MODES[\"ADAPTIVE\"] = \"adaptive\";\n})(RETRY_MODES || (RETRY_MODES = {}));\nexport const DEFAULT_MAX_ATTEMPTS = 3;\nexport const DEFAULT_RETRY_MODE = RETRY_MODES.STANDARD;\n",
|
|
192
|
+
"export const CLOCK_SKEW_ERROR_CODES = [\n \"AuthFailure\",\n \"InvalidSignatureException\",\n \"RequestExpired\",\n \"RequestInTheFuture\",\n \"RequestTimeTooSkewed\",\n \"SignatureDoesNotMatch\",\n];\nexport const THROTTLING_ERROR_CODES = [\n \"BandwidthLimitExceeded\",\n \"EC2ThrottledException\",\n \"LimitExceededException\",\n \"PriorRequestNotComplete\",\n \"ProvisionedThroughputExceededException\",\n \"RequestLimitExceeded\",\n \"RequestThrottled\",\n \"RequestThrottledException\",\n \"SlowDown\",\n \"ThrottledException\",\n \"Throttling\",\n \"ThrottlingException\",\n \"TooManyRequestsException\",\n \"TransactionInProgressException\",\n];\nexport const TRANSIENT_ERROR_CODES = [\"TimeoutError\", \"RequestTimeout\", \"RequestTimeoutException\"];\nexport const TRANSIENT_ERROR_STATUS_CODES = [500, 502, 503, 504];\nexport const NODEJS_TIMEOUT_ERROR_CODES = [\"ECONNRESET\", \"ECONNREFUSED\", \"EPIPE\", \"ETIMEDOUT\"];\n",
|
|
193
|
+
"import { CLOCK_SKEW_ERROR_CODES, NODEJS_TIMEOUT_ERROR_CODES, THROTTLING_ERROR_CODES, TRANSIENT_ERROR_CODES, TRANSIENT_ERROR_STATUS_CODES, } from \"./constants\";\nexport const isRetryableByTrait = (error) => error.$retryable !== undefined;\nexport const isClockSkewError = (error) => CLOCK_SKEW_ERROR_CODES.includes(error.name);\nexport const isClockSkewCorrectedError = (error) => error.$metadata?.clockSkewCorrected;\nexport const isThrottlingError = (error) => error.$metadata?.httpStatusCode === 429 ||\n THROTTLING_ERROR_CODES.includes(error.name) ||\n error.$retryable?.throttling == true;\nexport const isTransientError = (error) => isClockSkewCorrectedError(error) ||\n TRANSIENT_ERROR_CODES.includes(error.name) ||\n NODEJS_TIMEOUT_ERROR_CODES.includes(error?.code || \"\") ||\n TRANSIENT_ERROR_STATUS_CODES.includes(error.$metadata?.httpStatusCode || 0);\nexport const isServerError = (error) => {\n if (error.$metadata?.httpStatusCode !== undefined) {\n const statusCode = error.$metadata.httpStatusCode;\n if (500 <= statusCode && statusCode <= 599 && !isTransientError(error)) {\n return true;\n }\n return false;\n }\n return false;\n};\n",
|
|
194
|
+
"import { isThrottlingError } from \"@smithy/service-error-classification\";\nexport class DefaultRateLimiter {\n constructor(options) {\n this.currentCapacity = 0;\n this.enabled = false;\n this.lastMaxRate = 0;\n this.measuredTxRate = 0;\n this.requestCount = 0;\n this.lastTimestamp = 0;\n this.timeWindow = 0;\n this.beta = options?.beta ?? 0.7;\n this.minCapacity = options?.minCapacity ?? 1;\n this.minFillRate = options?.minFillRate ?? 0.5;\n this.scaleConstant = options?.scaleConstant ?? 0.4;\n this.smooth = options?.smooth ?? 0.8;\n const currentTimeInSeconds = this.getCurrentTimeInSeconds();\n this.lastThrottleTime = currentTimeInSeconds;\n this.lastTxRateBucket = Math.floor(this.getCurrentTimeInSeconds());\n this.fillRate = this.minFillRate;\n this.maxCapacity = this.minCapacity;\n }\n getCurrentTimeInSeconds() {\n return Date.now() / 1000;\n }\n async getSendToken() {\n return this.acquireTokenBucket(1);\n }\n async acquireTokenBucket(amount) {\n if (!this.enabled) {\n return;\n }\n this.refillTokenBucket();\n if (amount > this.currentCapacity) {\n const delay = ((amount - this.currentCapacity) / this.fillRate) * 1000;\n await new Promise((resolve) => setTimeout(resolve, delay));\n }\n this.currentCapacity = this.currentCapacity - amount;\n }\n refillTokenBucket() {\n const timestamp = this.getCurrentTimeInSeconds();\n if (!this.lastTimestamp) {\n this.lastTimestamp = timestamp;\n return;\n }\n const fillAmount = (timestamp - this.lastTimestamp) * this.fillRate;\n this.currentCapacity = Math.min(this.maxCapacity, this.currentCapacity + fillAmount);\n this.lastTimestamp = timestamp;\n }\n updateClientSendingRate(response) {\n let calculatedRate;\n this.updateMeasuredRate();\n if (isThrottlingError(response)) {\n const rateToUse = !this.enabled ? this.measuredTxRate : Math.min(this.measuredTxRate, this.fillRate);\n this.lastMaxRate = rateToUse;\n this.calculateTimeWindow();\n this.lastThrottleTime = this.getCurrentTimeInSeconds();\n calculatedRate = this.cubicThrottle(rateToUse);\n this.enableTokenBucket();\n }\n else {\n this.calculateTimeWindow();\n calculatedRate = this.cubicSuccess(this.getCurrentTimeInSeconds());\n }\n const newRate = Math.min(calculatedRate, 2 * this.measuredTxRate);\n this.updateTokenBucketRate(newRate);\n }\n calculateTimeWindow() {\n this.timeWindow = this.getPrecise(Math.pow((this.lastMaxRate * (1 - this.beta)) / this.scaleConstant, 1 / 3));\n }\n cubicThrottle(rateToUse) {\n return this.getPrecise(rateToUse * this.beta);\n }\n cubicSuccess(timestamp) {\n return this.getPrecise(this.scaleConstant * Math.pow(timestamp - this.lastThrottleTime - this.timeWindow, 3) + this.lastMaxRate);\n }\n enableTokenBucket() {\n this.enabled = true;\n }\n updateTokenBucketRate(newRate) {\n this.refillTokenBucket();\n this.fillRate = Math.max(newRate, this.minFillRate);\n this.maxCapacity = Math.max(newRate, this.minCapacity);\n this.currentCapacity = Math.min(this.currentCapacity, this.maxCapacity);\n }\n updateMeasuredRate() {\n const t = this.getCurrentTimeInSeconds();\n const timeBucket = Math.floor(t * 2) / 2;\n this.requestCount++;\n if (timeBucket > this.lastTxRateBucket) {\n const currentRate = this.requestCount / (timeBucket - this.lastTxRateBucket);\n this.measuredTxRate = this.getPrecise(currentRate * this.smooth + this.measuredTxRate * (1 - this.smooth));\n this.requestCount = 0;\n this.lastTxRateBucket = timeBucket;\n }\n }\n getPrecise(num) {\n return parseFloat(num.toFixed(8));\n }\n}\n",
|
|
195
|
+
"export const DEFAULT_RETRY_DELAY_BASE = 100;\nexport const MAXIMUM_RETRY_DELAY = 20 * 1000;\nexport const THROTTLING_RETRY_DELAY_BASE = 500;\nexport const INITIAL_RETRY_TOKENS = 500;\nexport const RETRY_COST = 5;\nexport const TIMEOUT_RETRY_COST = 10;\nexport const NO_RETRY_INCREMENT = 1;\nexport const INVOCATION_ID_HEADER = \"amz-sdk-invocation-id\";\nexport const REQUEST_HEADER = \"amz-sdk-request\";\n",
|
|
196
|
+
"import { DEFAULT_RETRY_DELAY_BASE, MAXIMUM_RETRY_DELAY } from \"./constants\";\nexport const getDefaultRetryBackoffStrategy = () => {\n let delayBase = DEFAULT_RETRY_DELAY_BASE;\n const computeNextBackoffDelay = (attempts) => {\n return Math.floor(Math.min(MAXIMUM_RETRY_DELAY, Math.random() * 2 ** attempts * delayBase));\n };\n const setDelayBase = (delay) => {\n delayBase = delay;\n };\n return {\n computeNextBackoffDelay,\n setDelayBase,\n };\n};\n",
|
|
197
|
+
"import { MAXIMUM_RETRY_DELAY } from \"./constants\";\nexport const createDefaultRetryToken = ({ retryDelay, retryCount, retryCost, }) => {\n const getRetryCount = () => retryCount;\n const getRetryDelay = () => Math.min(MAXIMUM_RETRY_DELAY, retryDelay);\n const getRetryCost = () => retryCost;\n return {\n getRetryCount,\n getRetryDelay,\n getRetryCost,\n };\n};\n",
|
|
198
|
+
"import { DEFAULT_MAX_ATTEMPTS, RETRY_MODES } from \"./config\";\nimport { DEFAULT_RETRY_DELAY_BASE, INITIAL_RETRY_TOKENS, NO_RETRY_INCREMENT, RETRY_COST, THROTTLING_RETRY_DELAY_BASE, TIMEOUT_RETRY_COST, } from \"./constants\";\nimport { getDefaultRetryBackoffStrategy } from \"./defaultRetryBackoffStrategy\";\nimport { createDefaultRetryToken } from \"./defaultRetryToken\";\nexport class StandardRetryStrategy {\n constructor(maxAttempts) {\n this.maxAttempts = maxAttempts;\n this.mode = RETRY_MODES.STANDARD;\n this.capacity = INITIAL_RETRY_TOKENS;\n this.retryBackoffStrategy = getDefaultRetryBackoffStrategy();\n this.maxAttemptsProvider = typeof maxAttempts === \"function\" ? maxAttempts : async () => maxAttempts;\n }\n async acquireInitialRetryToken(retryTokenScope) {\n return createDefaultRetryToken({\n retryDelay: DEFAULT_RETRY_DELAY_BASE,\n retryCount: 0,\n });\n }\n async refreshRetryTokenForRetry(token, errorInfo) {\n const maxAttempts = await this.getMaxAttempts();\n if (this.shouldRetry(token, errorInfo, maxAttempts)) {\n const errorType = errorInfo.errorType;\n this.retryBackoffStrategy.setDelayBase(errorType === \"THROTTLING\" ? THROTTLING_RETRY_DELAY_BASE : DEFAULT_RETRY_DELAY_BASE);\n const delayFromErrorType = this.retryBackoffStrategy.computeNextBackoffDelay(token.getRetryCount());\n const retryDelay = errorInfo.retryAfterHint\n ? Math.max(errorInfo.retryAfterHint.getTime() - Date.now() || 0, delayFromErrorType)\n : delayFromErrorType;\n const capacityCost = this.getCapacityCost(errorType);\n this.capacity -= capacityCost;\n return createDefaultRetryToken({\n retryDelay,\n retryCount: token.getRetryCount() + 1,\n retryCost: capacityCost,\n });\n }\n throw new Error(\"No retry token available\");\n }\n recordSuccess(token) {\n this.capacity = Math.max(INITIAL_RETRY_TOKENS, this.capacity + (token.getRetryCost() ?? NO_RETRY_INCREMENT));\n }\n getCapacity() {\n return this.capacity;\n }\n async getMaxAttempts() {\n try {\n return await this.maxAttemptsProvider();\n }\n catch (error) {\n console.warn(`Max attempts provider could not resolve. Using default of ${DEFAULT_MAX_ATTEMPTS}`);\n return DEFAULT_MAX_ATTEMPTS;\n }\n }\n shouldRetry(tokenToRenew, errorInfo, maxAttempts) {\n const attempts = tokenToRenew.getRetryCount() + 1;\n return (attempts < maxAttempts &&\n this.capacity >= this.getCapacityCost(errorInfo.errorType) &&\n this.isRetryableError(errorInfo.errorType));\n }\n getCapacityCost(errorType) {\n return errorType === \"TRANSIENT\" ? TIMEOUT_RETRY_COST : RETRY_COST;\n }\n isRetryableError(errorType) {\n return errorType === \"THROTTLING\" || errorType === \"TRANSIENT\";\n }\n}\n",
|
|
199
|
+
"import { RETRY_MODES } from \"./config\";\nimport { DefaultRateLimiter } from \"./DefaultRateLimiter\";\nimport { StandardRetryStrategy } from \"./StandardRetryStrategy\";\nexport class AdaptiveRetryStrategy {\n constructor(maxAttemptsProvider, options) {\n this.maxAttemptsProvider = maxAttemptsProvider;\n this.mode = RETRY_MODES.ADAPTIVE;\n const { rateLimiter } = options ?? {};\n this.rateLimiter = rateLimiter ?? new DefaultRateLimiter();\n this.standardRetryStrategy = new StandardRetryStrategy(maxAttemptsProvider);\n }\n async acquireInitialRetryToken(retryTokenScope) {\n await this.rateLimiter.getSendToken();\n return this.standardRetryStrategy.acquireInitialRetryToken(retryTokenScope);\n }\n async refreshRetryTokenForRetry(tokenToRenew, errorInfo) {\n this.rateLimiter.updateClientSendingRate(errorInfo);\n return this.standardRetryStrategy.refreshRetryTokenForRetry(tokenToRenew, errorInfo);\n }\n recordSuccess(token) {\n this.rateLimiter.updateClientSendingRate({});\n this.standardRetryStrategy.recordSuccess(token);\n }\n}\n",
|
|
200
|
+
"import { DEFAULT_RETRY_DELAY_BASE } from \"./constants\";\nimport { StandardRetryStrategy } from \"./StandardRetryStrategy\";\nexport class ConfiguredRetryStrategy extends StandardRetryStrategy {\n constructor(maxAttempts, computeNextBackoffDelay = DEFAULT_RETRY_DELAY_BASE) {\n super(typeof maxAttempts === \"function\" ? maxAttempts : async () => maxAttempts);\n if (typeof computeNextBackoffDelay === \"number\") {\n this.computeNextBackoffDelay = () => computeNextBackoffDelay;\n }\n else {\n this.computeNextBackoffDelay = computeNextBackoffDelay;\n }\n }\n async refreshRetryTokenForRetry(tokenToRenew, errorInfo) {\n const token = await super.refreshRetryTokenForRetry(tokenToRenew, errorInfo);\n token.getRetryDelay = () => this.computeNextBackoffDelay(token.getRetryCount());\n return token;\n }\n}\n",
|
|
201
|
+
"export * from \"./AdaptiveRetryStrategy\";\nexport * from \"./ConfiguredRetryStrategy\";\nexport * from \"./DefaultRateLimiter\";\nexport * from \"./StandardRetryStrategy\";\nexport * from \"./config\";\nexport * from \"./constants\";\nexport * from \"./types\";\n",
|
|
202
|
+
"import uuid from './dist/index.js';\nexport const v1 = uuid.v1;\nexport const v3 = uuid.v3;\nexport const v4 = uuid.v4;\nexport const v5 = uuid.v5;\nexport const NIL = uuid.NIL;\nexport const version = uuid.version;\nexport const validate = uuid.validate;\nexport const stringify = uuid.stringify;\nexport const parse = uuid.parse;\n",
|
|
203
|
+
"import { NO_RETRY_INCREMENT, RETRY_COST, TIMEOUT_RETRY_COST } from \"@smithy/util-retry\";\nexport const getDefaultRetryQuota = (initialRetryTokens, options) => {\n const MAX_CAPACITY = initialRetryTokens;\n const noRetryIncrement = options?.noRetryIncrement ?? NO_RETRY_INCREMENT;\n const retryCost = options?.retryCost ?? RETRY_COST;\n const timeoutRetryCost = options?.timeoutRetryCost ?? TIMEOUT_RETRY_COST;\n let availableCapacity = initialRetryTokens;\n const getCapacityAmount = (error) => (error.name === \"TimeoutError\" ? timeoutRetryCost : retryCost);\n const hasRetryTokens = (error) => getCapacityAmount(error) <= availableCapacity;\n const retrieveRetryTokens = (error) => {\n if (!hasRetryTokens(error)) {\n throw new Error(\"No retry token available\");\n }\n const capacityAmount = getCapacityAmount(error);\n availableCapacity -= capacityAmount;\n return capacityAmount;\n };\n const releaseRetryTokens = (capacityReleaseAmount) => {\n availableCapacity += capacityReleaseAmount ?? noRetryIncrement;\n availableCapacity = Math.min(availableCapacity, MAX_CAPACITY);\n };\n return Object.freeze({\n hasRetryTokens,\n retrieveRetryTokens,\n releaseRetryTokens,\n });\n};\n",
|
|
204
|
+
"import { MAXIMUM_RETRY_DELAY } from \"@smithy/util-retry\";\nexport const defaultDelayDecider = (delayBase, attempts) => Math.floor(Math.min(MAXIMUM_RETRY_DELAY, Math.random() * 2 ** attempts * delayBase));\n",
|
|
205
|
+
"import { isClockSkewError, isRetryableByTrait, isThrottlingError, isTransientError, } from \"@smithy/service-error-classification\";\nexport const defaultRetryDecider = (error) => {\n if (!error) {\n return false;\n }\n return isRetryableByTrait(error) || isClockSkewError(error) || isThrottlingError(error) || isTransientError(error);\n};\n",
|
|
206
|
+
"export const asSdkError = (error) => {\n if (error instanceof Error)\n return error;\n if (error instanceof Object)\n return Object.assign(new Error(), error);\n if (typeof error === \"string\")\n return new Error(error);\n return new Error(`AWS SDK error wrapper for ${error}`);\n};\n",
|
|
207
|
+
"import { HttpRequest, HttpResponse } from \"@smithy/protocol-http\";\nimport { isThrottlingError } from \"@smithy/service-error-classification\";\nimport { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_DELAY_BASE, INITIAL_RETRY_TOKENS, INVOCATION_ID_HEADER, REQUEST_HEADER, RETRY_MODES, THROTTLING_RETRY_DELAY_BASE, } from \"@smithy/util-retry\";\nimport { v4 } from \"uuid\";\nimport { getDefaultRetryQuota } from \"./defaultRetryQuota\";\nimport { defaultDelayDecider } from \"./delayDecider\";\nimport { defaultRetryDecider } from \"./retryDecider\";\nimport { asSdkError } from \"./util\";\nexport class StandardRetryStrategy {\n constructor(maxAttemptsProvider, options) {\n this.maxAttemptsProvider = maxAttemptsProvider;\n this.mode = RETRY_MODES.STANDARD;\n this.retryDecider = options?.retryDecider ?? defaultRetryDecider;\n this.delayDecider = options?.delayDecider ?? defaultDelayDecider;\n this.retryQuota = options?.retryQuota ?? getDefaultRetryQuota(INITIAL_RETRY_TOKENS);\n }\n shouldRetry(error, attempts, maxAttempts) {\n return attempts < maxAttempts && this.retryDecider(error) && this.retryQuota.hasRetryTokens(error);\n }\n async getMaxAttempts() {\n let maxAttempts;\n try {\n maxAttempts = await this.maxAttemptsProvider();\n }\n catch (error) {\n maxAttempts = DEFAULT_MAX_ATTEMPTS;\n }\n return maxAttempts;\n }\n async retry(next, args, options) {\n let retryTokenAmount;\n let attempts = 0;\n let totalDelay = 0;\n const maxAttempts = await this.getMaxAttempts();\n const { request } = args;\n if (HttpRequest.isInstance(request)) {\n request.headers[INVOCATION_ID_HEADER] = v4();\n }\n while (true) {\n try {\n if (HttpRequest.isInstance(request)) {\n request.headers[REQUEST_HEADER] = `attempt=${attempts + 1}; max=${maxAttempts}`;\n }\n if (options?.beforeRequest) {\n await options.beforeRequest();\n }\n const { response, output } = await next(args);\n if (options?.afterRequest) {\n options.afterRequest(response);\n }\n this.retryQuota.releaseRetryTokens(retryTokenAmount);\n output.$metadata.attempts = attempts + 1;\n output.$metadata.totalRetryDelay = totalDelay;\n return { response, output };\n }\n catch (e) {\n const err = asSdkError(e);\n attempts++;\n if (this.shouldRetry(err, attempts, maxAttempts)) {\n retryTokenAmount = this.retryQuota.retrieveRetryTokens(err);\n const delayFromDecider = this.delayDecider(isThrottlingError(err) ? THROTTLING_RETRY_DELAY_BASE : DEFAULT_RETRY_DELAY_BASE, attempts);\n const delayFromResponse = getDelayFromRetryAfterHeader(err.$response);\n const delay = Math.max(delayFromResponse || 0, delayFromDecider);\n totalDelay += delay;\n await new Promise((resolve) => setTimeout(resolve, delay));\n continue;\n }\n if (!err.$metadata) {\n err.$metadata = {};\n }\n err.$metadata.attempts = attempts;\n err.$metadata.totalRetryDelay = totalDelay;\n throw err;\n }\n }\n }\n}\nconst getDelayFromRetryAfterHeader = (response) => {\n if (!HttpResponse.isInstance(response))\n return;\n const retryAfterHeaderName = Object.keys(response.headers).find((key) => key.toLowerCase() === \"retry-after\");\n if (!retryAfterHeaderName)\n return;\n const retryAfter = response.headers[retryAfterHeaderName];\n const retryAfterSeconds = Number(retryAfter);\n if (!Number.isNaN(retryAfterSeconds))\n return retryAfterSeconds * 1000;\n const retryAfterDate = new Date(retryAfter);\n return retryAfterDate.getTime() - Date.now();\n};\n",
|
|
208
|
+
"import { DefaultRateLimiter, RETRY_MODES } from \"@smithy/util-retry\";\nimport { StandardRetryStrategy } from \"./StandardRetryStrategy\";\nexport class AdaptiveRetryStrategy extends StandardRetryStrategy {\n constructor(maxAttemptsProvider, options) {\n const { rateLimiter, ...superOptions } = options ?? {};\n super(maxAttemptsProvider, superOptions);\n this.rateLimiter = rateLimiter ?? new DefaultRateLimiter();\n this.mode = RETRY_MODES.ADAPTIVE;\n }\n async retry(next, args) {\n return super.retry(next, args, {\n beforeRequest: async () => {\n return this.rateLimiter.getSendToken();\n },\n afterRequest: (response) => {\n this.rateLimiter.updateClientSendingRate(response);\n },\n });\n }\n}\n",
|
|
209
|
+
"import { normalizeProvider } from \"@smithy/util-middleware\";\nimport { AdaptiveRetryStrategy, DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE, RETRY_MODES, StandardRetryStrategy, } from \"@smithy/util-retry\";\nexport const ENV_MAX_ATTEMPTS = \"AWS_MAX_ATTEMPTS\";\nexport const CONFIG_MAX_ATTEMPTS = \"max_attempts\";\nexport const NODE_MAX_ATTEMPT_CONFIG_OPTIONS = {\n environmentVariableSelector: (env) => {\n const value = env[ENV_MAX_ATTEMPTS];\n if (!value)\n return undefined;\n const maxAttempt = parseInt(value);\n if (Number.isNaN(maxAttempt)) {\n throw new Error(`Environment variable ${ENV_MAX_ATTEMPTS} mast be a number, got \"${value}\"`);\n }\n return maxAttempt;\n },\n configFileSelector: (profile) => {\n const value = profile[CONFIG_MAX_ATTEMPTS];\n if (!value)\n return undefined;\n const maxAttempt = parseInt(value);\n if (Number.isNaN(maxAttempt)) {\n throw new Error(`Shared config file entry ${CONFIG_MAX_ATTEMPTS} mast be a number, got \"${value}\"`);\n }\n return maxAttempt;\n },\n default: DEFAULT_MAX_ATTEMPTS,\n};\nexport const resolveRetryConfig = (input) => {\n const { retryStrategy } = input;\n const maxAttempts = normalizeProvider(input.maxAttempts ?? DEFAULT_MAX_ATTEMPTS);\n return {\n ...input,\n maxAttempts,\n retryStrategy: async () => {\n if (retryStrategy) {\n return retryStrategy;\n }\n const retryMode = await normalizeProvider(input.retryMode)();\n if (retryMode === RETRY_MODES.ADAPTIVE) {\n return new AdaptiveRetryStrategy(maxAttempts);\n }\n return new StandardRetryStrategy(maxAttempts);\n },\n };\n};\nexport const ENV_RETRY_MODE = \"AWS_RETRY_MODE\";\nexport const CONFIG_RETRY_MODE = \"retry_mode\";\nexport const NODE_RETRY_MODE_CONFIG_OPTIONS = {\n environmentVariableSelector: (env) => env[ENV_RETRY_MODE],\n configFileSelector: (profile) => profile[CONFIG_RETRY_MODE],\n default: DEFAULT_RETRY_MODE,\n};\n",
|
|
210
|
+
"import { HttpRequest } from \"@smithy/protocol-http\";\nimport { INVOCATION_ID_HEADER, REQUEST_HEADER } from \"@smithy/util-retry\";\nexport const omitRetryHeadersMiddleware = () => (next) => async (args) => {\n const { request } = args;\n if (HttpRequest.isInstance(request)) {\n delete request.headers[INVOCATION_ID_HEADER];\n delete request.headers[REQUEST_HEADER];\n }\n return next(args);\n};\nexport const omitRetryHeadersMiddlewareOptions = {\n name: \"omitRetryHeadersMiddleware\",\n tags: [\"RETRY\", \"HEADERS\", \"OMIT_RETRY_HEADERS\"],\n relation: \"before\",\n toMiddleware: \"awsAuthMiddleware\",\n override: true,\n};\nexport const getOmitRetryHeadersPlugin = (options) => ({\n applyToStack: (clientStack) => {\n clientStack.addRelativeTo(omitRetryHeadersMiddleware(), omitRetryHeadersMiddlewareOptions);\n },\n});\n",
|
|
211
|
+
"export class NoOpLogger {\n trace() { }\n debug() { }\n info() { }\n warn() { }\n error() { }\n}\n",
|
|
212
|
+
"const getAllAliases = (name, aliases) => {\n const _aliases = [];\n if (name) {\n _aliases.push(name);\n }\n if (aliases) {\n for (const alias of aliases) {\n _aliases.push(alias);\n }\n }\n return _aliases;\n};\nconst getMiddlewareNameWithAliases = (name, aliases) => {\n return `${name || \"anonymous\"}${aliases && aliases.length > 0 ? ` (a.k.a. ${aliases.join(\",\")})` : \"\"}`;\n};\nexport const constructStack = () => {\n let absoluteEntries = [];\n let relativeEntries = [];\n let identifyOnResolve = false;\n const entriesNameSet = new Set();\n const sort = (entries) => entries.sort((a, b) => stepWeights[b.step] - stepWeights[a.step] ||\n priorityWeights[b.priority || \"normal\"] - priorityWeights[a.priority || \"normal\"]);\n const removeByName = (toRemove) => {\n let isRemoved = false;\n const filterCb = (entry) => {\n const aliases = getAllAliases(entry.name, entry.aliases);\n if (aliases.includes(toRemove)) {\n isRemoved = true;\n for (const alias of aliases) {\n entriesNameSet.delete(alias);\n }\n return false;\n }\n return true;\n };\n absoluteEntries = absoluteEntries.filter(filterCb);\n relativeEntries = relativeEntries.filter(filterCb);\n return isRemoved;\n };\n const removeByReference = (toRemove) => {\n let isRemoved = false;\n const filterCb = (entry) => {\n if (entry.middleware === toRemove) {\n isRemoved = true;\n for (const alias of getAllAliases(entry.name, entry.aliases)) {\n entriesNameSet.delete(alias);\n }\n return false;\n }\n return true;\n };\n absoluteEntries = absoluteEntries.filter(filterCb);\n relativeEntries = relativeEntries.filter(filterCb);\n return isRemoved;\n };\n const cloneTo = (toStack) => {\n absoluteEntries.forEach((entry) => {\n toStack.add(entry.middleware, { ...entry });\n });\n relativeEntries.forEach((entry) => {\n toStack.addRelativeTo(entry.middleware, { ...entry });\n });\n toStack.identifyOnResolve?.(stack.identifyOnResolve());\n return toStack;\n };\n const expandRelativeMiddlewareList = (from) => {\n const expandedMiddlewareList = [];\n from.before.forEach((entry) => {\n if (entry.before.length === 0 && entry.after.length === 0) {\n expandedMiddlewareList.push(entry);\n }\n else {\n expandedMiddlewareList.push(...expandRelativeMiddlewareList(entry));\n }\n });\n expandedMiddlewareList.push(from);\n from.after.reverse().forEach((entry) => {\n if (entry.before.length === 0 && entry.after.length === 0) {\n expandedMiddlewareList.push(entry);\n }\n else {\n expandedMiddlewareList.push(...expandRelativeMiddlewareList(entry));\n }\n });\n return expandedMiddlewareList;\n };\n const getMiddlewareList = (debug = false) => {\n const normalizedAbsoluteEntries = [];\n const normalizedRelativeEntries = [];\n const normalizedEntriesNameMap = {};\n absoluteEntries.forEach((entry) => {\n const normalizedEntry = {\n ...entry,\n before: [],\n after: [],\n };\n for (const alias of getAllAliases(normalizedEntry.name, normalizedEntry.aliases)) {\n normalizedEntriesNameMap[alias] = normalizedEntry;\n }\n normalizedAbsoluteEntries.push(normalizedEntry);\n });\n relativeEntries.forEach((entry) => {\n const normalizedEntry = {\n ...entry,\n before: [],\n after: [],\n };\n for (const alias of getAllAliases(normalizedEntry.name, normalizedEntry.aliases)) {\n normalizedEntriesNameMap[alias] = normalizedEntry;\n }\n normalizedRelativeEntries.push(normalizedEntry);\n });\n normalizedRelativeEntries.forEach((entry) => {\n if (entry.toMiddleware) {\n const toMiddleware = normalizedEntriesNameMap[entry.toMiddleware];\n if (toMiddleware === undefined) {\n if (debug) {\n return;\n }\n throw new Error(`${entry.toMiddleware} is not found when adding ` +\n `${getMiddlewareNameWithAliases(entry.name, entry.aliases)} ` +\n `middleware ${entry.relation} ${entry.toMiddleware}`);\n }\n if (entry.relation === \"after\") {\n toMiddleware.after.push(entry);\n }\n if (entry.relation === \"before\") {\n toMiddleware.before.push(entry);\n }\n }\n });\n const mainChain = sort(normalizedAbsoluteEntries)\n .map(expandRelativeMiddlewareList)\n .reduce((wholeList, expandedMiddlewareList) => {\n wholeList.push(...expandedMiddlewareList);\n return wholeList;\n }, []);\n return mainChain;\n };\n const stack = {\n add: (middleware, options = {}) => {\n const { name, override, aliases: _aliases } = options;\n const entry = {\n step: \"initialize\",\n priority: \"normal\",\n middleware,\n ...options,\n };\n const aliases = getAllAliases(name, _aliases);\n if (aliases.length > 0) {\n if (aliases.some((alias) => entriesNameSet.has(alias))) {\n if (!override)\n throw new Error(`Duplicate middleware name '${getMiddlewareNameWithAliases(name, _aliases)}'`);\n for (const alias of aliases) {\n const toOverrideIndex = absoluteEntries.findIndex((entry) => entry.name === alias || entry.aliases?.some((a) => a === alias));\n if (toOverrideIndex === -1) {\n continue;\n }\n const toOverride = absoluteEntries[toOverrideIndex];\n if (toOverride.step !== entry.step || entry.priority !== toOverride.priority) {\n throw new Error(`\"${getMiddlewareNameWithAliases(toOverride.name, toOverride.aliases)}\" middleware with ` +\n `${toOverride.priority} priority in ${toOverride.step} step cannot ` +\n `be overridden by \"${getMiddlewareNameWithAliases(name, _aliases)}\" middleware with ` +\n `${entry.priority} priority in ${entry.step} step.`);\n }\n absoluteEntries.splice(toOverrideIndex, 1);\n }\n }\n for (const alias of aliases) {\n entriesNameSet.add(alias);\n }\n }\n absoluteEntries.push(entry);\n },\n addRelativeTo: (middleware, options) => {\n const { name, override, aliases: _aliases } = options;\n const entry = {\n middleware,\n ...options,\n };\n const aliases = getAllAliases(name, _aliases);\n if (aliases.length > 0) {\n if (aliases.some((alias) => entriesNameSet.has(alias))) {\n if (!override)\n throw new Error(`Duplicate middleware name '${getMiddlewareNameWithAliases(name, _aliases)}'`);\n for (const alias of aliases) {\n const toOverrideIndex = relativeEntries.findIndex((entry) => entry.name === alias || entry.aliases?.some((a) => a === alias));\n if (toOverrideIndex === -1) {\n continue;\n }\n const toOverride = relativeEntries[toOverrideIndex];\n if (toOverride.toMiddleware !== entry.toMiddleware || toOverride.relation !== entry.relation) {\n throw new Error(`\"${getMiddlewareNameWithAliases(toOverride.name, toOverride.aliases)}\" middleware ` +\n `${toOverride.relation} \"${toOverride.toMiddleware}\" middleware cannot be overridden ` +\n `by \"${getMiddlewareNameWithAliases(name, _aliases)}\" middleware ${entry.relation} ` +\n `\"${entry.toMiddleware}\" middleware.`);\n }\n relativeEntries.splice(toOverrideIndex, 1);\n }\n }\n for (const alias of aliases) {\n entriesNameSet.add(alias);\n }\n }\n relativeEntries.push(entry);\n },\n clone: () => cloneTo(constructStack()),\n use: (plugin) => {\n plugin.applyToStack(stack);\n },\n remove: (toRemove) => {\n if (typeof toRemove === \"string\")\n return removeByName(toRemove);\n else\n return removeByReference(toRemove);\n },\n removeByTag: (toRemove) => {\n let isRemoved = false;\n const filterCb = (entry) => {\n const { tags, name, aliases: _aliases } = entry;\n if (tags && tags.includes(toRemove)) {\n const aliases = getAllAliases(name, _aliases);\n for (const alias of aliases) {\n entriesNameSet.delete(alias);\n }\n isRemoved = true;\n return false;\n }\n return true;\n };\n absoluteEntries = absoluteEntries.filter(filterCb);\n relativeEntries = relativeEntries.filter(filterCb);\n return isRemoved;\n },\n concat: (from) => {\n const cloned = cloneTo(constructStack());\n cloned.use(from);\n cloned.identifyOnResolve(identifyOnResolve || cloned.identifyOnResolve() || (from.identifyOnResolve?.() ?? false));\n return cloned;\n },\n applyToStack: cloneTo,\n identify: () => {\n return getMiddlewareList(true).map((mw) => {\n const step = mw.step ??\n mw.relation +\n \" \" +\n mw.toMiddleware;\n return getMiddlewareNameWithAliases(mw.name, mw.aliases) + \" - \" + step;\n });\n },\n identifyOnResolve(toggle) {\n if (typeof toggle === \"boolean\")\n identifyOnResolve = toggle;\n return identifyOnResolve;\n },\n resolve: (handler, context) => {\n for (const middleware of getMiddlewareList()\n .map((entry) => entry.middleware)\n .reverse()) {\n handler = middleware(handler, context);\n }\n if (identifyOnResolve) {\n console.log(stack.identify());\n }\n return handler;\n },\n };\n return stack;\n};\nconst stepWeights = {\n initialize: 5,\n serialize: 4,\n build: 3,\n finalizeRequest: 2,\n deserialize: 1,\n};\nconst priorityWeights = {\n high: 3,\n normal: 2,\n low: 1,\n};\n",
|
|
213
|
+
"export * from \"./MiddlewareStack\";\n",
|
|
214
|
+
"import { constructStack } from \"@smithy/middleware-stack\";\nexport class Client {\n constructor(config) {\n this.middlewareStack = constructStack();\n this.config = config;\n }\n send(command, optionsOrCb, cb) {\n const options = typeof optionsOrCb !== \"function\" ? optionsOrCb : undefined;\n const callback = typeof optionsOrCb === \"function\" ? optionsOrCb : cb;\n const handler = command.resolveMiddleware(this.middlewareStack, this.config, options);\n if (callback) {\n handler(command)\n .then((result) => callback(null, result.output), (err) => callback(err))\n .catch(() => { });\n }\n else {\n return handler(command).then((result) => result.output);\n }\n }\n destroy() {\n if (this.config.requestHandler.destroy)\n this.config.requestHandler.destroy();\n }\n}\n",
|
|
215
|
+
"export const isArrayBuffer = (arg) => (typeof ArrayBuffer === \"function\" && arg instanceof ArrayBuffer) ||\n Object.prototype.toString.call(arg) === \"[object ArrayBuffer]\";\n",
|
|
216
|
+
"import { isArrayBuffer } from \"@smithy/is-array-buffer\";\nimport { Buffer } from \"buffer\";\nexport const fromArrayBuffer = (input, offset = 0, length = input.byteLength - offset) => {\n if (!isArrayBuffer(input)) {\n throw new TypeError(`The \"input\" argument must be ArrayBuffer. Received type ${typeof input} (${input})`);\n }\n return Buffer.from(input, offset, length);\n};\nexport const fromString = (input, encoding) => {\n if (typeof input !== \"string\") {\n throw new TypeError(`The \"input\" argument must be of type string. Received type ${typeof input} (${input})`);\n }\n return encoding ? Buffer.from(input, encoding) : Buffer.from(input);\n};\n",
|
|
217
|
+
"import { fromString } from \"@smithy/util-buffer-from\";\nconst BASE64_REGEX = /^[A-Za-z0-9+/]*={0,2}$/;\nexport const fromBase64 = (input) => {\n if ((input.length * 3) % 4 !== 0) {\n throw new TypeError(`Incorrect padding on base64 string.`);\n }\n if (!BASE64_REGEX.exec(input)) {\n throw new TypeError(`Invalid base64 string.`);\n }\n const buffer = fromString(input, \"base64\");\n return new Uint8Array(buffer.buffer, buffer.byteOffset, buffer.byteLength);\n};\n",
|
|
218
|
+
"import { fromString } from \"@smithy/util-buffer-from\";\nexport const fromUtf8 = (input) => {\n const buf = fromString(input, \"utf8\");\n return new Uint8Array(buf.buffer, buf.byteOffset, buf.byteLength / Uint8Array.BYTES_PER_ELEMENT);\n};\n",
|
|
219
|
+
"import { fromUtf8 } from \"./fromUtf8\";\nexport const toUint8Array = (data) => {\n if (typeof data === \"string\") {\n return fromUtf8(data);\n }\n if (ArrayBuffer.isView(data)) {\n return new Uint8Array(data.buffer, data.byteOffset, data.byteLength / Uint8Array.BYTES_PER_ELEMENT);\n }\n return new Uint8Array(data);\n};\n",
|
|
220
|
+
"import { fromArrayBuffer } from \"@smithy/util-buffer-from\";\nexport const toUtf8 = (input) => {\n if (typeof input === \"string\") {\n return input;\n }\n if (typeof input !== \"object\" || typeof input.byteOffset !== \"number\" || typeof input.byteLength !== \"number\") {\n throw new Error(\"@smithy/util-utf8: toUtf8 encoder function only accepts string | Uint8Array.\");\n }\n return fromArrayBuffer(input.buffer, input.byteOffset, input.byteLength).toString(\"utf8\");\n};\n",
|
|
221
|
+
"export * from \"./fromUtf8\";\nexport * from \"./toUint8Array\";\nexport * from \"./toUtf8\";\n",
|
|
222
|
+
"import { fromArrayBuffer } from \"@smithy/util-buffer-from\";\nimport { fromUtf8 } from \"@smithy/util-utf8\";\nexport const toBase64 = (_input) => {\n let input;\n if (typeof _input === \"string\") {\n input = fromUtf8(_input);\n }\n else {\n input = _input;\n }\n if (typeof input !== \"object\" || typeof input.byteOffset !== \"number\" || typeof input.byteLength !== \"number\") {\n throw new Error(\"@smithy/util-base64: toBase64 encoder function only accepts string | Uint8Array.\");\n }\n return fromArrayBuffer(input.buffer, input.byteOffset, input.byteLength).toString(\"base64\");\n};\n",
|
|
223
|
+
"export * from \"./fromBase64\";\nexport * from \"./toBase64\";\n",
|
|
224
|
+
"import { fromBase64, toBase64 } from \"@smithy/util-base64\";\nimport { fromUtf8, toUtf8 } from \"@smithy/util-utf8\";\nimport { Uint8ArrayBlobAdapter } from \"./Uint8ArrayBlobAdapter\";\nexport function transformToString(payload, encoding = \"utf-8\") {\n if (encoding === \"base64\") {\n return toBase64(payload);\n }\n return toUtf8(payload);\n}\nexport function transformFromString(str, encoding) {\n if (encoding === \"base64\") {\n return Uint8ArrayBlobAdapter.mutate(fromBase64(str));\n }\n return Uint8ArrayBlobAdapter.mutate(fromUtf8(str));\n}\n",
|
|
225
|
+
"import { transformFromString, transformToString } from \"./transforms\";\nexport class Uint8ArrayBlobAdapter extends Uint8Array {\n static fromString(source, encoding = \"utf-8\") {\n switch (typeof source) {\n case \"string\":\n return transformFromString(source, encoding);\n default:\n throw new Error(`Unsupported conversion from ${typeof source} to Uint8ArrayBlobAdapter.`);\n }\n }\n static mutate(source) {\n Object.setPrototypeOf(source, Uint8ArrayBlobAdapter.prototype);\n return source;\n }\n transformToString(encoding = \"utf-8\") {\n return transformToString(this, encoding);\n }\n}\n",
|
|
226
|
+
"export const escapeUri = (uri) => encodeURIComponent(uri).replace(/[!'()*]/g, hexEncode);\nconst hexEncode = (c) => `%${c.charCodeAt(0).toString(16).toUpperCase()}`;\n",
|
|
227
|
+
"export * from \"./escape-uri\";\nexport * from \"./escape-uri-path\";\n",
|
|
228
|
+
"import { escapeUri } from \"@smithy/util-uri-escape\";\nexport function buildQueryString(query) {\n const parts = [];\n for (let key of Object.keys(query).sort()) {\n const value = query[key];\n key = escapeUri(key);\n if (Array.isArray(value)) {\n for (let i = 0, iLen = value.length; i < iLen; i++) {\n parts.push(`${key}=${escapeUri(value[i])}`);\n }\n }\n else {\n let qsEntry = key;\n if (value || typeof value === \"string\") {\n qsEntry += `=${escapeUri(value)}`;\n }\n parts.push(qsEntry);\n }\n }\n return parts.join(\"&\");\n}\n",
|
|
229
|
+
"export const NODEJS_TIMEOUT_ERROR_CODES = [\"ECONNRESET\", \"EPIPE\", \"ETIMEDOUT\"];\n",
|
|
230
|
+
"const getTransformedHeaders = (headers) => {\n const transformedHeaders = {};\n for (const name of Object.keys(headers)) {\n const headerValues = headers[name];\n transformedHeaders[name] = Array.isArray(headerValues) ? headerValues.join(\",\") : headerValues;\n }\n return transformedHeaders;\n};\nexport { getTransformedHeaders };\n",
|
|
231
|
+
"export const setConnectionTimeout = (request, reject, timeoutInMs = 0) => {\n if (!timeoutInMs) {\n return;\n }\n const timeoutId = setTimeout(() => {\n request.destroy();\n reject(Object.assign(new Error(`Socket timed out without establishing a connection within ${timeoutInMs} ms`), {\n name: \"TimeoutError\",\n }));\n }, timeoutInMs);\n request.on(\"socket\", (socket) => {\n if (socket.connecting) {\n socket.on(\"connect\", () => {\n clearTimeout(timeoutId);\n });\n }\n else {\n clearTimeout(timeoutId);\n }\n });\n};\n",
|
|
232
|
+
"export const setSocketKeepAlive = (request, { keepAlive, keepAliveMsecs }) => {\n if (keepAlive !== true) {\n return;\n }\n request.on(\"socket\", (socket) => {\n socket.setKeepAlive(keepAlive, keepAliveMsecs || 0);\n });\n};\n",
|
|
233
|
+
"export const setSocketTimeout = (request, reject, timeoutInMs = 0) => {\n request.setTimeout(timeoutInMs, () => {\n request.destroy();\n reject(Object.assign(new Error(`Connection timed out after ${timeoutInMs} ms`), { name: \"TimeoutError\" }));\n });\n};\n",
|
|
234
|
+
"import { Readable } from \"stream\";\nconst MIN_WAIT_TIME = 1000;\nexport async function writeRequestBody(httpRequest, request, maxContinueTimeoutMs = MIN_WAIT_TIME) {\n const headers = request.headers ?? {};\n const expect = headers[\"Expect\"] || headers[\"expect\"];\n let timeoutId = -1;\n let hasError = false;\n if (expect === \"100-continue\") {\n await Promise.race([\n new Promise((resolve) => {\n timeoutId = Number(setTimeout(resolve, Math.max(MIN_WAIT_TIME, maxContinueTimeoutMs)));\n }),\n new Promise((resolve) => {\n httpRequest.on(\"continue\", () => {\n clearTimeout(timeoutId);\n resolve();\n });\n httpRequest.on(\"error\", () => {\n hasError = true;\n clearTimeout(timeoutId);\n resolve();\n });\n }),\n ]);\n }\n if (!hasError) {\n writeBody(httpRequest, request.body);\n }\n}\nfunction writeBody(httpRequest, body) {\n if (body instanceof Readable) {\n body.pipe(httpRequest);\n return;\n }\n if (body) {\n if (Buffer.isBuffer(body) || typeof body === \"string\") {\n httpRequest.end(body);\n return;\n }\n const uint8 = body;\n if (typeof uint8 === \"object\" &&\n uint8.buffer &&\n typeof uint8.byteOffset === \"number\" &&\n typeof uint8.byteLength === \"number\") {\n httpRequest.end(Buffer.from(uint8.buffer, uint8.byteOffset, uint8.byteLength));\n return;\n }\n httpRequest.end(Buffer.from(body));\n return;\n }\n httpRequest.end();\n}\n",
|
|
235
|
+
"import { HttpResponse } from \"@smithy/protocol-http\";\nimport { buildQueryString } from \"@smithy/querystring-builder\";\nimport { Agent as hAgent, request as hRequest } from \"http\";\nimport { Agent as hsAgent, request as hsRequest } from \"https\";\nimport { NODEJS_TIMEOUT_ERROR_CODES } from \"./constants\";\nimport { getTransformedHeaders } from \"./get-transformed-headers\";\nimport { setConnectionTimeout } from \"./set-connection-timeout\";\nimport { setSocketKeepAlive } from \"./set-socket-keep-alive\";\nimport { setSocketTimeout } from \"./set-socket-timeout\";\nimport { writeRequestBody } from \"./write-request-body\";\nexport const DEFAULT_REQUEST_TIMEOUT = 0;\nexport class NodeHttpHandler {\n static create(instanceOrOptions) {\n if (typeof instanceOrOptions?.handle === \"function\") {\n return instanceOrOptions;\n }\n return new NodeHttpHandler(instanceOrOptions);\n }\n static checkSocketUsage(agent, socketWarningTimestamp, logger = console) {\n const { sockets, requests, maxSockets } = agent;\n if (typeof maxSockets !== \"number\" || maxSockets === Infinity) {\n return socketWarningTimestamp;\n }\n const interval = 15000;\n if (Date.now() - interval < socketWarningTimestamp) {\n return socketWarningTimestamp;\n }\n if (sockets && requests) {\n for (const origin in sockets) {\n const socketsInUse = sockets[origin]?.length ?? 0;\n const requestsEnqueued = requests[origin]?.length ?? 0;\n if (socketsInUse >= maxSockets && requestsEnqueued >= 2 * maxSockets) {\n logger?.warn?.(`@smithy/node-http-handler:WARN - socket usage at capacity=${socketsInUse} and ${requestsEnqueued} additional requests are enqueued.\nSee https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/node-configuring-maxsockets.html\nor increase socketAcquisitionWarningTimeout=(millis) in the NodeHttpHandler config.`);\n return Date.now();\n }\n }\n }\n return socketWarningTimestamp;\n }\n constructor(options) {\n this.socketWarningTimestamp = 0;\n this.metadata = { handlerProtocol: \"http/1.1\" };\n this.configProvider = new Promise((resolve, reject) => {\n if (typeof options === \"function\") {\n options()\n .then((_options) => {\n resolve(this.resolveDefaultConfig(_options));\n })\n .catch(reject);\n }\n else {\n resolve(this.resolveDefaultConfig(options));\n }\n });\n }\n resolveDefaultConfig(options) {\n const { requestTimeout, connectionTimeout, socketTimeout, httpAgent, httpsAgent } = options || {};\n const keepAlive = true;\n const maxSockets = 50;\n return {\n connectionTimeout,\n requestTimeout: requestTimeout ?? socketTimeout,\n httpAgent: (() => {\n if (httpAgent instanceof hAgent || typeof httpAgent?.destroy === \"function\") {\n return httpAgent;\n }\n return new hAgent({ keepAlive, maxSockets, ...httpAgent });\n })(),\n httpsAgent: (() => {\n if (httpsAgent instanceof hsAgent || typeof httpsAgent?.destroy === \"function\") {\n return httpsAgent;\n }\n return new hsAgent({ keepAlive, maxSockets, ...httpsAgent });\n })(),\n logger: console,\n };\n }\n destroy() {\n this.config?.httpAgent?.destroy();\n this.config?.httpsAgent?.destroy();\n }\n async handle(request, { abortSignal } = {}) {\n if (!this.config) {\n this.config = await this.configProvider;\n }\n let socketCheckTimeoutId;\n return new Promise((_resolve, _reject) => {\n let writeRequestBodyPromise = undefined;\n const resolve = async (arg) => {\n await writeRequestBodyPromise;\n clearTimeout(socketCheckTimeoutId);\n _resolve(arg);\n };\n const reject = async (arg) => {\n await writeRequestBodyPromise;\n clearTimeout(socketCheckTimeoutId);\n _reject(arg);\n };\n if (!this.config) {\n throw new Error(\"Node HTTP request handler config is not resolved\");\n }\n if (abortSignal?.aborted) {\n const abortError = new Error(\"Request aborted\");\n abortError.name = \"AbortError\";\n reject(abortError);\n return;\n }\n const isSSL = request.protocol === \"https:\";\n const agent = isSSL ? this.config.httpsAgent : this.config.httpAgent;\n socketCheckTimeoutId = setTimeout(() => {\n this.socketWarningTimestamp = NodeHttpHandler.checkSocketUsage(agent, this.socketWarningTimestamp, this.config.logger);\n }, this.config.socketAcquisitionWarningTimeout ??\n (this.config.requestTimeout ?? 2000) + (this.config.connectionTimeout ?? 1000));\n const queryString = buildQueryString(request.query || {});\n let auth = undefined;\n if (request.username != null || request.password != null) {\n const username = request.username ?? \"\";\n const password = request.password ?? \"\";\n auth = `${username}:${password}`;\n }\n let path = request.path;\n if (queryString) {\n path += `?${queryString}`;\n }\n if (request.fragment) {\n path += `#${request.fragment}`;\n }\n const nodeHttpsOptions = {\n headers: request.headers,\n host: request.hostname,\n method: request.method,\n path,\n port: request.port,\n agent,\n auth,\n };\n const requestFunc = isSSL ? hsRequest : hRequest;\n const req = requestFunc(nodeHttpsOptions, (res) => {\n const httpResponse = new HttpResponse({\n statusCode: res.statusCode || -1,\n reason: res.statusMessage,\n headers: getTransformedHeaders(res.headers),\n body: res,\n });\n resolve({ response: httpResponse });\n });\n req.on(\"error\", (err) => {\n if (NODEJS_TIMEOUT_ERROR_CODES.includes(err.code)) {\n reject(Object.assign(err, { name: \"TimeoutError\" }));\n }\n else {\n reject(err);\n }\n });\n setConnectionTimeout(req, reject, this.config.connectionTimeout);\n setSocketTimeout(req, reject, this.config.requestTimeout);\n if (abortSignal) {\n const onAbort = () => {\n req.destroy();\n const abortError = new Error(\"Request aborted\");\n abortError.name = \"AbortError\";\n reject(abortError);\n };\n if (typeof abortSignal.addEventListener === \"function\") {\n const signal = abortSignal;\n signal.addEventListener(\"abort\", onAbort, { once: true });\n req.once(\"close\", () => signal.removeEventListener(\"abort\", onAbort));\n }\n else {\n abortSignal.onabort = onAbort;\n }\n }\n const httpAgent = nodeHttpsOptions.agent;\n if (typeof httpAgent === \"object\" && \"keepAlive\" in httpAgent) {\n setSocketKeepAlive(req, {\n keepAlive: httpAgent.keepAlive,\n keepAliveMsecs: httpAgent.keepAliveMsecs,\n });\n }\n writeRequestBodyPromise = writeRequestBody(req, request, this.config.requestTimeout).catch((e) => {\n clearTimeout(socketCheckTimeoutId);\n return _reject(e);\n });\n });\n }\n updateHttpClientConfig(key, value) {\n this.config = undefined;\n this.configProvider = this.configProvider.then((config) => {\n return {\n ...config,\n [key]: value,\n };\n });\n }\n httpHandlerConfigs() {\n return this.config ?? {};\n }\n}\n",
|
|
236
|
+
"import http2 from \"http2\";\nimport { NodeHttp2ConnectionPool } from \"./node-http2-connection-pool\";\nexport class NodeHttp2ConnectionManager {\n constructor(config) {\n this.sessionCache = new Map();\n this.config = config;\n if (this.config.maxConcurrency && this.config.maxConcurrency <= 0) {\n throw new RangeError(\"maxConcurrency must be greater than zero.\");\n }\n }\n lease(requestContext, connectionConfiguration) {\n const url = this.getUrlString(requestContext);\n const existingPool = this.sessionCache.get(url);\n if (existingPool) {\n const existingSession = existingPool.poll();\n if (existingSession && !this.config.disableConcurrency) {\n return existingSession;\n }\n }\n const session = http2.connect(url);\n if (this.config.maxConcurrency) {\n session.settings({ maxConcurrentStreams: this.config.maxConcurrency }, (err) => {\n if (err) {\n throw new Error(\"Fail to set maxConcurrentStreams to \" +\n this.config.maxConcurrency +\n \"when creating new session for \" +\n requestContext.destination.toString());\n }\n });\n }\n session.unref();\n const destroySessionCb = () => {\n session.destroy();\n this.deleteSession(url, session);\n };\n session.on(\"goaway\", destroySessionCb);\n session.on(\"error\", destroySessionCb);\n session.on(\"frameError\", destroySessionCb);\n session.on(\"close\", () => this.deleteSession(url, session));\n if (connectionConfiguration.requestTimeout) {\n session.setTimeout(connectionConfiguration.requestTimeout, destroySessionCb);\n }\n const connectionPool = this.sessionCache.get(url) || new NodeHttp2ConnectionPool();\n connectionPool.offerLast(session);\n this.sessionCache.set(url, connectionPool);\n return session;\n }\n deleteSession(authority, session) {\n const existingConnectionPool = this.sessionCache.get(authority);\n if (!existingConnectionPool) {\n return;\n }\n if (!existingConnectionPool.contains(session)) {\n return;\n }\n existingConnectionPool.remove(session);\n this.sessionCache.set(authority, existingConnectionPool);\n }\n release(requestContext, session) {\n const cacheKey = this.getUrlString(requestContext);\n this.sessionCache.get(cacheKey)?.offerLast(session);\n }\n destroy() {\n for (const [key, connectionPool] of this.sessionCache) {\n for (const session of connectionPool) {\n if (!session.destroyed) {\n session.destroy();\n }\n connectionPool.remove(session);\n }\n this.sessionCache.delete(key);\n }\n }\n setMaxConcurrentStreams(maxConcurrentStreams) {\n if (this.config.maxConcurrency && this.config.maxConcurrency <= 0) {\n throw new RangeError(\"maxConcurrentStreams must be greater than zero.\");\n }\n this.config.maxConcurrency = maxConcurrentStreams;\n }\n setDisableConcurrentStreams(disableConcurrentStreams) {\n this.config.disableConcurrency = disableConcurrentStreams;\n }\n getUrlString(request) {\n return request.destination.toString();\n }\n}\n",
|
|
237
|
+
"import { HttpResponse } from \"@smithy/protocol-http\";\nimport { buildQueryString } from \"@smithy/querystring-builder\";\nimport { constants } from \"http2\";\nimport { getTransformedHeaders } from \"./get-transformed-headers\";\nimport { NodeHttp2ConnectionManager } from \"./node-http2-connection-manager\";\nimport { writeRequestBody } from \"./write-request-body\";\nexport class NodeHttp2Handler {\n static create(instanceOrOptions) {\n if (typeof instanceOrOptions?.handle === \"function\") {\n return instanceOrOptions;\n }\n return new NodeHttp2Handler(instanceOrOptions);\n }\n constructor(options) {\n this.metadata = { handlerProtocol: \"h2\" };\n this.connectionManager = new NodeHttp2ConnectionManager({});\n this.configProvider = new Promise((resolve, reject) => {\n if (typeof options === \"function\") {\n options()\n .then((opts) => {\n resolve(opts || {});\n })\n .catch(reject);\n }\n else {\n resolve(options || {});\n }\n });\n }\n destroy() {\n this.connectionManager.destroy();\n }\n async handle(request, { abortSignal } = {}) {\n if (!this.config) {\n this.config = await this.configProvider;\n this.connectionManager.setDisableConcurrentStreams(this.config.disableConcurrentStreams || false);\n if (this.config.maxConcurrentStreams) {\n this.connectionManager.setMaxConcurrentStreams(this.config.maxConcurrentStreams);\n }\n }\n const { requestTimeout, disableConcurrentStreams } = this.config;\n return new Promise((_resolve, _reject) => {\n let fulfilled = false;\n let writeRequestBodyPromise = undefined;\n const resolve = async (arg) => {\n await writeRequestBodyPromise;\n _resolve(arg);\n };\n const reject = async (arg) => {\n await writeRequestBodyPromise;\n _reject(arg);\n };\n if (abortSignal?.aborted) {\n fulfilled = true;\n const abortError = new Error(\"Request aborted\");\n abortError.name = \"AbortError\";\n reject(abortError);\n return;\n }\n const { hostname, method, port, protocol, query } = request;\n let auth = \"\";\n if (request.username != null || request.password != null) {\n const username = request.username ?? \"\";\n const password = request.password ?? \"\";\n auth = `${username}:${password}@`;\n }\n const authority = `${protocol}//${auth}${hostname}${port ? `:${port}` : \"\"}`;\n const requestContext = { destination: new URL(authority) };\n const session = this.connectionManager.lease(requestContext, {\n requestTimeout: this.config?.sessionTimeout,\n disableConcurrentStreams: disableConcurrentStreams || false,\n });\n const rejectWithDestroy = (err) => {\n if (disableConcurrentStreams) {\n this.destroySession(session);\n }\n fulfilled = true;\n reject(err);\n };\n const queryString = buildQueryString(query || {});\n let path = request.path;\n if (queryString) {\n path += `?${queryString}`;\n }\n if (request.fragment) {\n path += `#${request.fragment}`;\n }\n const req = session.request({\n ...request.headers,\n [constants.HTTP2_HEADER_PATH]: path,\n [constants.HTTP2_HEADER_METHOD]: method,\n });\n session.ref();\n req.on(\"response\", (headers) => {\n const httpResponse = new HttpResponse({\n statusCode: headers[\":status\"] || -1,\n headers: getTransformedHeaders(headers),\n body: req,\n });\n fulfilled = true;\n resolve({ response: httpResponse });\n if (disableConcurrentStreams) {\n session.close();\n this.connectionManager.deleteSession(authority, session);\n }\n });\n if (requestTimeout) {\n req.setTimeout(requestTimeout, () => {\n req.close();\n const timeoutError = new Error(`Stream timed out because of no activity for ${requestTimeout} ms`);\n timeoutError.name = \"TimeoutError\";\n rejectWithDestroy(timeoutError);\n });\n }\n if (abortSignal) {\n const onAbort = () => {\n req.close();\n const abortError = new Error(\"Request aborted\");\n abortError.name = \"AbortError\";\n rejectWithDestroy(abortError);\n };\n if (typeof abortSignal.addEventListener === \"function\") {\n const signal = abortSignal;\n signal.addEventListener(\"abort\", onAbort, { once: true });\n req.once(\"close\", () => signal.removeEventListener(\"abort\", onAbort));\n }\n else {\n abortSignal.onabort = onAbort;\n }\n }\n req.on(\"frameError\", (type, code, id) => {\n rejectWithDestroy(new Error(`Frame type id ${type} in stream id ${id} has failed with code ${code}.`));\n });\n req.on(\"error\", rejectWithDestroy);\n req.on(\"aborted\", () => {\n rejectWithDestroy(new Error(`HTTP/2 stream is abnormally aborted in mid-communication with result code ${req.rstCode}.`));\n });\n req.on(\"close\", () => {\n session.unref();\n if (disableConcurrentStreams) {\n session.destroy();\n }\n if (!fulfilled) {\n rejectWithDestroy(new Error(\"Unexpected error: http2 request did not get a response\"));\n }\n });\n writeRequestBodyPromise = writeRequestBody(req, request, requestTimeout);\n });\n }\n updateHttpClientConfig(key, value) {\n this.config = undefined;\n this.configProvider = this.configProvider.then((config) => {\n return {\n ...config,\n [key]: value,\n };\n });\n }\n httpHandlerConfigs() {\n return this.config ?? {};\n }\n destroySession(session) {\n if (!session.destroyed) {\n session.destroy();\n }\n }\n}\n",
|
|
238
|
+
"import { Writable } from \"stream\";\nexport class Collector extends Writable {\n constructor() {\n super(...arguments);\n this.bufferedBytes = [];\n }\n _write(chunk, encoding, callback) {\n this.bufferedBytes.push(chunk);\n callback();\n }\n}\n",
|
|
239
|
+
"import { Collector } from \"./collector\";\nexport const streamCollector = (stream) => {\n if (isReadableStreamInstance(stream)) {\n return collectReadableStream(stream);\n }\n return new Promise((resolve, reject) => {\n const collector = new Collector();\n stream.pipe(collector);\n stream.on(\"error\", (err) => {\n collector.end();\n reject(err);\n });\n collector.on(\"error\", reject);\n collector.on(\"finish\", function () {\n const bytes = new Uint8Array(Buffer.concat(this.bufferedBytes));\n resolve(bytes);\n });\n });\n};\nconst isReadableStreamInstance = (stream) => typeof ReadableStream === \"function\" && stream instanceof ReadableStream;\nasync function collectReadableStream(stream) {\n const chunks = [];\n const reader = stream.getReader();\n let isDone = false;\n let length = 0;\n while (!isDone) {\n const { done, value } = await reader.read();\n if (value) {\n chunks.push(value);\n length += value.length;\n }\n isDone = done;\n }\n const collected = new Uint8Array(length);\n let offset = 0;\n for (const chunk of chunks) {\n collected.set(chunk, offset);\n offset += chunk.length;\n }\n return collected;\n}\n",
|
|
240
|
+
"export * from \"./node-http-handler\";\nexport * from \"./node-http2-handler\";\nexport * from \"./stream-collector\";\n",
|
|
241
|
+
"import { HttpResponse } from \"@smithy/protocol-http\";\nimport { buildQueryString } from \"@smithy/querystring-builder\";\nimport { requestTimeout } from \"./request-timeout\";\nexport const keepAliveSupport = {\n supported: undefined,\n};\nexport class FetchHttpHandler {\n static create(instanceOrOptions) {\n if (typeof instanceOrOptions?.handle === \"function\") {\n return instanceOrOptions;\n }\n return new FetchHttpHandler(instanceOrOptions);\n }\n constructor(options) {\n if (typeof options === \"function\") {\n this.configProvider = options().then((opts) => opts || {});\n }\n else {\n this.config = options ?? {};\n this.configProvider = Promise.resolve(this.config);\n }\n if (keepAliveSupport.supported === undefined) {\n keepAliveSupport.supported = Boolean(typeof Request !== \"undefined\" && \"keepalive\" in new Request(\"https://[::1]\"));\n }\n }\n destroy() {\n }\n async handle(request, { abortSignal } = {}) {\n if (!this.config) {\n this.config = await this.configProvider;\n }\n const requestTimeoutInMs = this.config.requestTimeout;\n const keepAlive = this.config.keepAlive === true;\n const credentials = this.config.credentials;\n if (abortSignal?.aborted) {\n const abortError = new Error(\"Request aborted\");\n abortError.name = \"AbortError\";\n return Promise.reject(abortError);\n }\n let path = request.path;\n const queryString = buildQueryString(request.query || {});\n if (queryString) {\n path += `?${queryString}`;\n }\n if (request.fragment) {\n path += `#${request.fragment}`;\n }\n let auth = \"\";\n if (request.username != null || request.password != null) {\n const username = request.username ?? \"\";\n const password = request.password ?? \"\";\n auth = `${username}:${password}@`;\n }\n const { port, method } = request;\n const url = `${request.protocol}//${auth}${request.hostname}${port ? `:${port}` : \"\"}${path}`;\n const body = method === \"GET\" || method === \"HEAD\" ? undefined : request.body;\n const requestOptions = {\n body,\n headers: new Headers(request.headers),\n method: method,\n credentials,\n };\n if (body) {\n requestOptions.duplex = \"half\";\n }\n if (typeof AbortController !== \"undefined\") {\n requestOptions.signal = abortSignal;\n }\n if (keepAliveSupport.supported) {\n requestOptions.keepalive = keepAlive;\n }\n let removeSignalEventListener = () => { };\n const fetchRequest = new Request(url, requestOptions);\n const raceOfPromises = [\n fetch(fetchRequest).then((response) => {\n const fetchHeaders = response.headers;\n const transformedHeaders = {};\n for (const pair of fetchHeaders.entries()) {\n transformedHeaders[pair[0]] = pair[1];\n }\n const hasReadableStream = response.body != undefined;\n if (!hasReadableStream) {\n return response.blob().then((body) => ({\n response: new HttpResponse({\n headers: transformedHeaders,\n reason: response.statusText,\n statusCode: response.status,\n body,\n }),\n }));\n }\n return {\n response: new HttpResponse({\n headers: transformedHeaders,\n reason: response.statusText,\n statusCode: response.status,\n body: response.body,\n }),\n };\n }),\n requestTimeout(requestTimeoutInMs),\n ];\n if (abortSignal) {\n raceOfPromises.push(new Promise((resolve, reject) => {\n const onAbort = () => {\n const abortError = new Error(\"Request aborted\");\n abortError.name = \"AbortError\";\n reject(abortError);\n };\n if (typeof abortSignal.addEventListener === \"function\") {\n const signal = abortSignal;\n signal.addEventListener(\"abort\", onAbort, { once: true });\n removeSignalEventListener = () => signal.removeEventListener(\"abort\", onAbort);\n }\n else {\n abortSignal.onabort = onAbort;\n }\n }));\n }\n return Promise.race(raceOfPromises).finally(removeSignalEventListener);\n }\n updateHttpClientConfig(key, value) {\n this.config = undefined;\n this.configProvider = this.configProvider.then((config) => {\n config[key] = value;\n return config;\n });\n }\n httpHandlerConfigs() {\n return this.config ?? {};\n }\n}\n",
|
|
242
|
+
"import { fromBase64 } from \"@smithy/util-base64\";\nexport const streamCollector = (stream) => {\n if (typeof Blob === \"function\" && stream instanceof Blob) {\n return collectBlob(stream);\n }\n return collectStream(stream);\n};\nasync function collectBlob(blob) {\n const base64 = await readToBase64(blob);\n const arrayBuffer = fromBase64(base64);\n return new Uint8Array(arrayBuffer);\n}\nasync function collectStream(stream) {\n const chunks = [];\n const reader = stream.getReader();\n let isDone = false;\n let length = 0;\n while (!isDone) {\n const { done, value } = await reader.read();\n if (value) {\n chunks.push(value);\n length += value.length;\n }\n isDone = done;\n }\n const collected = new Uint8Array(length);\n let offset = 0;\n for (const chunk of chunks) {\n collected.set(chunk, offset);\n offset += chunk.length;\n }\n return collected;\n}\nfunction readToBase64(blob) {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.onloadend = () => {\n if (reader.readyState !== 2) {\n return reject(new Error(\"Reader aborted too early\"));\n }\n const result = (reader.result ?? \"\");\n const commaIndex = result.indexOf(\",\");\n const dataOffset = commaIndex > -1 ? commaIndex + 1 : result.length;\n resolve(result.substring(dataOffset));\n };\n reader.onabort = () => reject(new Error(\"Read aborted\"));\n reader.onerror = () => reject(reader.error);\n reader.readAsDataURL(blob);\n });\n}\n",
|
|
243
|
+
"export * from \"./fetch-http-handler\";\nexport * from \"./stream-collector\";\n",
|
|
244
|
+
"const SHORT_TO_HEX = {};\nconst HEX_TO_SHORT = {};\nfor (let i = 0; i < 256; i++) {\n let encodedByte = i.toString(16).toLowerCase();\n if (encodedByte.length === 1) {\n encodedByte = `0${encodedByte}`;\n }\n SHORT_TO_HEX[i] = encodedByte;\n HEX_TO_SHORT[encodedByte] = i;\n}\nexport function fromHex(encoded) {\n if (encoded.length % 2 !== 0) {\n throw new Error(\"Hex encoded strings must have an even number length\");\n }\n const out = new Uint8Array(encoded.length / 2);\n for (let i = 0; i < encoded.length; i += 2) {\n const encodedByte = encoded.slice(i, i + 2).toLowerCase();\n if (encodedByte in HEX_TO_SHORT) {\n out[i / 2] = HEX_TO_SHORT[encodedByte];\n }\n else {\n throw new Error(`Cannot decode unrecognized sequence ${encodedByte} as hexadecimal`);\n }\n }\n return out;\n}\nexport function toHex(bytes) {\n let out = \"\";\n for (let i = 0; i < bytes.byteLength; i++) {\n out += SHORT_TO_HEX[bytes[i]];\n }\n return out;\n}\n",
|
|
245
|
+
"export const isReadableStream = (stream) => typeof ReadableStream === \"function\" &&\n (stream?.constructor?.name === ReadableStream.name || stream instanceof ReadableStream);\n",
|
|
246
|
+
"import { streamCollector } from \"@smithy/fetch-http-handler\";\nimport { toBase64 } from \"@smithy/util-base64\";\nimport { toHex } from \"@smithy/util-hex-encoding\";\nimport { toUtf8 } from \"@smithy/util-utf8\";\nimport { isReadableStream } from \"./stream-type-check\";\nconst ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED = \"The stream has already been transformed.\";\nexport const sdkStreamMixin = (stream) => {\n if (!isBlobInstance(stream) && !isReadableStream(stream)) {\n const name = stream?.__proto__?.constructor?.name || stream;\n throw new Error(`Unexpected stream implementation, expect Blob or ReadableStream, got ${name}`);\n }\n let transformed = false;\n const transformToByteArray = async () => {\n if (transformed) {\n throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED);\n }\n transformed = true;\n return await streamCollector(stream);\n };\n const blobToWebStream = (blob) => {\n if (typeof blob.stream !== \"function\") {\n throw new Error(\"Cannot transform payload Blob to web stream. Please make sure the Blob.stream() is polyfilled.\\n\" +\n \"If you are using React Native, this API is not yet supported, see: https://react-native.canny.io/feature-requests/p/fetch-streaming-body\");\n }\n return blob.stream();\n };\n return Object.assign(stream, {\n transformToByteArray: transformToByteArray,\n transformToString: async (encoding) => {\n const buf = await transformToByteArray();\n if (encoding === \"base64\") {\n return toBase64(buf);\n }\n else if (encoding === \"hex\") {\n return toHex(buf);\n }\n else if (encoding === undefined || encoding === \"utf8\" || encoding === \"utf-8\") {\n return toUtf8(buf);\n }\n else if (typeof TextDecoder === \"function\") {\n return new TextDecoder(encoding).decode(buf);\n }\n else {\n throw new Error(\"TextDecoder is not available, please make sure polyfill is provided.\");\n }\n },\n transformToWebStream: () => {\n if (transformed) {\n throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED);\n }\n transformed = true;\n if (isBlobInstance(stream)) {\n return blobToWebStream(stream);\n }\n else if (isReadableStream(stream)) {\n return stream;\n }\n else {\n throw new Error(`Cannot transform payload to web stream, got ${stream}`);\n }\n },\n });\n};\nconst isBlobInstance = (stream) => typeof Blob === \"function\" && stream instanceof Blob;\n",
|
|
247
|
+
"import { streamCollector } from \"@smithy/node-http-handler\";\nimport { fromArrayBuffer } from \"@smithy/util-buffer-from\";\nimport { Readable } from \"stream\";\nimport { TextDecoder } from \"util\";\nimport { sdkStreamMixin as sdkStreamMixinReadableStream } from \"./sdk-stream-mixin.browser\";\nconst ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED = \"The stream has already been transformed.\";\nexport const sdkStreamMixin = (stream) => {\n if (!(stream instanceof Readable)) {\n try {\n return sdkStreamMixinReadableStream(stream);\n }\n catch (e) {\n const name = stream?.__proto__?.constructor?.name || stream;\n throw new Error(`Unexpected stream implementation, expect Stream.Readable instance, got ${name}`);\n }\n }\n let transformed = false;\n const transformToByteArray = async () => {\n if (transformed) {\n throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED);\n }\n transformed = true;\n return await streamCollector(stream);\n };\n return Object.assign(stream, {\n transformToByteArray,\n transformToString: async (encoding) => {\n const buf = await transformToByteArray();\n if (encoding === undefined || Buffer.isEncoding(encoding)) {\n return fromArrayBuffer(buf.buffer, buf.byteOffset, buf.byteLength).toString(encoding);\n }\n else {\n const decoder = new TextDecoder(encoding);\n return decoder.decode(buf);\n }\n },\n transformToWebStream: () => {\n if (transformed) {\n throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED);\n }\n if (stream.readableFlowing !== null) {\n throw new Error(\"The stream has been consumed by other callbacks.\");\n }\n if (typeof Readable.toWeb !== \"function\") {\n throw new Error(\"Readable.toWeb() is not supported. Please make sure you are using Node.js >= 17.0.0, or polyfill is available.\");\n }\n transformed = true;\n return Readable.toWeb(stream);\n },\n });\n};\n",
|
|
248
|
+
"export * from \"./blob/Uint8ArrayBlobAdapter\";\nexport * from \"./getAwsChunkedEncodingStream\";\nexport * from \"./sdk-stream-mixin\";\nexport * from \"./splitStream\";\nexport * from \"./headStream\";\nexport * from \"./stream-type-check\";\n",
|
|
249
|
+
"import { Uint8ArrayBlobAdapter } from \"@smithy/util-stream\";\nexport const collectBody = async (streamBody = new Uint8Array(), context) => {\n if (streamBody instanceof Uint8Array) {\n return Uint8ArrayBlobAdapter.mutate(streamBody);\n }\n if (!streamBody) {\n return Uint8ArrayBlobAdapter.mutate(new Uint8Array());\n }\n const fromContext = context.streamCollector(streamBody);\n return Uint8ArrayBlobAdapter.mutate(await fromContext);\n};\n",
|
|
250
|
+
"import { constructStack } from \"@smithy/middleware-stack\";\nimport { SMITHY_CONTEXT_KEY } from \"@smithy/types\";\nexport class Command {\n constructor() {\n this.middlewareStack = constructStack();\n }\n static classBuilder() {\n return new ClassBuilder();\n }\n resolveMiddlewareWithContext(clientStack, configuration, options, { middlewareFn, clientName, commandName, inputFilterSensitiveLog, outputFilterSensitiveLog, smithyContext, additionalContext, CommandCtor, }) {\n for (const mw of middlewareFn.bind(this)(CommandCtor, clientStack, configuration, options)) {\n this.middlewareStack.use(mw);\n }\n const stack = clientStack.concat(this.middlewareStack);\n const { logger } = configuration;\n const handlerExecutionContext = {\n logger,\n clientName,\n commandName,\n inputFilterSensitiveLog,\n outputFilterSensitiveLog,\n [SMITHY_CONTEXT_KEY]: {\n commandInstance: this,\n ...smithyContext,\n },\n ...additionalContext,\n };\n const { requestHandler } = configuration;\n return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext);\n }\n}\nclass ClassBuilder {\n constructor() {\n this._init = () => { };\n this._ep = {};\n this._middlewareFn = () => [];\n this._commandName = \"\";\n this._clientName = \"\";\n this._additionalContext = {};\n this._smithyContext = {};\n this._inputFilterSensitiveLog = (_) => _;\n this._outputFilterSensitiveLog = (_) => _;\n this._serializer = null;\n this._deserializer = null;\n }\n init(cb) {\n this._init = cb;\n }\n ep(endpointParameterInstructions) {\n this._ep = endpointParameterInstructions;\n return this;\n }\n m(middlewareSupplier) {\n this._middlewareFn = middlewareSupplier;\n return this;\n }\n s(service, operation, smithyContext = {}) {\n this._smithyContext = {\n service,\n operation,\n ...smithyContext,\n };\n return this;\n }\n c(additionalContext = {}) {\n this._additionalContext = additionalContext;\n return this;\n }\n n(clientName, commandName) {\n this._clientName = clientName;\n this._commandName = commandName;\n return this;\n }\n f(inputFilter = (_) => _, outputFilter = (_) => _) {\n this._inputFilterSensitiveLog = inputFilter;\n this._outputFilterSensitiveLog = outputFilter;\n return this;\n }\n ser(serializer) {\n this._serializer = serializer;\n return this;\n }\n de(deserializer) {\n this._deserializer = deserializer;\n return this;\n }\n build() {\n const closure = this;\n let CommandRef;\n return (CommandRef = class extends Command {\n static getEndpointParameterInstructions() {\n return closure._ep;\n }\n constructor(...[input]) {\n super();\n this.serialize = closure._serializer;\n this.deserialize = closure._deserializer;\n this.input = input ?? {};\n closure._init(this);\n }\n resolveMiddleware(stack, configuration, options) {\n return this.resolveMiddlewareWithContext(stack, configuration, options, {\n CommandCtor: CommandRef,\n middlewareFn: closure._middlewareFn,\n clientName: closure._clientName,\n commandName: closure._commandName,\n inputFilterSensitiveLog: closure._inputFilterSensitiveLog,\n outputFilterSensitiveLog: closure._outputFilterSensitiveLog,\n smithyContext: closure._smithyContext,\n additionalContext: closure._additionalContext,\n });\n }\n });\n }\n}\n",
|
|
251
|
+
"export const SENSITIVE_STRING = \"***SensitiveInformation***\";\n",
|
|
252
|
+
"export const createAggregatedClient = (commands, Client) => {\n for (const command of Object.keys(commands)) {\n const CommandCtor = commands[command];\n const methodImpl = async function (args, optionsOrCb, cb) {\n const command = new CommandCtor(args);\n if (typeof optionsOrCb === \"function\") {\n this.send(command, optionsOrCb);\n }\n else if (typeof cb === \"function\") {\n if (typeof optionsOrCb !== \"object\")\n throw new Error(`Expected http options but got ${typeof optionsOrCb}`);\n this.send(command, optionsOrCb || {}, cb);\n }\n else {\n return this.send(command, optionsOrCb);\n }\n };\n const methodName = (command[0].toLowerCase() + command.slice(1)).replace(/Command$/, \"\");\n Client.prototype[methodName] = methodImpl;\n }\n};\n",
|
|
253
|
+
"export const parseBoolean = (value) => {\n switch (value) {\n case \"true\":\n return true;\n case \"false\":\n return false;\n default:\n throw new Error(`Unable to parse boolean value \"${value}\"`);\n }\n};\nexport const expectBoolean = (value) => {\n if (value === null || value === undefined) {\n return undefined;\n }\n if (typeof value === \"number\") {\n if (value === 0 || value === 1) {\n logger.warn(stackTraceWarning(`Expected boolean, got ${typeof value}: ${value}`));\n }\n if (value === 0) {\n return false;\n }\n if (value === 1) {\n return true;\n }\n }\n if (typeof value === \"string\") {\n const lower = value.toLowerCase();\n if (lower === \"false\" || lower === \"true\") {\n logger.warn(stackTraceWarning(`Expected boolean, got ${typeof value}: ${value}`));\n }\n if (lower === \"false\") {\n return false;\n }\n if (lower === \"true\") {\n return true;\n }\n }\n if (typeof value === \"boolean\") {\n return value;\n }\n throw new TypeError(`Expected boolean, got ${typeof value}: ${value}`);\n};\nexport const expectNumber = (value) => {\n if (value === null || value === undefined) {\n return undefined;\n }\n if (typeof value === \"string\") {\n const parsed = parseFloat(value);\n if (!Number.isNaN(parsed)) {\n if (String(parsed) !== String(value)) {\n logger.warn(stackTraceWarning(`Expected number but observed string: ${value}`));\n }\n return parsed;\n }\n }\n if (typeof value === \"number\") {\n return value;\n }\n throw new TypeError(`Expected number, got ${typeof value}: ${value}`);\n};\nconst MAX_FLOAT = Math.ceil(2 ** 127 * (2 - 2 ** -23));\nexport const expectFloat32 = (value) => {\n const expected = expectNumber(value);\n if (expected !== undefined && !Number.isNaN(expected) && expected !== Infinity && expected !== -Infinity) {\n if (Math.abs(expected) > MAX_FLOAT) {\n throw new TypeError(`Expected 32-bit float, got ${value}`);\n }\n }\n return expected;\n};\nexport const expectLong = (value) => {\n if (value === null || value === undefined) {\n return undefined;\n }\n if (Number.isInteger(value) && !Number.isNaN(value)) {\n return value;\n }\n throw new TypeError(`Expected integer, got ${typeof value}: ${value}`);\n};\nexport const expectInt = expectLong;\nexport const expectInt32 = (value) => expectSizedInt(value, 32);\nexport const expectShort = (value) => expectSizedInt(value, 16);\nexport const expectByte = (value) => expectSizedInt(value, 8);\nconst expectSizedInt = (value, size) => {\n const expected = expectLong(value);\n if (expected !== undefined && castInt(expected, size) !== expected) {\n throw new TypeError(`Expected ${size}-bit integer, got ${value}`);\n }\n return expected;\n};\nconst castInt = (value, size) => {\n switch (size) {\n case 32:\n return Int32Array.of(value)[0];\n case 16:\n return Int16Array.of(value)[0];\n case 8:\n return Int8Array.of(value)[0];\n }\n};\nexport const expectNonNull = (value, location) => {\n if (value === null || value === undefined) {\n if (location) {\n throw new TypeError(`Expected a non-null value for ${location}`);\n }\n throw new TypeError(\"Expected a non-null value\");\n }\n return value;\n};\nexport const expectObject = (value) => {\n if (value === null || value === undefined) {\n return undefined;\n }\n if (typeof value === \"object\" && !Array.isArray(value)) {\n return value;\n }\n const receivedType = Array.isArray(value) ? \"array\" : typeof value;\n throw new TypeError(`Expected object, got ${receivedType}: ${value}`);\n};\nexport const expectString = (value) => {\n if (value === null || value === undefined) {\n return undefined;\n }\n if (typeof value === \"string\") {\n return value;\n }\n if ([\"boolean\", \"number\", \"bigint\"].includes(typeof value)) {\n logger.warn(stackTraceWarning(`Expected string, got ${typeof value}: ${value}`));\n return String(value);\n }\n throw new TypeError(`Expected string, got ${typeof value}: ${value}`);\n};\nexport const expectUnion = (value) => {\n if (value === null || value === undefined) {\n return undefined;\n }\n const asObject = expectObject(value);\n const setKeys = Object.entries(asObject)\n .filter(([, v]) => v != null)\n .map(([k]) => k);\n if (setKeys.length === 0) {\n throw new TypeError(`Unions must have exactly one non-null member. None were found.`);\n }\n if (setKeys.length > 1) {\n throw new TypeError(`Unions must have exactly one non-null member. Keys ${setKeys} were not null.`);\n }\n return asObject;\n};\nexport const strictParseDouble = (value) => {\n if (typeof value == \"string\") {\n return expectNumber(parseNumber(value));\n }\n return expectNumber(value);\n};\nexport const strictParseFloat = strictParseDouble;\nexport const strictParseFloat32 = (value) => {\n if (typeof value == \"string\") {\n return expectFloat32(parseNumber(value));\n }\n return expectFloat32(value);\n};\nconst NUMBER_REGEX = /(-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?)|(-?Infinity)|(NaN)/g;\nconst parseNumber = (value) => {\n const matches = value.match(NUMBER_REGEX);\n if (matches === null || matches[0].length !== value.length) {\n throw new TypeError(`Expected real number, got implicit NaN`);\n }\n return parseFloat(value);\n};\nexport const limitedParseDouble = (value) => {\n if (typeof value == \"string\") {\n return parseFloatString(value);\n }\n return expectNumber(value);\n};\nexport const handleFloat = limitedParseDouble;\nexport const limitedParseFloat = limitedParseDouble;\nexport const limitedParseFloat32 = (value) => {\n if (typeof value == \"string\") {\n return parseFloatString(value);\n }\n return expectFloat32(value);\n};\nconst parseFloatString = (value) => {\n switch (value) {\n case \"NaN\":\n return NaN;\n case \"Infinity\":\n return Infinity;\n case \"-Infinity\":\n return -Infinity;\n default:\n throw new Error(`Unable to parse float value: ${value}`);\n }\n};\nexport const strictParseLong = (value) => {\n if (typeof value === \"string\") {\n return expectLong(parseNumber(value));\n }\n return expectLong(value);\n};\nexport const strictParseInt = strictParseLong;\nexport const strictParseInt32 = (value) => {\n if (typeof value === \"string\") {\n return expectInt32(parseNumber(value));\n }\n return expectInt32(value);\n};\nexport const strictParseShort = (value) => {\n if (typeof value === \"string\") {\n return expectShort(parseNumber(value));\n }\n return expectShort(value);\n};\nexport const strictParseByte = (value) => {\n if (typeof value === \"string\") {\n return expectByte(parseNumber(value));\n }\n return expectByte(value);\n};\nconst stackTraceWarning = (message) => {\n return String(new TypeError(message).stack || message)\n .split(\"\\n\")\n .slice(0, 5)\n .filter((s) => !s.includes(\"stackTraceWarning\"))\n .join(\"\\n\");\n};\nexport const logger = {\n warn: console.warn,\n};\n",
|
|
254
|
+
"import { strictParseByte, strictParseDouble, strictParseFloat32, strictParseShort } from \"./parse-utils\";\nconst DAYS = [\"Sun\", \"Mon\", \"Tue\", \"Wed\", \"Thu\", \"Fri\", \"Sat\"];\nconst MONTHS = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\nexport function dateToUtcString(date) {\n const year = date.getUTCFullYear();\n const month = date.getUTCMonth();\n const dayOfWeek = date.getUTCDay();\n const dayOfMonthInt = date.getUTCDate();\n const hoursInt = date.getUTCHours();\n const minutesInt = date.getUTCMinutes();\n const secondsInt = date.getUTCSeconds();\n const dayOfMonthString = dayOfMonthInt < 10 ? `0${dayOfMonthInt}` : `${dayOfMonthInt}`;\n const hoursString = hoursInt < 10 ? `0${hoursInt}` : `${hoursInt}`;\n const minutesString = minutesInt < 10 ? `0${minutesInt}` : `${minutesInt}`;\n const secondsString = secondsInt < 10 ? `0${secondsInt}` : `${secondsInt}`;\n return `${DAYS[dayOfWeek]}, ${dayOfMonthString} ${MONTHS[month]} ${year} ${hoursString}:${minutesString}:${secondsString} GMT`;\n}\nconst RFC3339 = new RegExp(/^(\\d{4})-(\\d{2})-(\\d{2})[tT](\\d{2}):(\\d{2}):(\\d{2})(?:\\.(\\d+))?[zZ]$/);\nexport const parseRfc3339DateTime = (value) => {\n if (value === null || value === undefined) {\n return undefined;\n }\n if (typeof value !== \"string\") {\n throw new TypeError(\"RFC-3339 date-times must be expressed as strings\");\n }\n const match = RFC3339.exec(value);\n if (!match) {\n throw new TypeError(\"Invalid RFC-3339 date-time value\");\n }\n const [_, yearStr, monthStr, dayStr, hours, minutes, seconds, fractionalMilliseconds] = match;\n const year = strictParseShort(stripLeadingZeroes(yearStr));\n const month = parseDateValue(monthStr, \"month\", 1, 12);\n const day = parseDateValue(dayStr, \"day\", 1, 31);\n return buildDate(year, month, day, { hours, minutes, seconds, fractionalMilliseconds });\n};\nconst RFC3339_WITH_OFFSET = new RegExp(/^(\\d{4})-(\\d{2})-(\\d{2})[tT](\\d{2}):(\\d{2}):(\\d{2})(?:\\.(\\d+))?(([-+]\\d{2}\\:\\d{2})|[zZ])$/);\nexport const parseRfc3339DateTimeWithOffset = (value) => {\n if (value === null || value === undefined) {\n return undefined;\n }\n if (typeof value !== \"string\") {\n throw new TypeError(\"RFC-3339 date-times must be expressed as strings\");\n }\n const match = RFC3339_WITH_OFFSET.exec(value);\n if (!match) {\n throw new TypeError(\"Invalid RFC-3339 date-time value\");\n }\n const [_, yearStr, monthStr, dayStr, hours, minutes, seconds, fractionalMilliseconds, offsetStr] = match;\n const year = strictParseShort(stripLeadingZeroes(yearStr));\n const month = parseDateValue(monthStr, \"month\", 1, 12);\n const day = parseDateValue(dayStr, \"day\", 1, 31);\n const date = buildDate(year, month, day, { hours, minutes, seconds, fractionalMilliseconds });\n if (offsetStr.toUpperCase() != \"Z\") {\n date.setTime(date.getTime() - parseOffsetToMilliseconds(offsetStr));\n }\n return date;\n};\nconst IMF_FIXDATE = new RegExp(/^(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun), (\\d{2}) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (\\d{4}) (\\d{1,2}):(\\d{2}):(\\d{2})(?:\\.(\\d+))? GMT$/);\nconst RFC_850_DATE = new RegExp(/^(?:Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday), (\\d{2})-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\\d{2}) (\\d{1,2}):(\\d{2}):(\\d{2})(?:\\.(\\d+))? GMT$/);\nconst ASC_TIME = new RegExp(/^(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ( [1-9]|\\d{2}) (\\d{1,2}):(\\d{2}):(\\d{2})(?:\\.(\\d+))? (\\d{4})$/);\nexport const parseRfc7231DateTime = (value) => {\n if (value === null || value === undefined) {\n return undefined;\n }\n if (typeof value !== \"string\") {\n throw new TypeError(\"RFC-7231 date-times must be expressed as strings\");\n }\n let match = IMF_FIXDATE.exec(value);\n if (match) {\n const [_, dayStr, monthStr, yearStr, hours, minutes, seconds, fractionalMilliseconds] = match;\n return buildDate(strictParseShort(stripLeadingZeroes(yearStr)), parseMonthByShortName(monthStr), parseDateValue(dayStr, \"day\", 1, 31), { hours, minutes, seconds, fractionalMilliseconds });\n }\n match = RFC_850_DATE.exec(value);\n if (match) {\n const [_, dayStr, monthStr, yearStr, hours, minutes, seconds, fractionalMilliseconds] = match;\n return adjustRfc850Year(buildDate(parseTwoDigitYear(yearStr), parseMonthByShortName(monthStr), parseDateValue(dayStr, \"day\", 1, 31), {\n hours,\n minutes,\n seconds,\n fractionalMilliseconds,\n }));\n }\n match = ASC_TIME.exec(value);\n if (match) {\n const [_, monthStr, dayStr, hours, minutes, seconds, fractionalMilliseconds, yearStr] = match;\n return buildDate(strictParseShort(stripLeadingZeroes(yearStr)), parseMonthByShortName(monthStr), parseDateValue(dayStr.trimLeft(), \"day\", 1, 31), { hours, minutes, seconds, fractionalMilliseconds });\n }\n throw new TypeError(\"Invalid RFC-7231 date-time value\");\n};\nexport const parseEpochTimestamp = (value) => {\n if (value === null || value === undefined) {\n return undefined;\n }\n let valueAsDouble;\n if (typeof value === \"number\") {\n valueAsDouble = value;\n }\n else if (typeof value === \"string\") {\n valueAsDouble = strictParseDouble(value);\n }\n else if (typeof value === \"object\" && value.tag === 1) {\n valueAsDouble = value.value;\n }\n else {\n throw new TypeError(\"Epoch timestamps must be expressed as floating point numbers or their string representation\");\n }\n if (Number.isNaN(valueAsDouble) || valueAsDouble === Infinity || valueAsDouble === -Infinity) {\n throw new TypeError(\"Epoch timestamps must be valid, non-Infinite, non-NaN numerics\");\n }\n return new Date(Math.round(valueAsDouble * 1000));\n};\nconst buildDate = (year, month, day, time) => {\n const adjustedMonth = month - 1;\n validateDayOfMonth(year, adjustedMonth, day);\n return new Date(Date.UTC(year, adjustedMonth, day, parseDateValue(time.hours, \"hour\", 0, 23), parseDateValue(time.minutes, \"minute\", 0, 59), parseDateValue(time.seconds, \"seconds\", 0, 60), parseMilliseconds(time.fractionalMilliseconds)));\n};\nconst parseTwoDigitYear = (value) => {\n const thisYear = new Date().getUTCFullYear();\n const valueInThisCentury = Math.floor(thisYear / 100) * 100 + strictParseShort(stripLeadingZeroes(value));\n if (valueInThisCentury < thisYear) {\n return valueInThisCentury + 100;\n }\n return valueInThisCentury;\n};\nconst FIFTY_YEARS_IN_MILLIS = 50 * 365 * 24 * 60 * 60 * 1000;\nconst adjustRfc850Year = (input) => {\n if (input.getTime() - new Date().getTime() > FIFTY_YEARS_IN_MILLIS) {\n return new Date(Date.UTC(input.getUTCFullYear() - 100, input.getUTCMonth(), input.getUTCDate(), input.getUTCHours(), input.getUTCMinutes(), input.getUTCSeconds(), input.getUTCMilliseconds()));\n }\n return input;\n};\nconst parseMonthByShortName = (value) => {\n const monthIdx = MONTHS.indexOf(value);\n if (monthIdx < 0) {\n throw new TypeError(`Invalid month: ${value}`);\n }\n return monthIdx + 1;\n};\nconst DAYS_IN_MONTH = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];\nconst validateDayOfMonth = (year, month, day) => {\n let maxDays = DAYS_IN_MONTH[month];\n if (month === 1 && isLeapYear(year)) {\n maxDays = 29;\n }\n if (day > maxDays) {\n throw new TypeError(`Invalid day for ${MONTHS[month]} in ${year}: ${day}`);\n }\n};\nconst isLeapYear = (year) => {\n return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0);\n};\nconst parseDateValue = (value, type, lower, upper) => {\n const dateVal = strictParseByte(stripLeadingZeroes(value));\n if (dateVal < lower || dateVal > upper) {\n throw new TypeError(`${type} must be between ${lower} and ${upper}, inclusive`);\n }\n return dateVal;\n};\nconst parseMilliseconds = (value) => {\n if (value === null || value === undefined) {\n return 0;\n }\n return strictParseFloat32(\"0.\" + value) * 1000;\n};\nconst parseOffsetToMilliseconds = (value) => {\n const directionStr = value[0];\n let direction = 1;\n if (directionStr == \"+\") {\n direction = 1;\n }\n else if (directionStr == \"-\") {\n direction = -1;\n }\n else {\n throw new TypeError(`Offset direction, ${directionStr}, must be \"+\" or \"-\"`);\n }\n const hour = Number(value.substring(1, 3));\n const minute = Number(value.substring(4, 6));\n return direction * (hour * 60 + minute) * 60 * 1000;\n};\nconst stripLeadingZeroes = (value) => {\n let idx = 0;\n while (idx < value.length - 1 && value.charAt(idx) === \"0\") {\n idx++;\n }\n if (idx === 0) {\n return value;\n }\n return value.slice(idx);\n};\n",
|
|
255
|
+
"export class ServiceException extends Error {\n constructor(options) {\n super(options.message);\n Object.setPrototypeOf(this, ServiceException.prototype);\n this.name = options.name;\n this.$fault = options.$fault;\n this.$metadata = options.$metadata;\n }\n}\nexport const decorateServiceException = (exception, additions = {}) => {\n Object.entries(additions)\n .filter(([, v]) => v !== undefined)\n .forEach(([k, v]) => {\n if (exception[k] == undefined || exception[k] === \"\") {\n exception[k] = v;\n }\n });\n const message = exception.message || exception.Message || \"UnknownError\";\n exception.message = message;\n delete exception.Message;\n return exception;\n};\n",
|
|
256
|
+
"import { decorateServiceException } from \"./exceptions\";\nexport const throwDefaultError = ({ output, parsedBody, exceptionCtor, errorCode }) => {\n const $metadata = deserializeMetadata(output);\n const statusCode = $metadata.httpStatusCode ? $metadata.httpStatusCode + \"\" : undefined;\n const response = new exceptionCtor({\n name: parsedBody?.code || parsedBody?.Code || errorCode || statusCode || \"UnknownError\",\n $fault: \"client\",\n $metadata,\n });\n throw decorateServiceException(response, parsedBody);\n};\nexport const withBaseException = (ExceptionCtor) => {\n return ({ output, parsedBody, errorCode }) => {\n throwDefaultError({ output, parsedBody, exceptionCtor: ExceptionCtor, errorCode });\n };\n};\nconst deserializeMetadata = (output) => ({\n httpStatusCode: output.statusCode,\n requestId: output.headers[\"x-amzn-requestid\"] ?? output.headers[\"x-amzn-request-id\"] ?? output.headers[\"x-amz-request-id\"],\n extendedRequestId: output.headers[\"x-amz-id-2\"],\n cfId: output.headers[\"x-amz-cf-id\"],\n});\n",
|
|
257
|
+
"export const loadConfigsForDefaultMode = (mode) => {\n switch (mode) {\n case \"standard\":\n return {\n retryMode: \"standard\",\n connectionTimeout: 3100,\n };\n case \"in-region\":\n return {\n retryMode: \"standard\",\n connectionTimeout: 1100,\n };\n case \"cross-region\":\n return {\n retryMode: \"standard\",\n connectionTimeout: 3100,\n };\n case \"mobile\":\n return {\n retryMode: \"standard\",\n connectionTimeout: 30000,\n };\n default:\n return {};\n }\n};\n",
|
|
258
|
+
"let warningEmitted = false;\nexport const emitWarningIfUnsupportedVersion = (version) => {\n if (version && !warningEmitted && parseInt(version.substring(1, version.indexOf(\".\"))) < 16) {\n warningEmitted = true;\n }\n};\n",
|
|
259
|
+
"import { AlgorithmId } from \"@smithy/types\";\nexport { AlgorithmId };\nexport const getChecksumConfiguration = (runtimeConfig) => {\n const checksumAlgorithms = [];\n for (const id in AlgorithmId) {\n const algorithmId = AlgorithmId[id];\n if (runtimeConfig[algorithmId] === undefined) {\n continue;\n }\n checksumAlgorithms.push({\n algorithmId: () => algorithmId,\n checksumConstructor: () => runtimeConfig[algorithmId],\n });\n }\n return {\n _checksumAlgorithms: checksumAlgorithms,\n addChecksumAlgorithm(algo) {\n this._checksumAlgorithms.push(algo);\n },\n checksumAlgorithms() {\n return this._checksumAlgorithms;\n },\n };\n};\nexport const resolveChecksumRuntimeConfig = (clientConfig) => {\n const runtimeConfig = {};\n clientConfig.checksumAlgorithms().forEach((checksumAlgorithm) => {\n runtimeConfig[checksumAlgorithm.algorithmId()] = checksumAlgorithm.checksumConstructor();\n });\n return runtimeConfig;\n};\n",
|
|
260
|
+
"export const getRetryConfiguration = (runtimeConfig) => {\n let _retryStrategy = runtimeConfig.retryStrategy;\n return {\n setRetryStrategy(retryStrategy) {\n _retryStrategy = retryStrategy;\n },\n retryStrategy() {\n return _retryStrategy;\n },\n };\n};\nexport const resolveRetryRuntimeConfig = (retryStrategyConfiguration) => {\n const runtimeConfig = {};\n runtimeConfig.retryStrategy = retryStrategyConfiguration.retryStrategy();\n return runtimeConfig;\n};\n",
|
|
261
|
+
"import { getChecksumConfiguration, resolveChecksumRuntimeConfig } from \"./checksum\";\nimport { getRetryConfiguration, resolveRetryRuntimeConfig } from \"./retry\";\nexport const getDefaultExtensionConfiguration = (runtimeConfig) => {\n return {\n ...getChecksumConfiguration(runtimeConfig),\n ...getRetryConfiguration(runtimeConfig),\n };\n};\nexport const getDefaultClientConfiguration = getDefaultExtensionConfiguration;\nexport const resolveDefaultRuntimeConfig = (config) => {\n return {\n ...resolveChecksumRuntimeConfig(config),\n ...resolveRetryRuntimeConfig(config),\n };\n};\n",
|
|
262
|
+
"export * from \"./defaultExtensionConfiguration\";\n",
|
|
263
|
+
"export function extendedEncodeURIComponent(str) {\n return encodeURIComponent(str).replace(/[!'()*]/g, function (c) {\n return \"%\" + c.charCodeAt(0).toString(16).toUpperCase();\n });\n}\n",
|
|
264
|
+
"export const StringWrapper = function () {\n const Class = Object.getPrototypeOf(this).constructor;\n const Constructor = Function.bind.apply(String, [null, ...arguments]);\n const instance = new Constructor();\n Object.setPrototypeOf(instance, Class.prototype);\n return instance;\n};\nStringWrapper.prototype = Object.create(String.prototype, {\n constructor: {\n value: StringWrapper,\n enumerable: false,\n writable: true,\n configurable: true,\n },\n});\nObject.setPrototypeOf(StringWrapper, String);\nexport class LazyJsonString extends StringWrapper {\n deserializeJSON() {\n return JSON.parse(super.toString());\n }\n toJSON() {\n return super.toString();\n }\n static fromObject(object) {\n if (object instanceof LazyJsonString) {\n return object;\n }\n else if (object instanceof String || typeof object === \"string\") {\n return new LazyJsonString(object);\n }\n return new LazyJsonString(JSON.stringify(object));\n }\n}\n",
|
|
265
|
+
"export function map(arg0, arg1, arg2) {\n let target;\n let filter;\n let instructions;\n if (typeof arg1 === \"undefined\" && typeof arg2 === \"undefined\") {\n target = {};\n instructions = arg0;\n }\n else {\n target = arg0;\n if (typeof arg1 === \"function\") {\n filter = arg1;\n instructions = arg2;\n return mapWithFilter(target, filter, instructions);\n }\n else {\n instructions = arg1;\n }\n }\n for (const key of Object.keys(instructions)) {\n if (!Array.isArray(instructions[key])) {\n target[key] = instructions[key];\n continue;\n }\n applyInstruction(target, null, instructions, key);\n }\n return target;\n}\nexport const convertMap = (target) => {\n const output = {};\n for (const [k, v] of Object.entries(target || {})) {\n output[k] = [, v];\n }\n return output;\n};\nexport const take = (source, instructions) => {\n const out = {};\n for (const key in instructions) {\n applyInstruction(out, source, instructions, key);\n }\n return out;\n};\nconst mapWithFilter = (target, filter, instructions) => {\n return map(target, Object.entries(instructions).reduce((_instructions, [key, value]) => {\n if (Array.isArray(value)) {\n _instructions[key] = value;\n }\n else {\n if (typeof value === \"function\") {\n _instructions[key] = [filter, value()];\n }\n else {\n _instructions[key] = [filter, value];\n }\n }\n return _instructions;\n }, {}));\n};\nconst applyInstruction = (target, source, instructions, targetKey) => {\n if (source !== null) {\n let instruction = instructions[targetKey];\n if (typeof instruction === \"function\") {\n instruction = [, instruction];\n }\n const [filter = nonNullish, valueFn = pass, sourceKey = targetKey] = instruction;\n if ((typeof filter === \"function\" && filter(source[sourceKey])) || (typeof filter !== \"function\" && !!filter)) {\n target[targetKey] = valueFn(source[sourceKey]);\n }\n return;\n }\n let [filter, value] = instructions[targetKey];\n if (typeof value === \"function\") {\n let _value;\n const defaultFilterPassed = filter === undefined && (_value = value()) != null;\n const customFilterPassed = (typeof filter === \"function\" && !!filter(void 0)) || (typeof filter !== \"function\" && !!filter);\n if (defaultFilterPassed) {\n target[targetKey] = _value;\n }\n else if (customFilterPassed) {\n target[targetKey] = value();\n }\n }\n else {\n const defaultFilterPassed = filter === undefined && value != null;\n const customFilterPassed = (typeof filter === \"function\" && !!filter(value)) || (typeof filter !== \"function\" && !!filter);\n if (defaultFilterPassed || customFilterPassed) {\n target[targetKey] = value;\n }\n }\n};\nconst nonNullish = (_) => _ != null;\nconst pass = (_) => _;\n",
|
|
266
|
+
"export const serializeFloat = (value) => {\n if (value !== value) {\n return \"NaN\";\n }\n switch (value) {\n case Infinity:\n return \"Infinity\";\n case -Infinity:\n return \"-Infinity\";\n default:\n return value;\n }\n};\nexport const serializeDateTime = (date) => date.toISOString().replace(\".000Z\", \"Z\");\n",
|
|
267
|
+
"export const _json = (obj) => {\n if (obj == null) {\n return {};\n }\n if (Array.isArray(obj)) {\n return obj.filter((_) => _ != null).map(_json);\n }\n if (typeof obj === \"object\") {\n const target = {};\n for (const key of Object.keys(obj)) {\n if (obj[key] == null) {\n continue;\n }\n target[key] = _json(obj[key]);\n }\n return target;\n }\n return obj;\n};\n",
|
|
268
|
+
"export * from \"./NoOpLogger\";\nexport * from \"./client\";\nexport * from \"./collect-stream-body\";\nexport * from \"./command\";\nexport * from \"./constants\";\nexport * from \"./create-aggregated-client\";\nexport * from \"./date-utils\";\nexport * from \"./default-error-handler\";\nexport * from \"./defaults-mode\";\nexport * from \"./emitWarningIfUnsupportedVersion\";\nexport * from \"./extensions\";\nexport * from \"./exceptions\";\nexport * from \"./extended-encode-uri-component\";\nexport * from \"./get-array-if-single-item\";\nexport * from \"./get-value-from-text-node\";\nexport * from \"./lazy-json\";\nexport * from \"./object-mapping\";\nexport * from \"./parse-utils\";\nexport * from \"./resolve-path\";\nexport * from \"./ser-utils\";\nexport * from \"./serde-json\";\nexport * from \"./split-every\";\n",
|
|
269
|
+
"import { Readable } from \"stream\";\nexport const isStreamingPayload = (request) => request?.body instanceof Readable ||\n (typeof ReadableStream !== \"undefined\" && request?.body instanceof ReadableStream);\n",
|
|
270
|
+
"import { HttpRequest, HttpResponse } from \"@smithy/protocol-http\";\nimport { isServerError, isThrottlingError, isTransientError } from \"@smithy/service-error-classification\";\nimport { NoOpLogger } from \"@smithy/smithy-client\";\nimport { INVOCATION_ID_HEADER, REQUEST_HEADER } from \"@smithy/util-retry\";\nimport { v4 } from \"uuid\";\nimport { isStreamingPayload } from \"./isStreamingPayload/isStreamingPayload\";\nimport { asSdkError } from \"./util\";\nexport const retryMiddleware = (options) => (next, context) => async (args) => {\n let retryStrategy = await options.retryStrategy();\n const maxAttempts = await options.maxAttempts();\n if (isRetryStrategyV2(retryStrategy)) {\n retryStrategy = retryStrategy;\n let retryToken = await retryStrategy.acquireInitialRetryToken(context[\"partition_id\"]);\n let lastError = new Error();\n let attempts = 0;\n let totalRetryDelay = 0;\n const { request } = args;\n const isRequest = HttpRequest.isInstance(request);\n if (isRequest) {\n request.headers[INVOCATION_ID_HEADER] = v4();\n }\n while (true) {\n try {\n if (isRequest) {\n request.headers[REQUEST_HEADER] = `attempt=${attempts + 1}; max=${maxAttempts}`;\n }\n const { response, output } = await next(args);\n retryStrategy.recordSuccess(retryToken);\n output.$metadata.attempts = attempts + 1;\n output.$metadata.totalRetryDelay = totalRetryDelay;\n return { response, output };\n }\n catch (e) {\n const retryErrorInfo = getRetryErrorInfo(e);\n lastError = asSdkError(e);\n if (isRequest && isStreamingPayload(request)) {\n (context.logger instanceof NoOpLogger ? console : context.logger)?.warn(\"An error was encountered in a non-retryable streaming request.\");\n throw lastError;\n }\n try {\n retryToken = await retryStrategy.refreshRetryTokenForRetry(retryToken, retryErrorInfo);\n }\n catch (refreshError) {\n if (!lastError.$metadata) {\n lastError.$metadata = {};\n }\n lastError.$metadata.attempts = attempts + 1;\n lastError.$metadata.totalRetryDelay = totalRetryDelay;\n throw lastError;\n }\n attempts = retryToken.getRetryCount();\n const delay = retryToken.getRetryDelay();\n totalRetryDelay += delay;\n await new Promise((resolve) => setTimeout(resolve, delay));\n }\n }\n }\n else {\n retryStrategy = retryStrategy;\n if (retryStrategy?.mode)\n context.userAgent = [...(context.userAgent || []), [\"cfg/retry-mode\", retryStrategy.mode]];\n return retryStrategy.retry(next, args);\n }\n};\nconst isRetryStrategyV2 = (retryStrategy) => typeof retryStrategy.acquireInitialRetryToken !== \"undefined\" &&\n typeof retryStrategy.refreshRetryTokenForRetry !== \"undefined\" &&\n typeof retryStrategy.recordSuccess !== \"undefined\";\nconst getRetryErrorInfo = (error) => {\n const errorInfo = {\n error,\n errorType: getRetryErrorType(error),\n };\n const retryAfterHint = getRetryAfterHint(error.$response);\n if (retryAfterHint) {\n errorInfo.retryAfterHint = retryAfterHint;\n }\n return errorInfo;\n};\nconst getRetryErrorType = (error) => {\n if (isThrottlingError(error))\n return \"THROTTLING\";\n if (isTransientError(error))\n return \"TRANSIENT\";\n if (isServerError(error))\n return \"SERVER_ERROR\";\n return \"CLIENT_ERROR\";\n};\nexport const retryMiddlewareOptions = {\n name: \"retryMiddleware\",\n tags: [\"RETRY\"],\n step: \"finalizeRequest\",\n priority: \"high\",\n override: true,\n};\nexport const getRetryPlugin = (options) => ({\n applyToStack: (clientStack) => {\n clientStack.add(retryMiddleware(options), retryMiddlewareOptions);\n },\n});\nexport const getRetryAfterHint = (response) => {\n if (!HttpResponse.isInstance(response))\n return;\n const retryAfterHeaderName = Object.keys(response.headers).find((key) => key.toLowerCase() === \"retry-after\");\n if (!retryAfterHeaderName)\n return;\n const retryAfter = response.headers[retryAfterHeaderName];\n const retryAfterSeconds = Number(retryAfter);\n if (!Number.isNaN(retryAfterSeconds))\n return new Date(retryAfterSeconds * 1000);\n const retryAfterDate = new Date(retryAfter);\n return retryAfterDate;\n};\n",
|
|
271
|
+
"export * from \"./AdaptiveRetryStrategy\";\nexport * from \"./StandardRetryStrategy\";\nexport * from \"./configurations\";\nexport * from \"./delayDecider\";\nexport * from \"./omitRetryHeadersMiddleware\";\nexport * from \"./retryDecider\";\nexport * from \"./retryMiddleware\";\n",
|
|
272
|
+
"/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global global, define, Symbol, Reflect, Promise, SuppressedError */\r\nvar __extends;\r\nvar __assign;\r\nvar __rest;\r\nvar __decorate;\r\nvar __param;\r\nvar __esDecorate;\r\nvar __runInitializers;\r\nvar __propKey;\r\nvar __setFunctionName;\r\nvar __metadata;\r\nvar __awaiter;\r\nvar __generator;\r\nvar __exportStar;\r\nvar __values;\r\nvar __read;\r\nvar __spread;\r\nvar __spreadArrays;\r\nvar __spreadArray;\r\nvar __await;\r\nvar __asyncGenerator;\r\nvar __asyncDelegator;\r\nvar __asyncValues;\r\nvar __makeTemplateObject;\r\nvar __importStar;\r\nvar __importDefault;\r\nvar __classPrivateFieldGet;\r\nvar __classPrivateFieldSet;\r\nvar __classPrivateFieldIn;\r\nvar __createBinding;\r\nvar __addDisposableResource;\r\nvar __disposeResources;\r\n(function (factory) {\r\n var root = typeof global === \"object\" ? global : typeof self === \"object\" ? self : typeof this === \"object\" ? this : {};\r\n if (typeof define === \"function\" && define.amd) {\r\n define(\"tslib\", [\"exports\"], function (exports) { factory(createExporter(root, createExporter(exports))); });\r\n }\r\n else if (typeof module === \"object\" && typeof module.exports === \"object\") {\r\n factory(createExporter(root, createExporter(module.exports)));\r\n }\r\n else {\r\n factory(createExporter(root));\r\n }\r\n function createExporter(exports, previous) {\r\n if (exports !== root) {\r\n if (typeof Object.create === \"function\") {\r\n Object.defineProperty(exports, \"__esModule\", { value: true });\r\n }\r\n else {\r\n exports.__esModule = true;\r\n }\r\n }\r\n return function (id, v) { return exports[id] = previous ? previous(id, v) : v; };\r\n }\r\n})\r\n(function (exporter) {\r\n var extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n\r\n __extends = function (d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n\r\n __assign = Object.assign || function (t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n };\r\n\r\n __rest = function (s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n };\r\n\r\n __decorate = function (decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n };\r\n\r\n __param = function (paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n };\r\n\r\n __esDecorate = function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n };\r\n\r\n __runInitializers = function (thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n };\r\n\r\n __propKey = function (x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n };\r\n\r\n __setFunctionName = function (f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n };\r\n\r\n __metadata = function (metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n };\r\n\r\n __awaiter = function (thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n };\r\n\r\n __generator = function (thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n };\r\n\r\n __exportStar = function(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n };\r\n\r\n __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n }) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n });\r\n\r\n __values = function (o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n };\r\n\r\n __read = function (o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n };\r\n\r\n /** @deprecated */\r\n __spread = function () {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n };\r\n\r\n /** @deprecated */\r\n __spreadArrays = function () {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n };\r\n\r\n __spreadArray = function (to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n };\r\n\r\n __await = function (v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n };\r\n\r\n __asyncGenerator = function (thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\r\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n };\r\n\r\n __asyncDelegator = function (o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n };\r\n\r\n __asyncValues = function (o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n };\r\n\r\n __makeTemplateObject = function (cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n };\r\n\r\n var __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n }) : function(o, v) {\r\n o[\"default\"] = v;\r\n };\r\n\r\n __importStar = function (mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n };\r\n\r\n __importDefault = function (mod) {\r\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\r\n };\r\n\r\n __classPrivateFieldGet = function (receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n };\r\n\r\n __classPrivateFieldSet = function (receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n };\r\n\r\n __classPrivateFieldIn = function (state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n };\r\n\r\n __addDisposableResource = function (env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose, inner;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n if (async) inner = dispose;\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n };\r\n\r\n var _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n };\r\n\r\n __disposeResources = function (env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n function next() {\r\n while (env.stack.length) {\r\n var rec = env.stack.pop();\r\n try {\r\n var result = rec.dispose && rec.dispose.call(rec.value);\r\n if (rec.async) return Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n };\r\n\r\n exporter(\"__extends\", __extends);\r\n exporter(\"__assign\", __assign);\r\n exporter(\"__rest\", __rest);\r\n exporter(\"__decorate\", __decorate);\r\n exporter(\"__param\", __param);\r\n exporter(\"__esDecorate\", __esDecorate);\r\n exporter(\"__runInitializers\", __runInitializers);\r\n exporter(\"__propKey\", __propKey);\r\n exporter(\"__setFunctionName\", __setFunctionName);\r\n exporter(\"__metadata\", __metadata);\r\n exporter(\"__awaiter\", __awaiter);\r\n exporter(\"__generator\", __generator);\r\n exporter(\"__exportStar\", __exportStar);\r\n exporter(\"__createBinding\", __createBinding);\r\n exporter(\"__values\", __values);\r\n exporter(\"__read\", __read);\r\n exporter(\"__spread\", __spread);\r\n exporter(\"__spreadArrays\", __spreadArrays);\r\n exporter(\"__spreadArray\", __spreadArray);\r\n exporter(\"__await\", __await);\r\n exporter(\"__asyncGenerator\", __asyncGenerator);\r\n exporter(\"__asyncDelegator\", __asyncDelegator);\r\n exporter(\"__asyncValues\", __asyncValues);\r\n exporter(\"__makeTemplateObject\", __makeTemplateObject);\r\n exporter(\"__importStar\", __importStar);\r\n exporter(\"__importDefault\", __importDefault);\r\n exporter(\"__classPrivateFieldGet\", __classPrivateFieldGet);\r\n exporter(\"__classPrivateFieldSet\", __classPrivateFieldSet);\r\n exporter(\"__classPrivateFieldIn\", __classPrivateFieldIn);\r\n exporter(\"__addDisposableResource\", __addDisposableResource);\r\n exporter(\"__disposeResources\", __disposeResources);\r\n});\r\n",
|
|
273
|
+
"\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __name = (target, value) => __defProp(target, \"name\", { value, configurable: true });\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/submodules/client/index.ts\nvar client_exports = {};\n__export(client_exports, {\n emitWarningIfUnsupportedVersion: () => emitWarningIfUnsupportedVersion\n});\nmodule.exports = __toCommonJS(client_exports);\n\n// src/submodules/client/emitWarningIfUnsupportedVersion.ts\nvar warningEmitted = false;\nvar emitWarningIfUnsupportedVersion = /* @__PURE__ */ __name((version) => {\n if (version && !warningEmitted && parseInt(version.substring(1, version.indexOf(\".\"))) < 18) {\n warningEmitted = true;\n process.emitWarning(\n `NodeDeprecationWarning: The AWS SDK for JavaScript (v3) will\nno longer support Node.js 16.x on January 6, 2025.\n\nTo continue receiving updates to AWS services, bug fixes, and security\nupdates please upgrade to a supported Node.js LTS version.\n\nMore information can be found at: https://a.co/74kJMmI`\n );\n }\n}, \"emitWarningIfUnsupportedVersion\");\n// Annotate the CommonJS export names for ESM import in node:\n0 && (module.exports = {\n emitWarningIfUnsupportedVersion\n});\n",
|
|
274
|
+
"var __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __name = (target, value) => __defProp(target, \"name\", { value, configurable: true });\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/index.ts\nvar src_exports = {};\n__export(src_exports, {\n SignatureV4: () => SignatureV4,\n clearCredentialCache: () => clearCredentialCache,\n createScope: () => createScope,\n getCanonicalHeaders: () => getCanonicalHeaders,\n getCanonicalQuery: () => getCanonicalQuery,\n getPayloadHash: () => getPayloadHash,\n getSigningKey: () => getSigningKey,\n moveHeadersToQuery: () => moveHeadersToQuery,\n prepareRequest: () => prepareRequest\n});\nmodule.exports = __toCommonJS(src_exports);\n\n// src/SignatureV4.ts\n\nvar import_util_middleware = require(\"@smithy/util-middleware\");\n\nvar import_util_utf84 = require(\"@smithy/util-utf8\");\n\n// src/constants.ts\nvar ALGORITHM_QUERY_PARAM = \"X-Amz-Algorithm\";\nvar CREDENTIAL_QUERY_PARAM = \"X-Amz-Credential\";\nvar AMZ_DATE_QUERY_PARAM = \"X-Amz-Date\";\nvar SIGNED_HEADERS_QUERY_PARAM = \"X-Amz-SignedHeaders\";\nvar EXPIRES_QUERY_PARAM = \"X-Amz-Expires\";\nvar SIGNATURE_QUERY_PARAM = \"X-Amz-Signature\";\nvar TOKEN_QUERY_PARAM = \"X-Amz-Security-Token\";\nvar AUTH_HEADER = \"authorization\";\nvar AMZ_DATE_HEADER = AMZ_DATE_QUERY_PARAM.toLowerCase();\nvar DATE_HEADER = \"date\";\nvar GENERATED_HEADERS = [AUTH_HEADER, AMZ_DATE_HEADER, DATE_HEADER];\nvar SIGNATURE_HEADER = SIGNATURE_QUERY_PARAM.toLowerCase();\nvar SHA256_HEADER = \"x-amz-content-sha256\";\nvar TOKEN_HEADER = TOKEN_QUERY_PARAM.toLowerCase();\nvar ALWAYS_UNSIGNABLE_HEADERS = {\n authorization: true,\n \"cache-control\": true,\n connection: true,\n expect: true,\n from: true,\n \"keep-alive\": true,\n \"max-forwards\": true,\n pragma: true,\n referer: true,\n te: true,\n trailer: true,\n \"transfer-encoding\": true,\n upgrade: true,\n \"user-agent\": true,\n \"x-amzn-trace-id\": true\n};\nvar PROXY_HEADER_PATTERN = /^proxy-/;\nvar SEC_HEADER_PATTERN = /^sec-/;\nvar ALGORITHM_IDENTIFIER = \"AWS4-HMAC-SHA256\";\nvar EVENT_ALGORITHM_IDENTIFIER = \"AWS4-HMAC-SHA256-PAYLOAD\";\nvar UNSIGNED_PAYLOAD = \"UNSIGNED-PAYLOAD\";\nvar MAX_CACHE_SIZE = 50;\nvar KEY_TYPE_IDENTIFIER = \"aws4_request\";\nvar MAX_PRESIGNED_TTL = 60 * 60 * 24 * 7;\n\n// src/credentialDerivation.ts\nvar import_util_hex_encoding = require(\"@smithy/util-hex-encoding\");\nvar import_util_utf8 = require(\"@smithy/util-utf8\");\nvar signingKeyCache = {};\nvar cacheQueue = [];\nvar createScope = /* @__PURE__ */ __name((shortDate, region, service) => `${shortDate}/${region}/${service}/${KEY_TYPE_IDENTIFIER}`, \"createScope\");\nvar getSigningKey = /* @__PURE__ */ __name(async (sha256Constructor, credentials, shortDate, region, service) => {\n const credsHash = await hmac(sha256Constructor, credentials.secretAccessKey, credentials.accessKeyId);\n const cacheKey = `${shortDate}:${region}:${service}:${(0, import_util_hex_encoding.toHex)(credsHash)}:${credentials.sessionToken}`;\n if (cacheKey in signingKeyCache) {\n return signingKeyCache[cacheKey];\n }\n cacheQueue.push(cacheKey);\n while (cacheQueue.length > MAX_CACHE_SIZE) {\n delete signingKeyCache[cacheQueue.shift()];\n }\n let key = `AWS4${credentials.secretAccessKey}`;\n for (const signable of [shortDate, region, service, KEY_TYPE_IDENTIFIER]) {\n key = await hmac(sha256Constructor, key, signable);\n }\n return signingKeyCache[cacheKey] = key;\n}, \"getSigningKey\");\nvar clearCredentialCache = /* @__PURE__ */ __name(() => {\n cacheQueue.length = 0;\n Object.keys(signingKeyCache).forEach((cacheKey) => {\n delete signingKeyCache[cacheKey];\n });\n}, \"clearCredentialCache\");\nvar hmac = /* @__PURE__ */ __name((ctor, secret, data) => {\n const hash = new ctor(secret);\n hash.update((0, import_util_utf8.toUint8Array)(data));\n return hash.digest();\n}, \"hmac\");\n\n// src/getCanonicalHeaders.ts\nvar getCanonicalHeaders = /* @__PURE__ */ __name(({ headers }, unsignableHeaders, signableHeaders) => {\n const canonical = {};\n for (const headerName of Object.keys(headers).sort()) {\n if (headers[headerName] == void 0) {\n continue;\n }\n const canonicalHeaderName = headerName.toLowerCase();\n if (canonicalHeaderName in ALWAYS_UNSIGNABLE_HEADERS || (unsignableHeaders == null ? void 0 : unsignableHeaders.has(canonicalHeaderName)) || PROXY_HEADER_PATTERN.test(canonicalHeaderName) || SEC_HEADER_PATTERN.test(canonicalHeaderName)) {\n if (!signableHeaders || signableHeaders && !signableHeaders.has(canonicalHeaderName)) {\n continue;\n }\n }\n canonical[canonicalHeaderName] = headers[headerName].trim().replace(/\\s+/g, \" \");\n }\n return canonical;\n}, \"getCanonicalHeaders\");\n\n// src/getCanonicalQuery.ts\nvar import_util_uri_escape = require(\"@smithy/util-uri-escape\");\nvar getCanonicalQuery = /* @__PURE__ */ __name(({ query = {} }) => {\n const keys = [];\n const serialized = {};\n for (const key of Object.keys(query).sort()) {\n if (key.toLowerCase() === SIGNATURE_HEADER) {\n continue;\n }\n keys.push(key);\n const value = query[key];\n if (typeof value === \"string\") {\n serialized[key] = `${(0, import_util_uri_escape.escapeUri)(key)}=${(0, import_util_uri_escape.escapeUri)(value)}`;\n } else if (Array.isArray(value)) {\n serialized[key] = value.slice(0).reduce(\n (encoded, value2) => encoded.concat([`${(0, import_util_uri_escape.escapeUri)(key)}=${(0, import_util_uri_escape.escapeUri)(value2)}`]),\n []\n ).sort().join(\"&\");\n }\n }\n return keys.map((key) => serialized[key]).filter((serialized2) => serialized2).join(\"&\");\n}, \"getCanonicalQuery\");\n\n// src/getPayloadHash.ts\nvar import_is_array_buffer = require(\"@smithy/is-array-buffer\");\n\nvar import_util_utf82 = require(\"@smithy/util-utf8\");\nvar getPayloadHash = /* @__PURE__ */ __name(async ({ headers, body }, hashConstructor) => {\n for (const headerName of Object.keys(headers)) {\n if (headerName.toLowerCase() === SHA256_HEADER) {\n return headers[headerName];\n }\n }\n if (body == void 0) {\n return \"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855\";\n } else if (typeof body === \"string\" || ArrayBuffer.isView(body) || (0, import_is_array_buffer.isArrayBuffer)(body)) {\n const hashCtor = new hashConstructor();\n hashCtor.update((0, import_util_utf82.toUint8Array)(body));\n return (0, import_util_hex_encoding.toHex)(await hashCtor.digest());\n }\n return UNSIGNED_PAYLOAD;\n}, \"getPayloadHash\");\n\n// src/HeaderFormatter.ts\n\nvar import_util_utf83 = require(\"@smithy/util-utf8\");\nvar _HeaderFormatter = class _HeaderFormatter {\n format(headers) {\n const chunks = [];\n for (const headerName of Object.keys(headers)) {\n const bytes = (0, import_util_utf83.fromUtf8)(headerName);\n chunks.push(Uint8Array.from([bytes.byteLength]), bytes, this.formatHeaderValue(headers[headerName]));\n }\n const out = new Uint8Array(chunks.reduce((carry, bytes) => carry + bytes.byteLength, 0));\n let position = 0;\n for (const chunk of chunks) {\n out.set(chunk, position);\n position += chunk.byteLength;\n }\n return out;\n }\n formatHeaderValue(header) {\n switch (header.type) {\n case \"boolean\":\n return Uint8Array.from([header.value ? 0 /* boolTrue */ : 1 /* boolFalse */]);\n case \"byte\":\n return Uint8Array.from([2 /* byte */, header.value]);\n case \"short\":\n const shortView = new DataView(new ArrayBuffer(3));\n shortView.setUint8(0, 3 /* short */);\n shortView.setInt16(1, header.value, false);\n return new Uint8Array(shortView.buffer);\n case \"integer\":\n const intView = new DataView(new ArrayBuffer(5));\n intView.setUint8(0, 4 /* integer */);\n intView.setInt32(1, header.value, false);\n return new Uint8Array(intView.buffer);\n case \"long\":\n const longBytes = new Uint8Array(9);\n longBytes[0] = 5 /* long */;\n longBytes.set(header.value.bytes, 1);\n return longBytes;\n case \"binary\":\n const binView = new DataView(new ArrayBuffer(3 + header.value.byteLength));\n binView.setUint8(0, 6 /* byteArray */);\n binView.setUint16(1, header.value.byteLength, false);\n const binBytes = new Uint8Array(binView.buffer);\n binBytes.set(header.value, 3);\n return binBytes;\n case \"string\":\n const utf8Bytes = (0, import_util_utf83.fromUtf8)(header.value);\n const strView = new DataView(new ArrayBuffer(3 + utf8Bytes.byteLength));\n strView.setUint8(0, 7 /* string */);\n strView.setUint16(1, utf8Bytes.byteLength, false);\n const strBytes = new Uint8Array(strView.buffer);\n strBytes.set(utf8Bytes, 3);\n return strBytes;\n case \"timestamp\":\n const tsBytes = new Uint8Array(9);\n tsBytes[0] = 8 /* timestamp */;\n tsBytes.set(Int64.fromNumber(header.value.valueOf()).bytes, 1);\n return tsBytes;\n case \"uuid\":\n if (!UUID_PATTERN.test(header.value)) {\n throw new Error(`Invalid UUID received: ${header.value}`);\n }\n const uuidBytes = new Uint8Array(17);\n uuidBytes[0] = 9 /* uuid */;\n uuidBytes.set((0, import_util_hex_encoding.fromHex)(header.value.replace(/\\-/g, \"\")), 1);\n return uuidBytes;\n }\n }\n};\n__name(_HeaderFormatter, \"HeaderFormatter\");\nvar HeaderFormatter = _HeaderFormatter;\nvar UUID_PATTERN = /^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/;\nvar _Int64 = class _Int64 {\n constructor(bytes) {\n this.bytes = bytes;\n if (bytes.byteLength !== 8) {\n throw new Error(\"Int64 buffers must be exactly 8 bytes\");\n }\n }\n static fromNumber(number) {\n if (number > 9223372036854776e3 || number < -9223372036854776e3) {\n throw new Error(`${number} is too large (or, if negative, too small) to represent as an Int64`);\n }\n const bytes = new Uint8Array(8);\n for (let i = 7, remaining = Math.abs(Math.round(number)); i > -1 && remaining > 0; i--, remaining /= 256) {\n bytes[i] = remaining;\n }\n if (number < 0) {\n negate(bytes);\n }\n return new _Int64(bytes);\n }\n /**\n * Called implicitly by infix arithmetic operators.\n */\n valueOf() {\n const bytes = this.bytes.slice(0);\n const negative = bytes[0] & 128;\n if (negative) {\n negate(bytes);\n }\n return parseInt((0, import_util_hex_encoding.toHex)(bytes), 16) * (negative ? -1 : 1);\n }\n toString() {\n return String(this.valueOf());\n }\n};\n__name(_Int64, \"Int64\");\nvar Int64 = _Int64;\nfunction negate(bytes) {\n for (let i = 0; i < 8; i++) {\n bytes[i] ^= 255;\n }\n for (let i = 7; i > -1; i--) {\n bytes[i]++;\n if (bytes[i] !== 0)\n break;\n }\n}\n__name(negate, \"negate\");\n\n// src/headerUtil.ts\nvar hasHeader = /* @__PURE__ */ __name((soughtHeader, headers) => {\n soughtHeader = soughtHeader.toLowerCase();\n for (const headerName of Object.keys(headers)) {\n if (soughtHeader === headerName.toLowerCase()) {\n return true;\n }\n }\n return false;\n}, \"hasHeader\");\n\n// src/moveHeadersToQuery.ts\nvar import_protocol_http = require(\"@smithy/protocol-http\");\nvar moveHeadersToQuery = /* @__PURE__ */ __name((request, options = {}) => {\n var _a;\n const { headers, query = {} } = import_protocol_http.HttpRequest.clone(request);\n for (const name of Object.keys(headers)) {\n const lname = name.toLowerCase();\n if (lname.slice(0, 6) === \"x-amz-\" && !((_a = options.unhoistableHeaders) == null ? void 0 : _a.has(lname))) {\n query[name] = headers[name];\n delete headers[name];\n }\n }\n return {\n ...request,\n headers,\n query\n };\n}, \"moveHeadersToQuery\");\n\n// src/prepareRequest.ts\n\nvar prepareRequest = /* @__PURE__ */ __name((request) => {\n request = import_protocol_http.HttpRequest.clone(request);\n for (const headerName of Object.keys(request.headers)) {\n if (GENERATED_HEADERS.indexOf(headerName.toLowerCase()) > -1) {\n delete request.headers[headerName];\n }\n }\n return request;\n}, \"prepareRequest\");\n\n// src/utilDate.ts\nvar iso8601 = /* @__PURE__ */ __name((time) => toDate(time).toISOString().replace(/\\.\\d{3}Z$/, \"Z\"), \"iso8601\");\nvar toDate = /* @__PURE__ */ __name((time) => {\n if (typeof time === \"number\") {\n return new Date(time * 1e3);\n }\n if (typeof time === \"string\") {\n if (Number(time)) {\n return new Date(Number(time) * 1e3);\n }\n return new Date(time);\n }\n return time;\n}, \"toDate\");\n\n// src/SignatureV4.ts\nvar _SignatureV4 = class _SignatureV4 {\n constructor({\n applyChecksum,\n credentials,\n region,\n service,\n sha256,\n uriEscapePath = true\n }) {\n this.headerFormatter = new HeaderFormatter();\n this.service = service;\n this.sha256 = sha256;\n this.uriEscapePath = uriEscapePath;\n this.applyChecksum = typeof applyChecksum === \"boolean\" ? applyChecksum : true;\n this.regionProvider = (0, import_util_middleware.normalizeProvider)(region);\n this.credentialProvider = (0, import_util_middleware.normalizeProvider)(credentials);\n }\n async presign(originalRequest, options = {}) {\n const {\n signingDate = /* @__PURE__ */ new Date(),\n expiresIn = 3600,\n unsignableHeaders,\n unhoistableHeaders,\n signableHeaders,\n signingRegion,\n signingService\n } = options;\n const credentials = await this.credentialProvider();\n this.validateResolvedCredentials(credentials);\n const region = signingRegion ?? await this.regionProvider();\n const { longDate, shortDate } = formatDate(signingDate);\n if (expiresIn > MAX_PRESIGNED_TTL) {\n return Promise.reject(\n \"Signature version 4 presigned URLs must have an expiration date less than one week in the future\"\n );\n }\n const scope = createScope(shortDate, region, signingService ?? this.service);\n const request = moveHeadersToQuery(prepareRequest(originalRequest), { unhoistableHeaders });\n if (credentials.sessionToken) {\n request.query[TOKEN_QUERY_PARAM] = credentials.sessionToken;\n }\n request.query[ALGORITHM_QUERY_PARAM] = ALGORITHM_IDENTIFIER;\n request.query[CREDENTIAL_QUERY_PARAM] = `${credentials.accessKeyId}/${scope}`;\n request.query[AMZ_DATE_QUERY_PARAM] = longDate;\n request.query[EXPIRES_QUERY_PARAM] = expiresIn.toString(10);\n const canonicalHeaders = getCanonicalHeaders(request, unsignableHeaders, signableHeaders);\n request.query[SIGNED_HEADERS_QUERY_PARAM] = getCanonicalHeaderList(canonicalHeaders);\n request.query[SIGNATURE_QUERY_PARAM] = await this.getSignature(\n longDate,\n scope,\n this.getSigningKey(credentials, region, shortDate, signingService),\n this.createCanonicalRequest(request, canonicalHeaders, await getPayloadHash(originalRequest, this.sha256))\n );\n return request;\n }\n async sign(toSign, options) {\n if (typeof toSign === \"string\") {\n return this.signString(toSign, options);\n } else if (toSign.headers && toSign.payload) {\n return this.signEvent(toSign, options);\n } else if (toSign.message) {\n return this.signMessage(toSign, options);\n } else {\n return this.signRequest(toSign, options);\n }\n }\n async signEvent({ headers, payload }, { signingDate = /* @__PURE__ */ new Date(), priorSignature, signingRegion, signingService }) {\n const region = signingRegion ?? await this.regionProvider();\n const { shortDate, longDate } = formatDate(signingDate);\n const scope = createScope(shortDate, region, signingService ?? this.service);\n const hashedPayload = await getPayloadHash({ headers: {}, body: payload }, this.sha256);\n const hash = new this.sha256();\n hash.update(headers);\n const hashedHeaders = (0, import_util_hex_encoding.toHex)(await hash.digest());\n const stringToSign = [\n EVENT_ALGORITHM_IDENTIFIER,\n longDate,\n scope,\n priorSignature,\n hashedHeaders,\n hashedPayload\n ].join(\"\\n\");\n return this.signString(stringToSign, { signingDate, signingRegion: region, signingService });\n }\n async signMessage(signableMessage, { signingDate = /* @__PURE__ */ new Date(), signingRegion, signingService }) {\n const promise = this.signEvent(\n {\n headers: this.headerFormatter.format(signableMessage.message.headers),\n payload: signableMessage.message.body\n },\n {\n signingDate,\n signingRegion,\n signingService,\n priorSignature: signableMessage.priorSignature\n }\n );\n return promise.then((signature) => {\n return { message: signableMessage.message, signature };\n });\n }\n async signString(stringToSign, { signingDate = /* @__PURE__ */ new Date(), signingRegion, signingService } = {}) {\n const credentials = await this.credentialProvider();\n this.validateResolvedCredentials(credentials);\n const region = signingRegion ?? await this.regionProvider();\n const { shortDate } = formatDate(signingDate);\n const hash = new this.sha256(await this.getSigningKey(credentials, region, shortDate, signingService));\n hash.update((0, import_util_utf84.toUint8Array)(stringToSign));\n return (0, import_util_hex_encoding.toHex)(await hash.digest());\n }\n async signRequest(requestToSign, {\n signingDate = /* @__PURE__ */ new Date(),\n signableHeaders,\n unsignableHeaders,\n signingRegion,\n signingService\n } = {}) {\n const credentials = await this.credentialProvider();\n this.validateResolvedCredentials(credentials);\n const region = signingRegion ?? await this.regionProvider();\n const request = prepareRequest(requestToSign);\n const { longDate, shortDate } = formatDate(signingDate);\n const scope = createScope(shortDate, region, signingService ?? this.service);\n request.headers[AMZ_DATE_HEADER] = longDate;\n if (credentials.sessionToken) {\n request.headers[TOKEN_HEADER] = credentials.sessionToken;\n }\n const payloadHash = await getPayloadHash(request, this.sha256);\n if (!hasHeader(SHA256_HEADER, request.headers) && this.applyChecksum) {\n request.headers[SHA256_HEADER] = payloadHash;\n }\n const canonicalHeaders = getCanonicalHeaders(request, unsignableHeaders, signableHeaders);\n const signature = await this.getSignature(\n longDate,\n scope,\n this.getSigningKey(credentials, region, shortDate, signingService),\n this.createCanonicalRequest(request, canonicalHeaders, payloadHash)\n );\n request.headers[AUTH_HEADER] = `${ALGORITHM_IDENTIFIER} Credential=${credentials.accessKeyId}/${scope}, SignedHeaders=${getCanonicalHeaderList(canonicalHeaders)}, Signature=${signature}`;\n return request;\n }\n createCanonicalRequest(request, canonicalHeaders, payloadHash) {\n const sortedHeaders = Object.keys(canonicalHeaders).sort();\n return `${request.method}\n${this.getCanonicalPath(request)}\n${getCanonicalQuery(request)}\n${sortedHeaders.map((name) => `${name}:${canonicalHeaders[name]}`).join(\"\\n\")}\n\n${sortedHeaders.join(\";\")}\n${payloadHash}`;\n }\n async createStringToSign(longDate, credentialScope, canonicalRequest) {\n const hash = new this.sha256();\n hash.update((0, import_util_utf84.toUint8Array)(canonicalRequest));\n const hashedRequest = await hash.digest();\n return `${ALGORITHM_IDENTIFIER}\n${longDate}\n${credentialScope}\n${(0, import_util_hex_encoding.toHex)(hashedRequest)}`;\n }\n getCanonicalPath({ path }) {\n if (this.uriEscapePath) {\n const normalizedPathSegments = [];\n for (const pathSegment of path.split(\"/\")) {\n if ((pathSegment == null ? void 0 : pathSegment.length) === 0)\n continue;\n if (pathSegment === \".\")\n continue;\n if (pathSegment === \"..\") {\n normalizedPathSegments.pop();\n } else {\n normalizedPathSegments.push(pathSegment);\n }\n }\n const normalizedPath = `${(path == null ? void 0 : path.startsWith(\"/\")) ? \"/\" : \"\"}${normalizedPathSegments.join(\"/\")}${normalizedPathSegments.length > 0 && (path == null ? void 0 : path.endsWith(\"/\")) ? \"/\" : \"\"}`;\n const doubleEncoded = (0, import_util_uri_escape.escapeUri)(normalizedPath);\n return doubleEncoded.replace(/%2F/g, \"/\");\n }\n return path;\n }\n async getSignature(longDate, credentialScope, keyPromise, canonicalRequest) {\n const stringToSign = await this.createStringToSign(longDate, credentialScope, canonicalRequest);\n const hash = new this.sha256(await keyPromise);\n hash.update((0, import_util_utf84.toUint8Array)(stringToSign));\n return (0, import_util_hex_encoding.toHex)(await hash.digest());\n }\n getSigningKey(credentials, region, shortDate, service) {\n return getSigningKey(this.sha256, credentials, shortDate, region, service || this.service);\n }\n validateResolvedCredentials(credentials) {\n if (typeof credentials !== \"object\" || // @ts-expect-error: Property 'accessKeyId' does not exist on type 'object'.ts(2339)\n typeof credentials.accessKeyId !== \"string\" || // @ts-expect-error: Property 'secretAccessKey' does not exist on type 'object'.ts(2339)\n typeof credentials.secretAccessKey !== \"string\") {\n throw new Error(\"Resolved credential object is not valid\");\n }\n }\n};\n__name(_SignatureV4, \"SignatureV4\");\nvar SignatureV4 = _SignatureV4;\nvar formatDate = /* @__PURE__ */ __name((now) => {\n const longDate = iso8601(now).replace(/[\\-:]/g, \"\");\n return {\n longDate,\n shortDate: longDate.slice(0, 8)\n };\n}, \"formatDate\");\nvar getCanonicalHeaderList = /* @__PURE__ */ __name((headers) => Object.keys(headers).sort().join(\";\"), \"getCanonicalHeaderList\");\n// Annotate the CommonJS export names for ESM import in node:\n\n0 && (module.exports = {\n getCanonicalHeaders,\n getCanonicalQuery,\n getPayloadHash,\n moveHeadersToQuery,\n prepareRequest,\n SignatureV4,\n createScope,\n getSigningKey,\n clearCredentialCache\n});\n\n",
|
|
275
|
+
"\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __name = (target, value) => __defProp(target, \"name\", { value, configurable: true });\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/submodules/httpAuthSchemes/index.ts\nvar httpAuthSchemes_exports = {};\n__export(httpAuthSchemes_exports, {\n AWSSDKSigV4Signer: () => AWSSDKSigV4Signer,\n AwsSdkSigV4ASigner: () => AwsSdkSigV4ASigner,\n AwsSdkSigV4Signer: () => AwsSdkSigV4Signer,\n NODE_SIGV4A_CONFIG_OPTIONS: () => NODE_SIGV4A_CONFIG_OPTIONS,\n resolveAWSSDKSigV4Config: () => resolveAWSSDKSigV4Config,\n resolveAwsSdkSigV4AConfig: () => resolveAwsSdkSigV4AConfig,\n resolveAwsSdkSigV4Config: () => resolveAwsSdkSigV4Config,\n validateSigningProperties: () => validateSigningProperties\n});\nmodule.exports = __toCommonJS(httpAuthSchemes_exports);\n\n// src/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4Signer.ts\nvar import_protocol_http2 = require(\"@smithy/protocol-http\");\n\n// src/submodules/httpAuthSchemes/utils/getDateHeader.ts\nvar import_protocol_http = require(\"@smithy/protocol-http\");\nvar getDateHeader = /* @__PURE__ */ __name((response) => {\n var _a, _b;\n return import_protocol_http.HttpResponse.isInstance(response) ? ((_a = response.headers) == null ? void 0 : _a.date) ?? ((_b = response.headers) == null ? void 0 : _b.Date) : void 0;\n}, \"getDateHeader\");\n\n// src/submodules/httpAuthSchemes/utils/getSkewCorrectedDate.ts\nvar getSkewCorrectedDate = /* @__PURE__ */ __name((systemClockOffset) => new Date(Date.now() + systemClockOffset), \"getSkewCorrectedDate\");\n\n// src/submodules/httpAuthSchemes/utils/isClockSkewed.ts\nvar isClockSkewed = /* @__PURE__ */ __name((clockTime, systemClockOffset) => Math.abs(getSkewCorrectedDate(systemClockOffset).getTime() - clockTime) >= 3e5, \"isClockSkewed\");\n\n// src/submodules/httpAuthSchemes/utils/getUpdatedSystemClockOffset.ts\nvar getUpdatedSystemClockOffset = /* @__PURE__ */ __name((clockTime, currentSystemClockOffset) => {\n const clockTimeInMs = Date.parse(clockTime);\n if (isClockSkewed(clockTimeInMs, currentSystemClockOffset)) {\n return clockTimeInMs - Date.now();\n }\n return currentSystemClockOffset;\n}, \"getUpdatedSystemClockOffset\");\n\n// src/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4Signer.ts\nvar throwSigningPropertyError = /* @__PURE__ */ __name((name, property) => {\n if (!property) {\n throw new Error(`Property \\`${name}\\` is not resolved for AWS SDK SigV4Auth`);\n }\n return property;\n}, \"throwSigningPropertyError\");\nvar validateSigningProperties = /* @__PURE__ */ __name(async (signingProperties) => {\n var _a, _b, _c;\n const context = throwSigningPropertyError(\n \"context\",\n signingProperties.context\n );\n const config = throwSigningPropertyError(\"config\", signingProperties.config);\n const authScheme = (_c = (_b = (_a = context.endpointV2) == null ? void 0 : _a.properties) == null ? void 0 : _b.authSchemes) == null ? void 0 : _c[0];\n const signerFunction = throwSigningPropertyError(\n \"signer\",\n config.signer\n );\n const signer = await signerFunction(authScheme);\n const signingRegion = signingProperties == null ? void 0 : signingProperties.signingRegion;\n const signingRegionSet = signingProperties == null ? void 0 : signingProperties.signingRegionSet;\n const signingName = signingProperties == null ? void 0 : signingProperties.signingName;\n return {\n config,\n signer,\n signingRegion,\n signingRegionSet,\n signingName\n };\n}, \"validateSigningProperties\");\nvar _AwsSdkSigV4Signer = class _AwsSdkSigV4Signer {\n async sign(httpRequest, identity, signingProperties) {\n var _a;\n if (!import_protocol_http2.HttpRequest.isInstance(httpRequest)) {\n throw new Error(\"The request is not an instance of `HttpRequest` and cannot be signed\");\n }\n const validatedProps = await validateSigningProperties(signingProperties);\n const { config, signer } = validatedProps;\n let { signingRegion, signingName } = validatedProps;\n const handlerExecutionContext = signingProperties.context;\n if (((_a = handlerExecutionContext == null ? void 0 : handlerExecutionContext.authSchemes) == null ? void 0 : _a.length) ?? 0 > 1) {\n const [first, second] = handlerExecutionContext.authSchemes;\n if ((first == null ? void 0 : first.name) === \"sigv4a\" && (second == null ? void 0 : second.name) === \"sigv4\") {\n signingRegion = (second == null ? void 0 : second.signingRegion) ?? signingRegion;\n signingName = (second == null ? void 0 : second.signingName) ?? signingName;\n }\n }\n const signedRequest = await signer.sign(httpRequest, {\n signingDate: getSkewCorrectedDate(config.systemClockOffset),\n signingRegion,\n signingService: signingName\n });\n return signedRequest;\n }\n errorHandler(signingProperties) {\n return (error) => {\n const serverTime = error.ServerTime ?? getDateHeader(error.$response);\n if (serverTime) {\n const config = throwSigningPropertyError(\"config\", signingProperties.config);\n const initialSystemClockOffset = config.systemClockOffset;\n config.systemClockOffset = getUpdatedSystemClockOffset(serverTime, config.systemClockOffset);\n const clockSkewCorrected = config.systemClockOffset !== initialSystemClockOffset;\n if (clockSkewCorrected && error.$metadata) {\n error.$metadata.clockSkewCorrected = true;\n }\n }\n throw error;\n };\n }\n successHandler(httpResponse, signingProperties) {\n const dateHeader = getDateHeader(httpResponse);\n if (dateHeader) {\n const config = throwSigningPropertyError(\"config\", signingProperties.config);\n config.systemClockOffset = getUpdatedSystemClockOffset(dateHeader, config.systemClockOffset);\n }\n }\n};\n__name(_AwsSdkSigV4Signer, \"AwsSdkSigV4Signer\");\nvar AwsSdkSigV4Signer = _AwsSdkSigV4Signer;\nvar AWSSDKSigV4Signer = AwsSdkSigV4Signer;\n\n// src/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4ASigner.ts\nvar import_protocol_http3 = require(\"@smithy/protocol-http\");\nvar _AwsSdkSigV4ASigner = class _AwsSdkSigV4ASigner extends AwsSdkSigV4Signer {\n async sign(httpRequest, identity, signingProperties) {\n var _a;\n if (!import_protocol_http3.HttpRequest.isInstance(httpRequest)) {\n throw new Error(\"The request is not an instance of `HttpRequest` and cannot be signed\");\n }\n const { config, signer, signingRegion, signingRegionSet, signingName } = await validateSigningProperties(\n signingProperties\n );\n const configResolvedSigningRegionSet = await ((_a = config.sigv4aSigningRegionSet) == null ? void 0 : _a.call(config));\n const multiRegionOverride = (configResolvedSigningRegionSet ?? signingRegionSet ?? [signingRegion]).join(\",\");\n const signedRequest = await signer.sign(httpRequest, {\n signingDate: getSkewCorrectedDate(config.systemClockOffset),\n signingRegion: multiRegionOverride,\n signingService: signingName\n });\n return signedRequest;\n }\n};\n__name(_AwsSdkSigV4ASigner, \"AwsSdkSigV4ASigner\");\nvar AwsSdkSigV4ASigner = _AwsSdkSigV4ASigner;\n\n// src/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4AConfig.ts\nvar import_core = require(\"@smithy/core\");\nvar import_property_provider = require(\"@smithy/property-provider\");\nvar resolveAwsSdkSigV4AConfig = /* @__PURE__ */ __name((config) => {\n config.sigv4aSigningRegionSet = (0, import_core.normalizeProvider)(config.sigv4aSigningRegionSet);\n return config;\n}, \"resolveAwsSdkSigV4AConfig\");\nvar NODE_SIGV4A_CONFIG_OPTIONS = {\n environmentVariableSelector(env) {\n if (env.AWS_SIGV4A_SIGNING_REGION_SET) {\n return env.AWS_SIGV4A_SIGNING_REGION_SET.split(\",\").map((_) => _.trim());\n }\n throw new import_property_provider.ProviderError(\"AWS_SIGV4A_SIGNING_REGION_SET not set in env.\", {\n tryNextLink: true\n });\n },\n configFileSelector(profile) {\n if (profile.sigv4a_signing_region_set) {\n return (profile.sigv4a_signing_region_set ?? \"\").split(\",\").map((_) => _.trim());\n }\n throw new import_property_provider.ProviderError(\"sigv4a_signing_region_set not set in profile.\", {\n tryNextLink: true\n });\n },\n default: void 0\n};\n\n// src/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4Config.ts\nvar import_core2 = require(\"@smithy/core\");\nvar import_signature_v4 = require(\"@smithy/signature-v4\");\nvar resolveAwsSdkSigV4Config = /* @__PURE__ */ __name((config) => {\n let normalizedCreds;\n if (config.credentials) {\n normalizedCreds = (0, import_core2.memoizeIdentityProvider)(config.credentials, import_core2.isIdentityExpired, import_core2.doesIdentityRequireRefresh);\n }\n if (!normalizedCreds) {\n if (config.credentialDefaultProvider) {\n normalizedCreds = (0, import_core2.normalizeProvider)(\n config.credentialDefaultProvider(\n Object.assign({}, config, {\n parentClientConfig: config\n })\n )\n );\n } else {\n normalizedCreds = /* @__PURE__ */ __name(async () => {\n throw new Error(\"`credentials` is missing\");\n }, \"normalizedCreds\");\n }\n }\n const {\n // Default for signingEscapePath\n signingEscapePath = true,\n // Default for systemClockOffset\n systemClockOffset = config.systemClockOffset || 0,\n // No default for sha256 since it is platform dependent\n sha256\n } = config;\n let signer;\n if (config.signer) {\n signer = (0, import_core2.normalizeProvider)(config.signer);\n } else if (config.regionInfoProvider) {\n signer = /* @__PURE__ */ __name(() => (0, import_core2.normalizeProvider)(config.region)().then(\n async (region) => [\n await config.regionInfoProvider(region, {\n useFipsEndpoint: await config.useFipsEndpoint(),\n useDualstackEndpoint: await config.useDualstackEndpoint()\n }) || {},\n region\n ]\n ).then(([regionInfo, region]) => {\n const { signingRegion, signingService } = regionInfo;\n config.signingRegion = config.signingRegion || signingRegion || region;\n config.signingName = config.signingName || signingService || config.serviceId;\n const params = {\n ...config,\n credentials: normalizedCreds,\n region: config.signingRegion,\n service: config.signingName,\n sha256,\n uriEscapePath: signingEscapePath\n };\n const SignerCtor = config.signerConstructor || import_signature_v4.SignatureV4;\n return new SignerCtor(params);\n }), \"signer\");\n } else {\n signer = /* @__PURE__ */ __name(async (authScheme) => {\n authScheme = Object.assign(\n {},\n {\n name: \"sigv4\",\n signingName: config.signingName || config.defaultSigningName,\n signingRegion: await (0, import_core2.normalizeProvider)(config.region)(),\n properties: {}\n },\n authScheme\n );\n const signingRegion = authScheme.signingRegion;\n const signingService = authScheme.signingName;\n config.signingRegion = config.signingRegion || signingRegion;\n config.signingName = config.signingName || signingService || config.serviceId;\n const params = {\n ...config,\n credentials: normalizedCreds,\n region: config.signingRegion,\n service: config.signingName,\n sha256,\n uriEscapePath: signingEscapePath\n };\n const SignerCtor = config.signerConstructor || import_signature_v4.SignatureV4;\n return new SignerCtor(params);\n }, \"signer\");\n }\n return {\n ...config,\n systemClockOffset,\n signingEscapePath,\n credentials: normalizedCreds,\n signer\n };\n}, \"resolveAwsSdkSigV4Config\");\nvar resolveAWSSDKSigV4Config = resolveAwsSdkSigV4Config;\n// Annotate the CommonJS export names for ESM import in node:\n0 && (module.exports = {\n AWSSDKSigV4Signer,\n AwsSdkSigV4ASigner,\n AwsSdkSigV4Signer,\n NODE_SIGV4A_CONFIG_OPTIONS,\n resolveAWSSDKSigV4Config,\n resolveAwsSdkSigV4AConfig,\n resolveAwsSdkSigV4Config,\n validateSigningProperties\n});\n",
|
|
276
|
+
"'use strict';\n\nconst nameStartChar = ':A-Za-z_\\\\u00C0-\\\\u00D6\\\\u00D8-\\\\u00F6\\\\u00F8-\\\\u02FF\\\\u0370-\\\\u037D\\\\u037F-\\\\u1FFF\\\\u200C-\\\\u200D\\\\u2070-\\\\u218F\\\\u2C00-\\\\u2FEF\\\\u3001-\\\\uD7FF\\\\uF900-\\\\uFDCF\\\\uFDF0-\\\\uFFFD';\nconst nameChar = nameStartChar + '\\\\-.\\\\d\\\\u00B7\\\\u0300-\\\\u036F\\\\u203F-\\\\u2040';\nconst nameRegexp = '[' + nameStartChar + '][' + nameChar + ']*'\nconst regexName = new RegExp('^' + nameRegexp + '$');\n\nconst getAllMatches = function(string, regex) {\n const matches = [];\n let match = regex.exec(string);\n while (match) {\n const allmatches = [];\n allmatches.startIndex = regex.lastIndex - match[0].length;\n const len = match.length;\n for (let index = 0; index < len; index++) {\n allmatches.push(match[index]);\n }\n matches.push(allmatches);\n match = regex.exec(string);\n }\n return matches;\n};\n\nconst isName = function(string) {\n const match = regexName.exec(string);\n return !(match === null || typeof match === 'undefined');\n};\n\nexports.isExist = function(v) {\n return typeof v !== 'undefined';\n};\n\nexports.isEmptyObject = function(obj) {\n return Object.keys(obj).length === 0;\n};\n\n/**\n * Copy all the properties of a into b.\n * @param {*} target\n * @param {*} a\n */\nexports.merge = function(target, a, arrayMode) {\n if (a) {\n const keys = Object.keys(a); // will return an array of own properties\n const len = keys.length; //don't make it inline\n for (let i = 0; i < len; i++) {\n if (arrayMode === 'strict') {\n target[keys[i]] = [ a[keys[i]] ];\n } else {\n target[keys[i]] = a[keys[i]];\n }\n }\n }\n};\n/* exports.merge =function (b,a){\n return Object.assign(b,a);\n} */\n\nexports.getValue = function(v) {\n if (exports.isExist(v)) {\n return v;\n } else {\n return '';\n }\n};\n\n// const fakeCall = function(a) {return a;};\n// const fakeCallNoReturn = function() {};\n\nexports.isName = isName;\nexports.getAllMatches = getAllMatches;\nexports.nameRegexp = nameRegexp;\n",
|
|
277
|
+
"'use strict';\n\nconst util = require('./util');\n\nconst defaultOptions = {\n allowBooleanAttributes: false, //A tag can have attributes without any value\n unpairedTags: []\n};\n\n//const tagsPattern = new RegExp(\"<\\\\/?([\\\\w:\\\\-_\\.]+)\\\\s*\\/?>\",\"g\");\nexports.validate = function (xmlData, options) {\n options = Object.assign({}, defaultOptions, options);\n\n //xmlData = xmlData.replace(/(\\r\\n|\\n|\\r)/gm,\"\");//make it single line\n //xmlData = xmlData.replace(/(^\\s*<\\?xml.*?\\?>)/g,\"\");//Remove XML starting tag\n //xmlData = xmlData.replace(/(<!DOCTYPE[\\s\\w\\\"\\.\\/\\-\\:]+(\\[.*\\])*\\s*>)/g,\"\");//Remove DOCTYPE\n const tags = [];\n let tagFound = false;\n\n //indicates that the root tag has been closed (aka. depth 0 has been reached)\n let reachedRoot = false;\n\n if (xmlData[0] === '\\ufeff') {\n // check for byte order mark (BOM)\n xmlData = xmlData.substr(1);\n }\n \n for (let i = 0; i < xmlData.length; i++) {\n\n if (xmlData[i] === '<' && xmlData[i+1] === '?') {\n i+=2;\n i = readPI(xmlData,i);\n if (i.err) return i;\n }else if (xmlData[i] === '<') {\n //starting of tag\n //read until you reach to '>' avoiding any '>' in attribute value\n let tagStartPos = i;\n i++;\n \n if (xmlData[i] === '!') {\n i = readCommentAndCDATA(xmlData, i);\n continue;\n } else {\n let closingTag = false;\n if (xmlData[i] === '/') {\n //closing tag\n closingTag = true;\n i++;\n }\n //read tagname\n let tagName = '';\n for (; i < xmlData.length &&\n xmlData[i] !== '>' &&\n xmlData[i] !== ' ' &&\n xmlData[i] !== '\\t' &&\n xmlData[i] !== '\\n' &&\n xmlData[i] !== '\\r'; i++\n ) {\n tagName += xmlData[i];\n }\n tagName = tagName.trim();\n //console.log(tagName);\n\n if (tagName[tagName.length - 1] === '/') {\n //self closing tag without attributes\n tagName = tagName.substring(0, tagName.length - 1);\n //continue;\n i--;\n }\n if (!validateTagName(tagName)) {\n let msg;\n if (tagName.trim().length === 0) {\n msg = \"Invalid space after '<'.\";\n } else {\n msg = \"Tag '\"+tagName+\"' is an invalid name.\";\n }\n return getErrorObject('InvalidTag', msg, getLineNumberForPosition(xmlData, i));\n }\n\n const result = readAttributeStr(xmlData, i);\n if (result === false) {\n return getErrorObject('InvalidAttr', \"Attributes for '\"+tagName+\"' have open quote.\", getLineNumberForPosition(xmlData, i));\n }\n let attrStr = result.value;\n i = result.index;\n\n if (attrStr[attrStr.length - 1] === '/') {\n //self closing tag\n const attrStrStart = i - attrStr.length;\n attrStr = attrStr.substring(0, attrStr.length - 1);\n const isValid = validateAttributeString(attrStr, options);\n if (isValid === true) {\n tagFound = true;\n //continue; //text may presents after self closing tag\n } else {\n //the result from the nested function returns the position of the error within the attribute\n //in order to get the 'true' error line, we need to calculate the position where the attribute begins (i - attrStr.length) and then add the position within the attribute\n //this gives us the absolute index in the entire xml, which we can use to find the line at last\n return getErrorObject(isValid.err.code, isValid.err.msg, getLineNumberForPosition(xmlData, attrStrStart + isValid.err.line));\n }\n } else if (closingTag) {\n if (!result.tagClosed) {\n return getErrorObject('InvalidTag', \"Closing tag '\"+tagName+\"' doesn't have proper closing.\", getLineNumberForPosition(xmlData, i));\n } else if (attrStr.trim().length > 0) {\n return getErrorObject('InvalidTag', \"Closing tag '\"+tagName+\"' can't have attributes or invalid starting.\", getLineNumberForPosition(xmlData, tagStartPos));\n } else if (tags.length === 0) {\n return getErrorObject('InvalidTag', \"Closing tag '\"+tagName+\"' has not been opened.\", getLineNumberForPosition(xmlData, tagStartPos));\n } else {\n const otg = tags.pop();\n if (tagName !== otg.tagName) {\n let openPos = getLineNumberForPosition(xmlData, otg.tagStartPos);\n return getErrorObject('InvalidTag',\n \"Expected closing tag '\"+otg.tagName+\"' (opened in line \"+openPos.line+\", col \"+openPos.col+\") instead of closing tag '\"+tagName+\"'.\",\n getLineNumberForPosition(xmlData, tagStartPos));\n }\n\n //when there are no more tags, we reached the root level.\n if (tags.length == 0) {\n reachedRoot = true;\n }\n }\n } else {\n const isValid = validateAttributeString(attrStr, options);\n if (isValid !== true) {\n //the result from the nested function returns the position of the error within the attribute\n //in order to get the 'true' error line, we need to calculate the position where the attribute begins (i - attrStr.length) and then add the position within the attribute\n //this gives us the absolute index in the entire xml, which we can use to find the line at last\n return getErrorObject(isValid.err.code, isValid.err.msg, getLineNumberForPosition(xmlData, i - attrStr.length + isValid.err.line));\n }\n\n //if the root level has been reached before ...\n if (reachedRoot === true) {\n return getErrorObject('InvalidXml', 'Multiple possible root nodes found.', getLineNumberForPosition(xmlData, i));\n } else if(options.unpairedTags.indexOf(tagName) !== -1){\n //don't push into stack\n } else {\n tags.push({tagName, tagStartPos});\n }\n tagFound = true;\n }\n\n //skip tag text value\n //It may include comments and CDATA value\n for (i++; i < xmlData.length; i++) {\n if (xmlData[i] === '<') {\n if (xmlData[i + 1] === '!') {\n //comment or CADATA\n i++;\n i = readCommentAndCDATA(xmlData, i);\n continue;\n } else if (xmlData[i+1] === '?') {\n i = readPI(xmlData, ++i);\n if (i.err) return i;\n } else{\n break;\n }\n } else if (xmlData[i] === '&') {\n const afterAmp = validateAmpersand(xmlData, i);\n if (afterAmp == -1)\n return getErrorObject('InvalidChar', \"char '&' is not expected.\", getLineNumberForPosition(xmlData, i));\n i = afterAmp;\n }else{\n if (reachedRoot === true && !isWhiteSpace(xmlData[i])) {\n return getErrorObject('InvalidXml', \"Extra text at the end\", getLineNumberForPosition(xmlData, i));\n }\n }\n } //end of reading tag text value\n if (xmlData[i] === '<') {\n i--;\n }\n }\n } else {\n if ( isWhiteSpace(xmlData[i])) {\n continue;\n }\n return getErrorObject('InvalidChar', \"char '\"+xmlData[i]+\"' is not expected.\", getLineNumberForPosition(xmlData, i));\n }\n }\n\n if (!tagFound) {\n return getErrorObject('InvalidXml', 'Start tag expected.', 1);\n }else if (tags.length == 1) {\n return getErrorObject('InvalidTag', \"Unclosed tag '\"+tags[0].tagName+\"'.\", getLineNumberForPosition(xmlData, tags[0].tagStartPos));\n }else if (tags.length > 0) {\n return getErrorObject('InvalidXml', \"Invalid '\"+\n JSON.stringify(tags.map(t => t.tagName), null, 4).replace(/\\r?\\n/g, '')+\n \"' found.\", {line: 1, col: 1});\n }\n\n return true;\n};\n\nfunction isWhiteSpace(char){\n return char === ' ' || char === '\\t' || char === '\\n' || char === '\\r';\n}\n/**\n * Read Processing insstructions and skip\n * @param {*} xmlData\n * @param {*} i\n */\nfunction readPI(xmlData, i) {\n const start = i;\n for (; i < xmlData.length; i++) {\n if (xmlData[i] == '?' || xmlData[i] == ' ') {\n //tagname\n const tagname = xmlData.substr(start, i - start);\n if (i > 5 && tagname === 'xml') {\n return getErrorObject('InvalidXml', 'XML declaration allowed only at the start of the document.', getLineNumberForPosition(xmlData, i));\n } else if (xmlData[i] == '?' && xmlData[i + 1] == '>') {\n //check if valid attribut string\n i++;\n break;\n } else {\n continue;\n }\n }\n }\n return i;\n}\n\nfunction readCommentAndCDATA(xmlData, i) {\n if (xmlData.length > i + 5 && xmlData[i + 1] === '-' && xmlData[i + 2] === '-') {\n //comment\n for (i += 3; i < xmlData.length; i++) {\n if (xmlData[i] === '-' && xmlData[i + 1] === '-' && xmlData[i + 2] === '>') {\n i += 2;\n break;\n }\n }\n } else if (\n xmlData.length > i + 8 &&\n xmlData[i + 1] === 'D' &&\n xmlData[i + 2] === 'O' &&\n xmlData[i + 3] === 'C' &&\n xmlData[i + 4] === 'T' &&\n xmlData[i + 5] === 'Y' &&\n xmlData[i + 6] === 'P' &&\n xmlData[i + 7] === 'E'\n ) {\n let angleBracketsCount = 1;\n for (i += 8; i < xmlData.length; i++) {\n if (xmlData[i] === '<') {\n angleBracketsCount++;\n } else if (xmlData[i] === '>') {\n angleBracketsCount--;\n if (angleBracketsCount === 0) {\n break;\n }\n }\n }\n } else if (\n xmlData.length > i + 9 &&\n xmlData[i + 1] === '[' &&\n xmlData[i + 2] === 'C' &&\n xmlData[i + 3] === 'D' &&\n xmlData[i + 4] === 'A' &&\n xmlData[i + 5] === 'T' &&\n xmlData[i + 6] === 'A' &&\n xmlData[i + 7] === '['\n ) {\n for (i += 8; i < xmlData.length; i++) {\n if (xmlData[i] === ']' && xmlData[i + 1] === ']' && xmlData[i + 2] === '>') {\n i += 2;\n break;\n }\n }\n }\n\n return i;\n}\n\nconst doubleQuote = '\"';\nconst singleQuote = \"'\";\n\n/**\n * Keep reading xmlData until '<' is found outside the attribute value.\n * @param {string} xmlData\n * @param {number} i\n */\nfunction readAttributeStr(xmlData, i) {\n let attrStr = '';\n let startChar = '';\n let tagClosed = false;\n for (; i < xmlData.length; i++) {\n if (xmlData[i] === doubleQuote || xmlData[i] === singleQuote) {\n if (startChar === '') {\n startChar = xmlData[i];\n } else if (startChar !== xmlData[i]) {\n //if vaue is enclosed with double quote then single quotes are allowed inside the value and vice versa\n } else {\n startChar = '';\n }\n } else if (xmlData[i] === '>') {\n if (startChar === '') {\n tagClosed = true;\n break;\n }\n }\n attrStr += xmlData[i];\n }\n if (startChar !== '') {\n return false;\n }\n\n return {\n value: attrStr,\n index: i,\n tagClosed: tagClosed\n };\n}\n\n/**\n * Select all the attributes whether valid or invalid.\n */\nconst validAttrStrRegxp = new RegExp('(\\\\s*)([^\\\\s=]+)(\\\\s*=)?(\\\\s*([\\'\"])(([\\\\s\\\\S])*?)\\\\5)?', 'g');\n\n//attr, =\"sd\", a=\"amit's\", a=\"sd\"b=\"saf\", ab cd=\"\"\n\nfunction validateAttributeString(attrStr, options) {\n //console.log(\"start:\"+attrStr+\":end\");\n\n //if(attrStr.trim().length === 0) return true; //empty string\n\n const matches = util.getAllMatches(attrStr, validAttrStrRegxp);\n const attrNames = {};\n\n for (let i = 0; i < matches.length; i++) {\n if (matches[i][1].length === 0) {\n //nospace before attribute name: a=\"sd\"b=\"saf\"\n return getErrorObject('InvalidAttr', \"Attribute '\"+matches[i][2]+\"' has no space in starting.\", getPositionFromMatch(matches[i]))\n } else if (matches[i][3] !== undefined && matches[i][4] === undefined) {\n return getErrorObject('InvalidAttr', \"Attribute '\"+matches[i][2]+\"' is without value.\", getPositionFromMatch(matches[i]));\n } else if (matches[i][3] === undefined && !options.allowBooleanAttributes) {\n //independent attribute: ab\n return getErrorObject('InvalidAttr', \"boolean attribute '\"+matches[i][2]+\"' is not allowed.\", getPositionFromMatch(matches[i]));\n }\n /* else if(matches[i][6] === undefined){//attribute without value: ab=\n return { err: { code:\"InvalidAttr\",msg:\"attribute \" + matches[i][2] + \" has no value assigned.\"}};\n } */\n const attrName = matches[i][2];\n if (!validateAttrName(attrName)) {\n return getErrorObject('InvalidAttr', \"Attribute '\"+attrName+\"' is an invalid name.\", getPositionFromMatch(matches[i]));\n }\n if (!attrNames.hasOwnProperty(attrName)) {\n //check for duplicate attribute.\n attrNames[attrName] = 1;\n } else {\n return getErrorObject('InvalidAttr', \"Attribute '\"+attrName+\"' is repeated.\", getPositionFromMatch(matches[i]));\n }\n }\n\n return true;\n}\n\nfunction validateNumberAmpersand(xmlData, i) {\n let re = /\\d/;\n if (xmlData[i] === 'x') {\n i++;\n re = /[\\da-fA-F]/;\n }\n for (; i < xmlData.length; i++) {\n if (xmlData[i] === ';')\n return i;\n if (!xmlData[i].match(re))\n break;\n }\n return -1;\n}\n\nfunction validateAmpersand(xmlData, i) {\n // https://www.w3.org/TR/xml/#dt-charref\n i++;\n if (xmlData[i] === ';')\n return -1;\n if (xmlData[i] === '#') {\n i++;\n return validateNumberAmpersand(xmlData, i);\n }\n let count = 0;\n for (; i < xmlData.length; i++, count++) {\n if (xmlData[i].match(/\\w/) && count < 20)\n continue;\n if (xmlData[i] === ';')\n break;\n return -1;\n }\n return i;\n}\n\nfunction getErrorObject(code, message, lineNumber) {\n return {\n err: {\n code: code,\n msg: message,\n line: lineNumber.line || lineNumber,\n col: lineNumber.col,\n },\n };\n}\n\nfunction validateAttrName(attrName) {\n return util.isName(attrName);\n}\n\n// const startsWithXML = /^xml/i;\n\nfunction validateTagName(tagname) {\n return util.isName(tagname) /* && !tagname.match(startsWithXML) */;\n}\n\n//this function returns the line number for the character at the given index\nfunction getLineNumberForPosition(xmlData, index) {\n const lines = xmlData.substring(0, index).split(/\\r?\\n/);\n return {\n line: lines.length,\n\n // column number is last line's length + 1, because column numbering starts at 1:\n col: lines[lines.length - 1].length + 1\n };\n}\n\n//this function returns the position of the first character of match within attrStr\nfunction getPositionFromMatch(match) {\n return match.startIndex + match[1].length;\n}\n",
|
|
278
|
+
"\nconst defaultOptions = {\n preserveOrder: false,\n attributeNamePrefix: '@_',\n attributesGroupName: false,\n textNodeName: '#text',\n ignoreAttributes: true,\n removeNSPrefix: false, // remove NS from tag name or attribute name if true\n allowBooleanAttributes: false, //a tag can have attributes without any value\n //ignoreRootElement : false,\n parseTagValue: true,\n parseAttributeValue: false,\n trimValues: true, //Trim string values of tag and attributes\n cdataPropName: false,\n numberParseOptions: {\n hex: true,\n leadingZeros: true,\n eNotation: true\n },\n tagValueProcessor: function(tagName, val) {\n return val;\n },\n attributeValueProcessor: function(attrName, val) {\n return val;\n },\n stopNodes: [], //nested tags will not be parsed even for errors\n alwaysCreateTextNode: false,\n isArray: () => false,\n commentPropName: false,\n unpairedTags: [],\n processEntities: true,\n htmlEntities: false,\n ignoreDeclaration: false,\n ignorePiTags: false,\n transformTagName: false,\n transformAttributeName: false,\n updateTag: function(tagName, jPath, attrs){\n return tagName\n },\n // skipEmptyListItem: false\n};\n \nconst buildOptions = function(options) {\n return Object.assign({}, defaultOptions, options);\n};\n\nexports.buildOptions = buildOptions;\nexports.defaultOptions = defaultOptions;",
|
|
279
|
+
"'use strict';\n\nclass XmlNode{\n constructor(tagname) {\n this.tagname = tagname;\n this.child = []; //nested tags, text, cdata, comments in order\n this[\":@\"] = {}; //attributes map\n }\n add(key,val){\n // this.child.push( {name : key, val: val, isCdata: isCdata });\n if(key === \"__proto__\") key = \"#__proto__\";\n this.child.push( {[key]: val });\n }\n addChild(node) {\n if(node.tagname === \"__proto__\") node.tagname = \"#__proto__\";\n if(node[\":@\"] && Object.keys(node[\":@\"]).length > 0){\n this.child.push( { [node.tagname]: node.child, [\":@\"]: node[\":@\"] });\n }else{\n this.child.push( { [node.tagname]: node.child });\n }\n };\n};\n\n\nmodule.exports = XmlNode;",
|
|
280
|
+
"const util = require('../util');\n\n//TODO: handle comments\nfunction readDocType(xmlData, i){\n \n const entities = {};\n if( xmlData[i + 3] === 'O' &&\n xmlData[i + 4] === 'C' &&\n xmlData[i + 5] === 'T' &&\n xmlData[i + 6] === 'Y' &&\n xmlData[i + 7] === 'P' &&\n xmlData[i + 8] === 'E')\n { \n i = i+9;\n let angleBracketsCount = 1;\n let hasBody = false, comment = false;\n let exp = \"\";\n for(;i<xmlData.length;i++){\n if (xmlData[i] === '<' && !comment) { //Determine the tag type\n if( hasBody && isEntity(xmlData, i)){\n i += 7; \n [entityName, val,i] = readEntityExp(xmlData,i+1);\n if(val.indexOf(\"&\") === -1) //Parameter entities are not supported\n entities[ validateEntityName(entityName) ] = {\n regx : RegExp( `&${entityName};`,\"g\"),\n val: val\n };\n }\n else if( hasBody && isElement(xmlData, i)) i += 8;//Not supported\n else if( hasBody && isAttlist(xmlData, i)) i += 8;//Not supported\n else if( hasBody && isNotation(xmlData, i)) i += 9;//Not supported\n else if( isComment) comment = true;\n else throw new Error(\"Invalid DOCTYPE\");\n\n angleBracketsCount++;\n exp = \"\";\n } else if (xmlData[i] === '>') { //Read tag content\n if(comment){\n if( xmlData[i - 1] === \"-\" && xmlData[i - 2] === \"-\"){\n comment = false;\n angleBracketsCount--;\n }\n }else{\n angleBracketsCount--;\n }\n if (angleBracketsCount === 0) {\n break;\n }\n }else if( xmlData[i] === '['){\n hasBody = true;\n }else{\n exp += xmlData[i];\n }\n }\n if(angleBracketsCount !== 0){\n throw new Error(`Unclosed DOCTYPE`);\n }\n }else{\n throw new Error(`Invalid Tag instead of DOCTYPE`);\n }\n return {entities, i};\n}\n\nfunction readEntityExp(xmlData,i){\n //External entities are not supported\n // <!ENTITY ext SYSTEM \"http://normal-website.com\" >\n\n //Parameter entities are not supported\n // <!ENTITY entityname \"&anotherElement;\">\n\n //Internal entities are supported\n // <!ENTITY entityname \"replacement text\">\n \n //read EntityName\n let entityName = \"\";\n for (; i < xmlData.length && (xmlData[i] !== \"'\" && xmlData[i] !== '\"' ); i++) {\n // if(xmlData[i] === \" \") continue;\n // else \n entityName += xmlData[i];\n }\n entityName = entityName.trim();\n if(entityName.indexOf(\" \") !== -1) throw new Error(\"External entites are not supported\");\n\n //read Entity Value\n const startChar = xmlData[i++];\n let val = \"\"\n for (; i < xmlData.length && xmlData[i] !== startChar ; i++) {\n val += xmlData[i];\n }\n return [entityName, val, i];\n}\n\nfunction isComment(xmlData, i){\n if(xmlData[i+1] === '!' &&\n xmlData[i+2] === '-' &&\n xmlData[i+3] === '-') return true\n return false\n}\nfunction isEntity(xmlData, i){\n if(xmlData[i+1] === '!' &&\n xmlData[i+2] === 'E' &&\n xmlData[i+3] === 'N' &&\n xmlData[i+4] === 'T' &&\n xmlData[i+5] === 'I' &&\n xmlData[i+6] === 'T' &&\n xmlData[i+7] === 'Y') return true\n return false\n}\nfunction isElement(xmlData, i){\n if(xmlData[i+1] === '!' &&\n xmlData[i+2] === 'E' &&\n xmlData[i+3] === 'L' &&\n xmlData[i+4] === 'E' &&\n xmlData[i+5] === 'M' &&\n xmlData[i+6] === 'E' &&\n xmlData[i+7] === 'N' &&\n xmlData[i+8] === 'T') return true\n return false\n}\n\nfunction isAttlist(xmlData, i){\n if(xmlData[i+1] === '!' &&\n xmlData[i+2] === 'A' &&\n xmlData[i+3] === 'T' &&\n xmlData[i+4] === 'T' &&\n xmlData[i+5] === 'L' &&\n xmlData[i+6] === 'I' &&\n xmlData[i+7] === 'S' &&\n xmlData[i+8] === 'T') return true\n return false\n}\nfunction isNotation(xmlData, i){\n if(xmlData[i+1] === '!' &&\n xmlData[i+2] === 'N' &&\n xmlData[i+3] === 'O' &&\n xmlData[i+4] === 'T' &&\n xmlData[i+5] === 'A' &&\n xmlData[i+6] === 'T' &&\n xmlData[i+7] === 'I' &&\n xmlData[i+8] === 'O' &&\n xmlData[i+9] === 'N') return true\n return false\n}\n\nfunction validateEntityName(name){\n if (util.isName(name))\n\treturn name;\n else\n throw new Error(`Invalid entity name ${name}`);\n}\n\nmodule.exports = readDocType;\n",
|
|
281
|
+
"const hexRegex = /^[-+]?0x[a-fA-F0-9]+$/;\nconst numRegex = /^([\\-\\+])?(0*)(\\.[0-9]+([eE]\\-?[0-9]+)?|[0-9]+(\\.[0-9]+([eE]\\-?[0-9]+)?)?)$/;\n// const octRegex = /0x[a-z0-9]+/;\n// const binRegex = /0x[a-z0-9]+/;\n\n\n//polyfill\nif (!Number.parseInt && window.parseInt) {\n Number.parseInt = window.parseInt;\n}\nif (!Number.parseFloat && window.parseFloat) {\n Number.parseFloat = window.parseFloat;\n}\n\n \nconst consider = {\n hex : true,\n leadingZeros: true,\n decimalPoint: \"\\.\",\n eNotation: true\n //skipLike: /regex/\n};\n\nfunction toNumber(str, options = {}){\n // const options = Object.assign({}, consider);\n // if(opt.leadingZeros === false){\n // options.leadingZeros = false;\n // }else if(opt.hex === false){\n // options.hex = false;\n // }\n\n options = Object.assign({}, consider, options );\n if(!str || typeof str !== \"string\" ) return str;\n \n let trimmedStr = str.trim();\n // if(trimmedStr === \"0.0\") return 0;\n // else if(trimmedStr === \"+0.0\") return 0;\n // else if(trimmedStr === \"-0.0\") return -0;\n\n if(options.skipLike !== undefined && options.skipLike.test(trimmedStr)) return str;\n else if (options.hex && hexRegex.test(trimmedStr)) {\n return Number.parseInt(trimmedStr, 16);\n // } else if (options.parseOct && octRegex.test(str)) {\n // return Number.parseInt(val, 8);\n // }else if (options.parseBin && binRegex.test(str)) {\n // return Number.parseInt(val, 2);\n }else{\n //separate negative sign, leading zeros, and rest number\n const match = numRegex.exec(trimmedStr);\n if(match){\n const sign = match[1];\n const leadingZeros = match[2];\n let numTrimmedByZeros = trimZeros(match[3]); //complete num without leading zeros\n //trim ending zeros for floating number\n \n const eNotation = match[4] || match[6];\n if(!options.leadingZeros && leadingZeros.length > 0 && sign && trimmedStr[2] !== \".\") return str; //-0123\n else if(!options.leadingZeros && leadingZeros.length > 0 && !sign && trimmedStr[1] !== \".\") return str; //0123\n else{//no leading zeros or leading zeros are allowed\n const num = Number(trimmedStr);\n const numStr = \"\" + num;\n if(numStr.search(/[eE]/) !== -1){ //given number is long and parsed to eNotation\n if(options.eNotation) return num;\n else return str;\n }else if(eNotation){ //given number has enotation\n if(options.eNotation) return num;\n else return str;\n }else if(trimmedStr.indexOf(\".\") !== -1){ //floating number\n // const decimalPart = match[5].substr(1);\n // const intPart = trimmedStr.substr(0,trimmedStr.indexOf(\".\"));\n\n \n // const p = numStr.indexOf(\".\");\n // const givenIntPart = numStr.substr(0,p);\n // const givenDecPart = numStr.substr(p+1);\n if(numStr === \"0\" && (numTrimmedByZeros === \"\") ) return num; //0.0\n else if(numStr === numTrimmedByZeros) return num; //0.456. 0.79000\n else if( sign && numStr === \"-\"+numTrimmedByZeros) return num;\n else return str;\n }\n \n if(leadingZeros){\n // if(numTrimmedByZeros === numStr){\n // if(options.leadingZeros) return num;\n // else return str;\n // }else return str;\n if(numTrimmedByZeros === numStr) return num;\n else if(sign+numTrimmedByZeros === numStr) return num;\n else return str;\n }\n\n if(trimmedStr === numStr) return num;\n else if(trimmedStr === sign+numStr) return num;\n // else{\n // //number with +/- sign\n // trimmedStr.test(/[-+][0-9]);\n\n // }\n return str;\n }\n // else if(!eNotation && trimmedStr && trimmedStr !== Number(trimmedStr) ) return str;\n \n }else{ //non-numeric string\n return str;\n }\n }\n}\n\n/**\n * \n * @param {string} numStr without leading zeros\n * @returns \n */\nfunction trimZeros(numStr){\n if(numStr && numStr.indexOf(\".\") !== -1){//float\n numStr = numStr.replace(/0+$/, \"\"); //remove ending zeros\n if(numStr === \".\") numStr = \"0\";\n else if(numStr[0] === \".\") numStr = \"0\"+numStr;\n else if(numStr[numStr.length-1] === \".\") numStr = numStr.substr(0,numStr.length-1);\n return numStr;\n }\n return numStr;\n}\nmodule.exports = toNumber\n",
|
|
282
|
+
"'use strict';\n///@ts-check\n\nconst util = require('../util');\nconst xmlNode = require('./xmlNode');\nconst readDocType = require(\"./DocTypeReader\");\nconst toNumber = require(\"strnum\");\n\n// const regx =\n// '<((!\\\\[CDATA\\\\[([\\\\s\\\\S]*?)(]]>))|((NAME:)?(NAME))([^>]*)>|((\\\\/)(NAME)\\\\s*>))([^<]*)'\n// .replace(/NAME/g, util.nameRegexp);\n\n//const tagsRegx = new RegExp(\"<(\\\\/?[\\\\w:\\\\-\\._]+)([^>]*)>(\\\\s*\"+cdataRegx+\")*([^<]+)?\",\"g\");\n//const tagsRegx = new RegExp(\"<(\\\\/?)((\\\\w*:)?([\\\\w:\\\\-\\._]+))([^>]*)>([^<]*)(\"+cdataRegx+\"([^<]*))*([^<]+)?\",\"g\");\n\nclass OrderedObjParser{\n constructor(options){\n this.options = options;\n this.currentNode = null;\n this.tagsNodeStack = [];\n this.docTypeEntities = {};\n this.lastEntities = {\n \"apos\" : { regex: /&(apos|#39|#x27);/g, val : \"'\"},\n \"gt\" : { regex: /&(gt|#62|#x3E);/g, val : \">\"},\n \"lt\" : { regex: /&(lt|#60|#x3C);/g, val : \"<\"},\n \"quot\" : { regex: /&(quot|#34|#x22);/g, val : \"\\\"\"},\n };\n this.ampEntity = { regex: /&(amp|#38|#x26);/g, val : \"&\"};\n this.htmlEntities = {\n \"space\": { regex: /&(nbsp|#160);/g, val: \" \" },\n // \"lt\" : { regex: /&(lt|#60);/g, val: \"<\" },\n // \"gt\" : { regex: /&(gt|#62);/g, val: \">\" },\n // \"amp\" : { regex: /&(amp|#38);/g, val: \"&\" },\n // \"quot\" : { regex: /&(quot|#34);/g, val: \"\\\"\" },\n // \"apos\" : { regex: /&(apos|#39);/g, val: \"'\" },\n \"cent\" : { regex: /&(cent|#162);/g, val: \"¢\" },\n \"pound\" : { regex: /&(pound|#163);/g, val: \"£\" },\n \"yen\" : { regex: /&(yen|#165);/g, val: \"¥\" },\n \"euro\" : { regex: /&(euro|#8364);/g, val: \"€\" },\n \"copyright\" : { regex: /&(copy|#169);/g, val: \"©\" },\n \"reg\" : { regex: /&(reg|#174);/g, val: \"®\" },\n \"inr\" : { regex: /&(inr|#8377);/g, val: \"₹\" },\n \"num_dec\": { regex: /&#([0-9]{1,7});/g, val : (_, str) => String.fromCharCode(Number.parseInt(str, 10)) },\n \"num_hex\": { regex: /&#x([0-9a-fA-F]{1,6});/g, val : (_, str) => String.fromCharCode(Number.parseInt(str, 16)) },\n };\n this.addExternalEntities = addExternalEntities;\n this.parseXml = parseXml;\n this.parseTextData = parseTextData;\n this.resolveNameSpace = resolveNameSpace;\n this.buildAttributesMap = buildAttributesMap;\n this.isItStopNode = isItStopNode;\n this.replaceEntitiesValue = replaceEntitiesValue;\n this.readStopNodeData = readStopNodeData;\n this.saveTextToParentTag = saveTextToParentTag;\n this.addChild = addChild;\n }\n\n}\n\nfunction addExternalEntities(externalEntities){\n const entKeys = Object.keys(externalEntities);\n for (let i = 0; i < entKeys.length; i++) {\n const ent = entKeys[i];\n this.lastEntities[ent] = {\n regex: new RegExp(\"&\"+ent+\";\",\"g\"),\n val : externalEntities[ent]\n }\n }\n}\n\n/**\n * @param {string} val\n * @param {string} tagName\n * @param {string} jPath\n * @param {boolean} dontTrim\n * @param {boolean} hasAttributes\n * @param {boolean} isLeafNode\n * @param {boolean} escapeEntities\n */\nfunction parseTextData(val, tagName, jPath, dontTrim, hasAttributes, isLeafNode, escapeEntities) {\n if (val !== undefined) {\n if (this.options.trimValues && !dontTrim) {\n val = val.trim();\n }\n if(val.length > 0){\n if(!escapeEntities) val = this.replaceEntitiesValue(val);\n \n const newval = this.options.tagValueProcessor(tagName, val, jPath, hasAttributes, isLeafNode);\n if(newval === null || newval === undefined){\n //don't parse\n return val;\n }else if(typeof newval !== typeof val || newval !== val){\n //overwrite\n return newval;\n }else if(this.options.trimValues){\n return parseValue(val, this.options.parseTagValue, this.options.numberParseOptions);\n }else{\n const trimmedVal = val.trim();\n if(trimmedVal === val){\n return parseValue(val, this.options.parseTagValue, this.options.numberParseOptions);\n }else{\n return val;\n }\n }\n }\n }\n}\n\nfunction resolveNameSpace(tagname) {\n if (this.options.removeNSPrefix) {\n const tags = tagname.split(':');\n const prefix = tagname.charAt(0) === '/' ? '/' : '';\n if (tags[0] === 'xmlns') {\n return '';\n }\n if (tags.length === 2) {\n tagname = prefix + tags[1];\n }\n }\n return tagname;\n}\n\n//TODO: change regex to capture NS\n//const attrsRegx = new RegExp(\"([\\\\w\\\\-\\\\.\\\\:]+)\\\\s*=\\\\s*(['\\\"])((.|\\n)*?)\\\\2\",\"gm\");\nconst attrsRegx = new RegExp('([^\\\\s=]+)\\\\s*(=\\\\s*([\\'\"])([\\\\s\\\\S]*?)\\\\3)?', 'gm');\n\nfunction buildAttributesMap(attrStr, jPath, tagName) {\n if (!this.options.ignoreAttributes && typeof attrStr === 'string') {\n // attrStr = attrStr.replace(/\\r?\\n/g, ' ');\n //attrStr = attrStr || attrStr.trim();\n\n const matches = util.getAllMatches(attrStr, attrsRegx);\n const len = matches.length; //don't make it inline\n const attrs = {};\n for (let i = 0; i < len; i++) {\n const attrName = this.resolveNameSpace(matches[i][1]);\n let oldVal = matches[i][4];\n let aName = this.options.attributeNamePrefix + attrName;\n if (attrName.length) {\n if (this.options.transformAttributeName) {\n aName = this.options.transformAttributeName(aName);\n }\n if(aName === \"__proto__\") aName = \"#__proto__\";\n if (oldVal !== undefined) {\n if (this.options.trimValues) {\n oldVal = oldVal.trim();\n }\n oldVal = this.replaceEntitiesValue(oldVal);\n const newVal = this.options.attributeValueProcessor(attrName, oldVal, jPath);\n if(newVal === null || newVal === undefined){\n //don't parse\n attrs[aName] = oldVal;\n }else if(typeof newVal !== typeof oldVal || newVal !== oldVal){\n //overwrite\n attrs[aName] = newVal;\n }else{\n //parse\n attrs[aName] = parseValue(\n oldVal,\n this.options.parseAttributeValue,\n this.options.numberParseOptions\n );\n }\n } else if (this.options.allowBooleanAttributes) {\n attrs[aName] = true;\n }\n }\n }\n if (!Object.keys(attrs).length) {\n return;\n }\n if (this.options.attributesGroupName) {\n const attrCollection = {};\n attrCollection[this.options.attributesGroupName] = attrs;\n return attrCollection;\n }\n return attrs\n }\n}\n\nconst parseXml = function(xmlData) {\n xmlData = xmlData.replace(/\\r\\n?/g, \"\\n\"); //TODO: remove this line\n const xmlObj = new xmlNode('!xml');\n let currentNode = xmlObj;\n let textData = \"\";\n let jPath = \"\";\n for(let i=0; i< xmlData.length; i++){//for each char in XML data\n const ch = xmlData[i];\n if(ch === '<'){\n // const nextIndex = i+1;\n // const _2ndChar = xmlData[nextIndex];\n if( xmlData[i+1] === '/') {//Closing Tag\n const closeIndex = findClosingIndex(xmlData, \">\", i, \"Closing Tag is not closed.\")\n let tagName = xmlData.substring(i+2,closeIndex).trim();\n\n if(this.options.removeNSPrefix){\n const colonIndex = tagName.indexOf(\":\");\n if(colonIndex !== -1){\n tagName = tagName.substr(colonIndex+1);\n }\n }\n\n if(this.options.transformTagName) {\n tagName = this.options.transformTagName(tagName);\n }\n\n if(currentNode){\n textData = this.saveTextToParentTag(textData, currentNode, jPath);\n }\n\n //check if last tag of nested tag was unpaired tag\n const lastTagName = jPath.substring(jPath.lastIndexOf(\".\")+1);\n if(tagName && this.options.unpairedTags.indexOf(tagName) !== -1 ){\n throw new Error(`Unpaired tag can not be used as closing tag: </${tagName}>`);\n }\n let propIndex = 0\n if(lastTagName && this.options.unpairedTags.indexOf(lastTagName) !== -1 ){\n propIndex = jPath.lastIndexOf('.', jPath.lastIndexOf('.')-1)\n this.tagsNodeStack.pop();\n }else{\n propIndex = jPath.lastIndexOf(\".\");\n }\n jPath = jPath.substring(0, propIndex);\n\n currentNode = this.tagsNodeStack.pop();//avoid recursion, set the parent tag scope\n textData = \"\";\n i = closeIndex;\n } else if( xmlData[i+1] === '?') {\n\n let tagData = readTagExp(xmlData,i, false, \"?>\");\n if(!tagData) throw new Error(\"Pi Tag is not closed.\");\n\n textData = this.saveTextToParentTag(textData, currentNode, jPath);\n if( (this.options.ignoreDeclaration && tagData.tagName === \"?xml\") || this.options.ignorePiTags){\n\n }else{\n \n const childNode = new xmlNode(tagData.tagName);\n childNode.add(this.options.textNodeName, \"\");\n \n if(tagData.tagName !== tagData.tagExp && tagData.attrExpPresent){\n childNode[\":@\"] = this.buildAttributesMap(tagData.tagExp, jPath, tagData.tagName);\n }\n this.addChild(currentNode, childNode, jPath)\n\n }\n\n\n i = tagData.closeIndex + 1;\n } else if(xmlData.substr(i + 1, 3) === '!--') {\n const endIndex = findClosingIndex(xmlData, \"-->\", i+4, \"Comment is not closed.\")\n if(this.options.commentPropName){\n const comment = xmlData.substring(i + 4, endIndex - 2);\n\n textData = this.saveTextToParentTag(textData, currentNode, jPath);\n\n currentNode.add(this.options.commentPropName, [ { [this.options.textNodeName] : comment } ]);\n }\n i = endIndex;\n } else if( xmlData.substr(i + 1, 2) === '!D') {\n const result = readDocType(xmlData, i);\n this.docTypeEntities = result.entities;\n i = result.i;\n }else if(xmlData.substr(i + 1, 2) === '![') {\n const closeIndex = findClosingIndex(xmlData, \"]]>\", i, \"CDATA is not closed.\") - 2;\n const tagExp = xmlData.substring(i + 9,closeIndex);\n\n textData = this.saveTextToParentTag(textData, currentNode, jPath);\n\n let val = this.parseTextData(tagExp, currentNode.tagname, jPath, true, false, true, true);\n if(val == undefined) val = \"\";\n\n //cdata should be set even if it is 0 length string\n if(this.options.cdataPropName){\n currentNode.add(this.options.cdataPropName, [ { [this.options.textNodeName] : tagExp } ]);\n }else{\n currentNode.add(this.options.textNodeName, val);\n }\n \n i = closeIndex + 2;\n }else {//Opening tag\n let result = readTagExp(xmlData,i, this.options.removeNSPrefix);\n let tagName= result.tagName;\n const rawTagName = result.rawTagName;\n let tagExp = result.tagExp;\n let attrExpPresent = result.attrExpPresent;\n let closeIndex = result.closeIndex;\n\n if (this.options.transformTagName) {\n tagName = this.options.transformTagName(tagName);\n }\n \n //save text as child node\n if (currentNode && textData) {\n if(currentNode.tagname !== '!xml'){\n //when nested tag is found\n textData = this.saveTextToParentTag(textData, currentNode, jPath, false);\n }\n }\n\n //check if last tag was unpaired tag\n const lastTag = currentNode;\n if(lastTag && this.options.unpairedTags.indexOf(lastTag.tagname) !== -1 ){\n currentNode = this.tagsNodeStack.pop();\n jPath = jPath.substring(0, jPath.lastIndexOf(\".\"));\n }\n if(tagName !== xmlObj.tagname){\n jPath += jPath ? \".\" + tagName : tagName;\n }\n if (this.isItStopNode(this.options.stopNodes, jPath, tagName)) {\n let tagContent = \"\";\n //self-closing tag\n if(tagExp.length > 0 && tagExp.lastIndexOf(\"/\") === tagExp.length - 1){\n if(tagName[tagName.length - 1] === \"/\"){ //remove trailing '/'\n tagName = tagName.substr(0, tagName.length - 1);\n jPath = jPath.substr(0, jPath.length - 1);\n tagExp = tagName;\n }else{\n tagExp = tagExp.substr(0, tagExp.length - 1);\n }\n i = result.closeIndex;\n }\n //unpaired tag\n else if(this.options.unpairedTags.indexOf(tagName) !== -1){\n \n i = result.closeIndex;\n }\n //normal tag\n else{\n //read until closing tag is found\n const result = this.readStopNodeData(xmlData, rawTagName, closeIndex + 1);\n if(!result) throw new Error(`Unexpected end of ${rawTagName}`);\n i = result.i;\n tagContent = result.tagContent;\n }\n\n const childNode = new xmlNode(tagName);\n if(tagName !== tagExp && attrExpPresent){\n childNode[\":@\"] = this.buildAttributesMap(tagExp, jPath, tagName);\n }\n if(tagContent) {\n tagContent = this.parseTextData(tagContent, tagName, jPath, true, attrExpPresent, true, true);\n }\n \n jPath = jPath.substr(0, jPath.lastIndexOf(\".\"));\n childNode.add(this.options.textNodeName, tagContent);\n \n this.addChild(currentNode, childNode, jPath)\n }else{\n //selfClosing tag\n if(tagExp.length > 0 && tagExp.lastIndexOf(\"/\") === tagExp.length - 1){\n if(tagName[tagName.length - 1] === \"/\"){ //remove trailing '/'\n tagName = tagName.substr(0, tagName.length - 1);\n jPath = jPath.substr(0, jPath.length - 1);\n tagExp = tagName;\n }else{\n tagExp = tagExp.substr(0, tagExp.length - 1);\n }\n \n if(this.options.transformTagName) {\n tagName = this.options.transformTagName(tagName);\n }\n\n const childNode = new xmlNode(tagName);\n if(tagName !== tagExp && attrExpPresent){\n childNode[\":@\"] = this.buildAttributesMap(tagExp, jPath, tagName);\n }\n this.addChild(currentNode, childNode, jPath)\n jPath = jPath.substr(0, jPath.lastIndexOf(\".\"));\n }\n //opening tag\n else{\n const childNode = new xmlNode( tagName);\n this.tagsNodeStack.push(currentNode);\n \n if(tagName !== tagExp && attrExpPresent){\n childNode[\":@\"] = this.buildAttributesMap(tagExp, jPath, tagName);\n }\n this.addChild(currentNode, childNode, jPath)\n currentNode = childNode;\n }\n textData = \"\";\n i = closeIndex;\n }\n }\n }else{\n textData += xmlData[i];\n }\n }\n return xmlObj.child;\n}\n\nfunction addChild(currentNode, childNode, jPath){\n const result = this.options.updateTag(childNode.tagname, jPath, childNode[\":@\"])\n if(result === false){\n }else if(typeof result === \"string\"){\n childNode.tagname = result\n currentNode.addChild(childNode);\n }else{\n currentNode.addChild(childNode);\n }\n}\n\nconst replaceEntitiesValue = function(val){\n\n if(this.options.processEntities){\n for(let entityName in this.docTypeEntities){\n const entity = this.docTypeEntities[entityName];\n val = val.replace( entity.regx, entity.val);\n }\n for(let entityName in this.lastEntities){\n const entity = this.lastEntities[entityName];\n val = val.replace( entity.regex, entity.val);\n }\n if(this.options.htmlEntities){\n for(let entityName in this.htmlEntities){\n const entity = this.htmlEntities[entityName];\n val = val.replace( entity.regex, entity.val);\n }\n }\n val = val.replace( this.ampEntity.regex, this.ampEntity.val);\n }\n return val;\n}\nfunction saveTextToParentTag(textData, currentNode, jPath, isLeafNode) {\n if (textData) { //store previously collected data as textNode\n if(isLeafNode === undefined) isLeafNode = Object.keys(currentNode.child).length === 0\n \n textData = this.parseTextData(textData,\n currentNode.tagname,\n jPath,\n false,\n currentNode[\":@\"] ? Object.keys(currentNode[\":@\"]).length !== 0 : false,\n isLeafNode);\n\n if (textData !== undefined && textData !== \"\")\n currentNode.add(this.options.textNodeName, textData);\n textData = \"\";\n }\n return textData;\n}\n\n//TODO: use jPath to simplify the logic\n/**\n * \n * @param {string[]} stopNodes \n * @param {string} jPath\n * @param {string} currentTagName \n */\nfunction isItStopNode(stopNodes, jPath, currentTagName){\n const allNodesExp = \"*.\" + currentTagName;\n for (const stopNodePath in stopNodes) {\n const stopNodeExp = stopNodes[stopNodePath];\n if( allNodesExp === stopNodeExp || jPath === stopNodeExp ) return true;\n }\n return false;\n}\n\n/**\n * Returns the tag Expression and where it is ending handling single-double quotes situation\n * @param {string} xmlData \n * @param {number} i starting index\n * @returns \n */\nfunction tagExpWithClosingIndex(xmlData, i, closingChar = \">\"){\n let attrBoundary;\n let tagExp = \"\";\n for (let index = i; index < xmlData.length; index++) {\n let ch = xmlData[index];\n if (attrBoundary) {\n if (ch === attrBoundary) attrBoundary = \"\";//reset\n } else if (ch === '\"' || ch === \"'\") {\n attrBoundary = ch;\n } else if (ch === closingChar[0]) {\n if(closingChar[1]){\n if(xmlData[index + 1] === closingChar[1]){\n return {\n data: tagExp,\n index: index\n }\n }\n }else{\n return {\n data: tagExp,\n index: index\n }\n }\n } else if (ch === '\\t') {\n ch = \" \"\n }\n tagExp += ch;\n }\n}\n\nfunction findClosingIndex(xmlData, str, i, errMsg){\n const closingIndex = xmlData.indexOf(str, i);\n if(closingIndex === -1){\n throw new Error(errMsg)\n }else{\n return closingIndex + str.length - 1;\n }\n}\n\nfunction readTagExp(xmlData,i, removeNSPrefix, closingChar = \">\"){\n const result = tagExpWithClosingIndex(xmlData, i+1, closingChar);\n if(!result) return;\n let tagExp = result.data;\n const closeIndex = result.index;\n const separatorIndex = tagExp.search(/\\s/);\n let tagName = tagExp;\n let attrExpPresent = true;\n if(separatorIndex !== -1){//separate tag name and attributes expression\n tagName = tagExp.substring(0, separatorIndex);\n tagExp = tagExp.substring(separatorIndex + 1).trimStart();\n }\n\n const rawTagName = tagName;\n if(removeNSPrefix){\n const colonIndex = tagName.indexOf(\":\");\n if(colonIndex !== -1){\n tagName = tagName.substr(colonIndex+1);\n attrExpPresent = tagName !== result.data.substr(colonIndex + 1);\n }\n }\n\n return {\n tagName: tagName,\n tagExp: tagExp,\n closeIndex: closeIndex,\n attrExpPresent: attrExpPresent,\n rawTagName: rawTagName,\n }\n}\n/**\n * find paired tag for a stop node\n * @param {string} xmlData \n * @param {string} tagName \n * @param {number} i \n */\nfunction readStopNodeData(xmlData, tagName, i){\n const startIndex = i;\n // Starting at 1 since we already have an open tag\n let openTagCount = 1;\n\n for (; i < xmlData.length; i++) {\n if( xmlData[i] === \"<\"){ \n if (xmlData[i+1] === \"/\") {//close tag\n const closeIndex = findClosingIndex(xmlData, \">\", i, `${tagName} is not closed`);\n let closeTagName = xmlData.substring(i+2,closeIndex).trim();\n if(closeTagName === tagName){\n openTagCount--;\n if (openTagCount === 0) {\n return {\n tagContent: xmlData.substring(startIndex, i),\n i : closeIndex\n }\n }\n }\n i=closeIndex;\n } else if(xmlData[i+1] === '?') { \n const closeIndex = findClosingIndex(xmlData, \"?>\", i+1, \"StopNode is not closed.\")\n i=closeIndex;\n } else if(xmlData.substr(i + 1, 3) === '!--') { \n const closeIndex = findClosingIndex(xmlData, \"-->\", i+3, \"StopNode is not closed.\")\n i=closeIndex;\n } else if(xmlData.substr(i + 1, 2) === '![') { \n const closeIndex = findClosingIndex(xmlData, \"]]>\", i, \"StopNode is not closed.\") - 2;\n i=closeIndex;\n } else {\n const tagData = readTagExp(xmlData, i, '>')\n\n if (tagData) {\n const openTagName = tagData && tagData.tagName;\n if (openTagName === tagName && tagData.tagExp[tagData.tagExp.length-1] !== \"/\") {\n openTagCount++;\n }\n i=tagData.closeIndex;\n }\n }\n }\n }//end for loop\n}\n\nfunction parseValue(val, shouldParse, options) {\n if (shouldParse && typeof val === 'string') {\n //console.log(options)\n const newval = val.trim();\n if(newval === 'true' ) return true;\n else if(newval === 'false' ) return false;\n else return toNumber(val, options);\n } else {\n if (util.isExist(val)) {\n return val;\n } else {\n return '';\n }\n }\n}\n\n\nmodule.exports = OrderedObjParser;\n",
|
|
283
|
+
"'use strict';\n\n/**\n * \n * @param {array} node \n * @param {any} options \n * @returns \n */\nfunction prettify(node, options){\n return compress( node, options);\n}\n\n/**\n * \n * @param {array} arr \n * @param {object} options \n * @param {string} jPath \n * @returns object\n */\nfunction compress(arr, options, jPath){\n let text;\n const compressedObj = {};\n for (let i = 0; i < arr.length; i++) {\n const tagObj = arr[i];\n const property = propName(tagObj);\n let newJpath = \"\";\n if(jPath === undefined) newJpath = property;\n else newJpath = jPath + \".\" + property;\n\n if(property === options.textNodeName){\n if(text === undefined) text = tagObj[property];\n else text += \"\" + tagObj[property];\n }else if(property === undefined){\n continue;\n }else if(tagObj[property]){\n \n let val = compress(tagObj[property], options, newJpath);\n const isLeaf = isLeafTag(val, options);\n\n if(tagObj[\":@\"]){\n assignAttributes( val, tagObj[\":@\"], newJpath, options);\n }else if(Object.keys(val).length === 1 && val[options.textNodeName] !== undefined && !options.alwaysCreateTextNode){\n val = val[options.textNodeName];\n }else if(Object.keys(val).length === 0){\n if(options.alwaysCreateTextNode) val[options.textNodeName] = \"\";\n else val = \"\";\n }\n\n if(compressedObj[property] !== undefined && compressedObj.hasOwnProperty(property)) {\n if(!Array.isArray(compressedObj[property])) {\n compressedObj[property] = [ compressedObj[property] ];\n }\n compressedObj[property].push(val);\n }else{\n //TODO: if a node is not an array, then check if it should be an array\n //also determine if it is a leaf node\n if (options.isArray(property, newJpath, isLeaf )) {\n compressedObj[property] = [val];\n }else{\n compressedObj[property] = val;\n }\n }\n }\n \n }\n // if(text && text.length > 0) compressedObj[options.textNodeName] = text;\n if(typeof text === \"string\"){\n if(text.length > 0) compressedObj[options.textNodeName] = text;\n }else if(text !== undefined) compressedObj[options.textNodeName] = text;\n return compressedObj;\n}\n\nfunction propName(obj){\n const keys = Object.keys(obj);\n for (let i = 0; i < keys.length; i++) {\n const key = keys[i];\n if(key !== \":@\") return key;\n }\n}\n\nfunction assignAttributes(obj, attrMap, jpath, options){\n if (attrMap) {\n const keys = Object.keys(attrMap);\n const len = keys.length; //don't make it inline\n for (let i = 0; i < len; i++) {\n const atrrName = keys[i];\n if (options.isArray(atrrName, jpath + \".\" + atrrName, true, true)) {\n obj[atrrName] = [ attrMap[atrrName] ];\n } else {\n obj[atrrName] = attrMap[atrrName];\n }\n }\n }\n}\n\nfunction isLeafTag(obj, options){\n const { textNodeName } = options;\n const propCount = Object.keys(obj).length;\n \n if (propCount === 0) {\n return true;\n }\n\n if (\n propCount === 1 &&\n (obj[textNodeName] || typeof obj[textNodeName] === \"boolean\" || obj[textNodeName] === 0)\n ) {\n return true;\n }\n\n return false;\n}\nexports.prettify = prettify;\n",
|
|
284
|
+
"const { buildOptions} = require(\"./OptionsBuilder\");\nconst OrderedObjParser = require(\"./OrderedObjParser\");\nconst { prettify} = require(\"./node2json\");\nconst validator = require('../validator');\n\nclass XMLParser{\n \n constructor(options){\n this.externalEntities = {};\n this.options = buildOptions(options);\n \n }\n /**\n * Parse XML dats to JS object \n * @param {string|Buffer} xmlData \n * @param {boolean|Object} validationOption \n */\n parse(xmlData,validationOption){\n if(typeof xmlData === \"string\"){\n }else if( xmlData.toString){\n xmlData = xmlData.toString();\n }else{\n throw new Error(\"XML data is accepted in String or Bytes[] form.\")\n }\n if( validationOption){\n if(validationOption === true) validationOption = {}; //validate with default options\n \n const result = validator.validate(xmlData, validationOption);\n if (result !== true) {\n throw Error( `${result.err.msg}:${result.err.line}:${result.err.col}` )\n }\n }\n const orderedObjParser = new OrderedObjParser(this.options);\n orderedObjParser.addExternalEntities(this.externalEntities);\n const orderedResult = orderedObjParser.parseXml(xmlData);\n if(this.options.preserveOrder || orderedResult === undefined) return orderedResult;\n else return prettify(orderedResult, this.options);\n }\n\n /**\n * Add Entity which is not by default supported by this library\n * @param {string} key \n * @param {string} value \n */\n addEntity(key, value){\n if(value.indexOf(\"&\") !== -1){\n throw new Error(\"Entity value can't have '&'\")\n }else if(key.indexOf(\"&\") !== -1 || key.indexOf(\";\") !== -1){\n throw new Error(\"An entity must be set without '&' and ';'. Eg. use '#xD' for '
'\")\n }else if(value === \"&\"){\n throw new Error(\"An entity with value '&' is not permitted\");\n }else{\n this.externalEntities[key] = value;\n }\n }\n}\n\nmodule.exports = XMLParser;",
|
|
285
|
+
"const EOL = \"\\n\";\n\n/**\n * \n * @param {array} jArray \n * @param {any} options \n * @returns \n */\nfunction toXml(jArray, options) {\n let indentation = \"\";\n if (options.format && options.indentBy.length > 0) {\n indentation = EOL;\n }\n return arrToStr(jArray, options, \"\", indentation);\n}\n\nfunction arrToStr(arr, options, jPath, indentation) {\n let xmlStr = \"\";\n let isPreviousElementTag = false;\n\n for (let i = 0; i < arr.length; i++) {\n const tagObj = arr[i];\n const tagName = propName(tagObj);\n if(tagName === undefined) continue;\n\n let newJPath = \"\";\n if (jPath.length === 0) newJPath = tagName\n else newJPath = `${jPath}.${tagName}`;\n\n if (tagName === options.textNodeName) {\n let tagText = tagObj[tagName];\n if (!isStopNode(newJPath, options)) {\n tagText = options.tagValueProcessor(tagName, tagText);\n tagText = replaceEntitiesValue(tagText, options);\n }\n if (isPreviousElementTag) {\n xmlStr += indentation;\n }\n xmlStr += tagText;\n isPreviousElementTag = false;\n continue;\n } else if (tagName === options.cdataPropName) {\n if (isPreviousElementTag) {\n xmlStr += indentation;\n }\n xmlStr += `<![CDATA[${tagObj[tagName][0][options.textNodeName]}]]>`;\n isPreviousElementTag = false;\n continue;\n } else if (tagName === options.commentPropName) {\n xmlStr += indentation + `<!--${tagObj[tagName][0][options.textNodeName]}-->`;\n isPreviousElementTag = true;\n continue;\n } else if (tagName[0] === \"?\") {\n const attStr = attr_to_str(tagObj[\":@\"], options);\n const tempInd = tagName === \"?xml\" ? \"\" : indentation;\n let piTextNodeName = tagObj[tagName][0][options.textNodeName];\n piTextNodeName = piTextNodeName.length !== 0 ? \" \" + piTextNodeName : \"\"; //remove extra spacing\n xmlStr += tempInd + `<${tagName}${piTextNodeName}${attStr}?>`;\n isPreviousElementTag = true;\n continue;\n }\n let newIdentation = indentation;\n if (newIdentation !== \"\") {\n newIdentation += options.indentBy;\n }\n const attStr = attr_to_str(tagObj[\":@\"], options);\n const tagStart = indentation + `<${tagName}${attStr}`;\n const tagValue = arrToStr(tagObj[tagName], options, newJPath, newIdentation);\n if (options.unpairedTags.indexOf(tagName) !== -1) {\n if (options.suppressUnpairedNode) xmlStr += tagStart + \">\";\n else xmlStr += tagStart + \"/>\";\n } else if ((!tagValue || tagValue.length === 0) && options.suppressEmptyNode) {\n xmlStr += tagStart + \"/>\";\n } else if (tagValue && tagValue.endsWith(\">\")) {\n xmlStr += tagStart + `>${tagValue}${indentation}</${tagName}>`;\n } else {\n xmlStr += tagStart + \">\";\n if (tagValue && indentation !== \"\" && (tagValue.includes(\"/>\") || tagValue.includes(\"</\"))) {\n xmlStr += indentation + options.indentBy + tagValue + indentation;\n } else {\n xmlStr += tagValue;\n }\n xmlStr += `</${tagName}>`;\n }\n isPreviousElementTag = true;\n }\n\n return xmlStr;\n}\n\nfunction propName(obj) {\n const keys = Object.keys(obj);\n for (let i = 0; i < keys.length; i++) {\n const key = keys[i];\n if(!obj.hasOwnProperty(key)) continue;\n if (key !== \":@\") return key;\n }\n}\n\nfunction attr_to_str(attrMap, options) {\n let attrStr = \"\";\n if (attrMap && !options.ignoreAttributes) {\n for (let attr in attrMap) {\n if(!attrMap.hasOwnProperty(attr)) continue;\n let attrVal = options.attributeValueProcessor(attr, attrMap[attr]);\n attrVal = replaceEntitiesValue(attrVal, options);\n if (attrVal === true && options.suppressBooleanAttributes) {\n attrStr += ` ${attr.substr(options.attributeNamePrefix.length)}`;\n } else {\n attrStr += ` ${attr.substr(options.attributeNamePrefix.length)}=\"${attrVal}\"`;\n }\n }\n }\n return attrStr;\n}\n\nfunction isStopNode(jPath, options) {\n jPath = jPath.substr(0, jPath.length - options.textNodeName.length - 1);\n let tagName = jPath.substr(jPath.lastIndexOf(\".\") + 1);\n for (let index in options.stopNodes) {\n if (options.stopNodes[index] === jPath || options.stopNodes[index] === \"*.\" + tagName) return true;\n }\n return false;\n}\n\nfunction replaceEntitiesValue(textValue, options) {\n if (textValue && textValue.length > 0 && options.processEntities) {\n for (let i = 0; i < options.entities.length; i++) {\n const entity = options.entities[i];\n textValue = textValue.replace(entity.regex, entity.val);\n }\n }\n return textValue;\n}\nmodule.exports = toXml;\n",
|
|
286
|
+
"'use strict';\n//parse Empty Node as self closing node\nconst buildFromOrderedJs = require('./orderedJs2Xml');\n\nconst defaultOptions = {\n attributeNamePrefix: '@_',\n attributesGroupName: false,\n textNodeName: '#text',\n ignoreAttributes: true,\n cdataPropName: false,\n format: false,\n indentBy: ' ',\n suppressEmptyNode: false,\n suppressUnpairedNode: true,\n suppressBooleanAttributes: true,\n tagValueProcessor: function(key, a) {\n return a;\n },\n attributeValueProcessor: function(attrName, a) {\n return a;\n },\n preserveOrder: false,\n commentPropName: false,\n unpairedTags: [],\n entities: [\n { regex: new RegExp(\"&\", \"g\"), val: \"&\" },//it must be on top\n { regex: new RegExp(\">\", \"g\"), val: \">\" },\n { regex: new RegExp(\"<\", \"g\"), val: \"<\" },\n { regex: new RegExp(\"\\'\", \"g\"), val: \"'\" },\n { regex: new RegExp(\"\\\"\", \"g\"), val: \""\" }\n ],\n processEntities: true,\n stopNodes: [],\n // transformTagName: false,\n // transformAttributeName: false,\n oneListGroup: false\n};\n\nfunction Builder(options) {\n this.options = Object.assign({}, defaultOptions, options);\n if (this.options.ignoreAttributes || this.options.attributesGroupName) {\n this.isAttribute = function(/*a*/) {\n return false;\n };\n } else {\n this.attrPrefixLen = this.options.attributeNamePrefix.length;\n this.isAttribute = isAttribute;\n }\n\n this.processTextOrObjNode = processTextOrObjNode\n\n if (this.options.format) {\n this.indentate = indentate;\n this.tagEndChar = '>\\n';\n this.newLine = '\\n';\n } else {\n this.indentate = function() {\n return '';\n };\n this.tagEndChar = '>';\n this.newLine = '';\n }\n}\n\nBuilder.prototype.build = function(jObj) {\n if(this.options.preserveOrder){\n return buildFromOrderedJs(jObj, this.options);\n }else {\n if(Array.isArray(jObj) && this.options.arrayNodeName && this.options.arrayNodeName.length > 1){\n jObj = {\n [this.options.arrayNodeName] : jObj\n }\n }\n return this.j2x(jObj, 0).val;\n }\n};\n\nBuilder.prototype.j2x = function(jObj, level) {\n let attrStr = '';\n let val = '';\n for (let key in jObj) {\n if(!Object.prototype.hasOwnProperty.call(jObj, key)) continue;\n if (typeof jObj[key] === 'undefined') {\n // supress undefined node only if it is not an attribute\n if (this.isAttribute(key)) {\n val += '';\n }\n } else if (jObj[key] === null) {\n // null attribute should be ignored by the attribute list, but should not cause the tag closing\n if (this.isAttribute(key)) {\n val += '';\n } else if (key[0] === '?') {\n val += this.indentate(level) + '<' + key + '?' + this.tagEndChar;\n } else {\n val += this.indentate(level) + '<' + key + '/' + this.tagEndChar;\n }\n // val += this.indentate(level) + '<' + key + '/' + this.tagEndChar;\n } else if (jObj[key] instanceof Date) {\n val += this.buildTextValNode(jObj[key], key, '', level);\n } else if (typeof jObj[key] !== 'object') {\n //premitive type\n const attr = this.isAttribute(key);\n if (attr) {\n attrStr += this.buildAttrPairStr(attr, '' + jObj[key]);\n }else {\n //tag value\n if (key === this.options.textNodeName) {\n let newval = this.options.tagValueProcessor(key, '' + jObj[key]);\n val += this.replaceEntitiesValue(newval);\n } else {\n val += this.buildTextValNode(jObj[key], key, '', level);\n }\n }\n } else if (Array.isArray(jObj[key])) {\n //repeated nodes\n const arrLen = jObj[key].length;\n let listTagVal = \"\";\n let listTagAttr = \"\";\n for (let j = 0; j < arrLen; j++) {\n const item = jObj[key][j];\n if (typeof item === 'undefined') {\n // supress undefined node\n } else if (item === null) {\n if(key[0] === \"?\") val += this.indentate(level) + '<' + key + '?' + this.tagEndChar;\n else val += this.indentate(level) + '<' + key + '/' + this.tagEndChar;\n // val += this.indentate(level) + '<' + key + '/' + this.tagEndChar;\n } else if (typeof item === 'object') {\n if(this.options.oneListGroup){\n const result = this.j2x(item, level + 1);\n listTagVal += result.val;\n if (this.options.attributesGroupName && item.hasOwnProperty(this.options.attributesGroupName)) {\n listTagAttr += result.attrStr\n }\n }else{\n listTagVal += this.processTextOrObjNode(item, key, level)\n }\n } else {\n if (this.options.oneListGroup) {\n let textValue = this.options.tagValueProcessor(key, item);\n textValue = this.replaceEntitiesValue(textValue);\n listTagVal += textValue;\n } else {\n listTagVal += this.buildTextValNode(item, key, '', level);\n }\n }\n }\n if(this.options.oneListGroup){\n listTagVal = this.buildObjectNode(listTagVal, key, listTagAttr, level);\n }\n val += listTagVal;\n } else {\n //nested node\n if (this.options.attributesGroupName && key === this.options.attributesGroupName) {\n const Ks = Object.keys(jObj[key]);\n const L = Ks.length;\n for (let j = 0; j < L; j++) {\n attrStr += this.buildAttrPairStr(Ks[j], '' + jObj[key][Ks[j]]);\n }\n } else {\n val += this.processTextOrObjNode(jObj[key], key, level)\n }\n }\n }\n return {attrStr: attrStr, val: val};\n};\n\nBuilder.prototype.buildAttrPairStr = function(attrName, val){\n val = this.options.attributeValueProcessor(attrName, '' + val);\n val = this.replaceEntitiesValue(val);\n if (this.options.suppressBooleanAttributes && val === \"true\") {\n return ' ' + attrName;\n } else return ' ' + attrName + '=\"' + val + '\"';\n}\n\nfunction processTextOrObjNode (object, key, level) {\n const result = this.j2x(object, level + 1);\n if (object[this.options.textNodeName] !== undefined && Object.keys(object).length === 1) {\n return this.buildTextValNode(object[this.options.textNodeName], key, result.attrStr, level);\n } else {\n return this.buildObjectNode(result.val, key, result.attrStr, level);\n }\n}\n\nBuilder.prototype.buildObjectNode = function(val, key, attrStr, level) {\n if(val === \"\"){\n if(key[0] === \"?\") return this.indentate(level) + '<' + key + attrStr+ '?' + this.tagEndChar;\n else {\n return this.indentate(level) + '<' + key + attrStr + this.closeTag(key) + this.tagEndChar;\n }\n }else{\n\n let tagEndExp = '</' + key + this.tagEndChar;\n let piClosingChar = \"\";\n \n if(key[0] === \"?\") {\n piClosingChar = \"?\";\n tagEndExp = \"\";\n }\n \n // attrStr is an empty string in case the attribute came as undefined or null\n if ((attrStr || attrStr === '') && val.indexOf('<') === -1) {\n return ( this.indentate(level) + '<' + key + attrStr + piClosingChar + '>' + val + tagEndExp );\n } else if (this.options.commentPropName !== false && key === this.options.commentPropName && piClosingChar.length === 0) {\n return this.indentate(level) + `<!--${val}-->` + this.newLine;\n }else {\n return (\n this.indentate(level) + '<' + key + attrStr + piClosingChar + this.tagEndChar +\n val +\n this.indentate(level) + tagEndExp );\n }\n }\n}\n\nBuilder.prototype.closeTag = function(key){\n let closeTag = \"\";\n if(this.options.unpairedTags.indexOf(key) !== -1){ //unpaired\n if(!this.options.suppressUnpairedNode) closeTag = \"/\"\n }else if(this.options.suppressEmptyNode){ //empty\n closeTag = \"/\";\n }else{\n closeTag = `></${key}`\n }\n return closeTag;\n}\n\nfunction buildEmptyObjNode(val, key, attrStr, level) {\n if (val !== '') {\n return this.buildObjectNode(val, key, attrStr, level);\n } else {\n if(key[0] === \"?\") return this.indentate(level) + '<' + key + attrStr+ '?' + this.tagEndChar;\n else {\n return this.indentate(level) + '<' + key + attrStr + '/' + this.tagEndChar;\n // return this.buildTagStr(level,key, attrStr);\n }\n }\n}\n\nBuilder.prototype.buildTextValNode = function(val, key, attrStr, level) {\n if (this.options.cdataPropName !== false && key === this.options.cdataPropName) {\n return this.indentate(level) + `<![CDATA[${val}]]>` + this.newLine;\n }else if (this.options.commentPropName !== false && key === this.options.commentPropName) {\n return this.indentate(level) + `<!--${val}-->` + this.newLine;\n }else if(key[0] === \"?\") {//PI tag\n return this.indentate(level) + '<' + key + attrStr+ '?' + this.tagEndChar; \n }else{\n let textValue = this.options.tagValueProcessor(key, val);\n textValue = this.replaceEntitiesValue(textValue);\n \n if( textValue === ''){\n return this.indentate(level) + '<' + key + attrStr + this.closeTag(key) + this.tagEndChar;\n }else{\n return this.indentate(level) + '<' + key + attrStr + '>' +\n textValue +\n '</' + key + this.tagEndChar;\n }\n }\n}\n\nBuilder.prototype.replaceEntitiesValue = function(textValue){\n if(textValue && textValue.length > 0 && this.options.processEntities){\n for (let i=0; i<this.options.entities.length; i++) {\n const entity = this.options.entities[i];\n textValue = textValue.replace(entity.regex, entity.val);\n }\n }\n return textValue;\n}\n\nfunction indentate(level) {\n return this.options.indentBy.repeat(level);\n}\n\nfunction isAttribute(name /*, options*/) {\n if (name.startsWith(this.options.attributeNamePrefix) && name !== this.options.textNodeName) {\n return name.substr(this.attrPrefixLen);\n } else {\n return false;\n }\n}\n\nmodule.exports = Builder;\n",
|
|
287
|
+
"'use strict';\n\nconst validator = require('./validator');\nconst XMLParser = require('./xmlparser/XMLParser');\nconst XMLBuilder = require('./xmlbuilder/json2xml');\n\nmodule.exports = {\n XMLParser: XMLParser,\n XMLValidator: validator,\n XMLBuilder: XMLBuilder\n}",
|
|
288
|
+
"\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __name = (target, value) => __defProp(target, \"name\", { value, configurable: true });\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/submodules/protocols/index.ts\nvar protocols_exports = {};\n__export(protocols_exports, {\n _toBool: () => _toBool,\n _toNum: () => _toNum,\n _toStr: () => _toStr,\n awsExpectUnion: () => awsExpectUnion,\n loadRestJsonErrorCode: () => loadRestJsonErrorCode,\n loadRestXmlErrorCode: () => loadRestXmlErrorCode,\n parseJsonBody: () => parseJsonBody,\n parseJsonErrorBody: () => parseJsonErrorBody,\n parseXmlBody: () => parseXmlBody,\n parseXmlErrorBody: () => parseXmlErrorBody\n});\nmodule.exports = __toCommonJS(protocols_exports);\n\n// src/submodules/protocols/coercing-serializers.ts\nvar _toStr = /* @__PURE__ */ __name((val) => {\n if (val == null) {\n return val;\n }\n if (typeof val === \"number\" || typeof val === \"bigint\") {\n const warning = new Error(`Received number ${val} where a string was expected.`);\n warning.name = \"Warning\";\n console.warn(warning);\n return String(val);\n }\n if (typeof val === \"boolean\") {\n const warning = new Error(`Received boolean ${val} where a string was expected.`);\n warning.name = \"Warning\";\n console.warn(warning);\n return String(val);\n }\n return val;\n}, \"_toStr\");\nvar _toBool = /* @__PURE__ */ __name((val) => {\n if (val == null) {\n return val;\n }\n if (typeof val === \"number\") {\n }\n if (typeof val === \"string\") {\n const lowercase = val.toLowerCase();\n if (val !== \"\" && lowercase !== \"false\" && lowercase !== \"true\") {\n const warning = new Error(`Received string \"${val}\" where a boolean was expected.`);\n warning.name = \"Warning\";\n console.warn(warning);\n }\n return val !== \"\" && lowercase !== \"false\";\n }\n return val;\n}, \"_toBool\");\nvar _toNum = /* @__PURE__ */ __name((val) => {\n if (val == null) {\n return val;\n }\n if (typeof val === \"boolean\") {\n }\n if (typeof val === \"string\") {\n const num = Number(val);\n if (num.toString() !== val) {\n const warning = new Error(`Received string \"${val}\" where a number was expected.`);\n warning.name = \"Warning\";\n console.warn(warning);\n return val;\n }\n return num;\n }\n return val;\n}, \"_toNum\");\n\n// src/submodules/protocols/json/awsExpectUnion.ts\nvar import_smithy_client = require(\"@smithy/smithy-client\");\nvar awsExpectUnion = /* @__PURE__ */ __name((value) => {\n if (value == null) {\n return void 0;\n }\n if (typeof value === \"object\" && \"__type\" in value) {\n delete value.__type;\n }\n return (0, import_smithy_client.expectUnion)(value);\n}, \"awsExpectUnion\");\n\n// src/submodules/protocols/common.ts\nvar import_smithy_client2 = require(\"@smithy/smithy-client\");\nvar collectBodyString = /* @__PURE__ */ __name((streamBody, context) => (0, import_smithy_client2.collectBody)(streamBody, context).then((body) => context.utf8Encoder(body)), \"collectBodyString\");\n\n// src/submodules/protocols/json/parseJsonBody.ts\nvar parseJsonBody = /* @__PURE__ */ __name((streamBody, context) => collectBodyString(streamBody, context).then((encoded) => {\n if (encoded.length) {\n try {\n return JSON.parse(encoded);\n } catch (e) {\n if ((e == null ? void 0 : e.name) === \"SyntaxError\") {\n Object.defineProperty(e, \"$responseBodyText\", {\n value: encoded\n });\n }\n throw e;\n }\n }\n return {};\n}), \"parseJsonBody\");\nvar parseJsonErrorBody = /* @__PURE__ */ __name(async (errorBody, context) => {\n const value = await parseJsonBody(errorBody, context);\n value.message = value.message ?? value.Message;\n return value;\n}, \"parseJsonErrorBody\");\nvar loadRestJsonErrorCode = /* @__PURE__ */ __name((output, data) => {\n const findKey = /* @__PURE__ */ __name((object, key) => Object.keys(object).find((k) => k.toLowerCase() === key.toLowerCase()), \"findKey\");\n const sanitizeErrorCode = /* @__PURE__ */ __name((rawValue) => {\n let cleanValue = rawValue;\n if (typeof cleanValue === \"number\") {\n cleanValue = cleanValue.toString();\n }\n if (cleanValue.indexOf(\",\") >= 0) {\n cleanValue = cleanValue.split(\",\")[0];\n }\n if (cleanValue.indexOf(\":\") >= 0) {\n cleanValue = cleanValue.split(\":\")[0];\n }\n if (cleanValue.indexOf(\"#\") >= 0) {\n cleanValue = cleanValue.split(\"#\")[1];\n }\n return cleanValue;\n }, \"sanitizeErrorCode\");\n const headerKey = findKey(output.headers, \"x-amzn-errortype\");\n if (headerKey !== void 0) {\n return sanitizeErrorCode(output.headers[headerKey]);\n }\n if (data.code !== void 0) {\n return sanitizeErrorCode(data.code);\n }\n if (data[\"__type\"] !== void 0) {\n return sanitizeErrorCode(data[\"__type\"]);\n }\n}, \"loadRestJsonErrorCode\");\n\n// src/submodules/protocols/xml/parseXmlBody.ts\nvar import_smithy_client3 = require(\"@smithy/smithy-client\");\nvar import_fast_xml_parser = require(\"fast-xml-parser\");\nvar parseXmlBody = /* @__PURE__ */ __name((streamBody, context) => collectBodyString(streamBody, context).then((encoded) => {\n if (encoded.length) {\n const parser = new import_fast_xml_parser.XMLParser({\n attributeNamePrefix: \"\",\n htmlEntities: true,\n ignoreAttributes: false,\n ignoreDeclaration: true,\n parseTagValue: false,\n trimValues: false,\n tagValueProcessor: (_, val) => val.trim() === \"\" && val.includes(\"\\n\") ? \"\" : void 0\n });\n parser.addEntity(\"#xD\", \"\\r\");\n parser.addEntity(\"#10\", \"\\n\");\n let parsedObj;\n try {\n parsedObj = parser.parse(encoded, true);\n } catch (e) {\n if (e && typeof e === \"object\") {\n Object.defineProperty(e, \"$responseBodyText\", {\n value: encoded\n });\n }\n throw e;\n }\n const textNodeName = \"#text\";\n const key = Object.keys(parsedObj)[0];\n const parsedObjToReturn = parsedObj[key];\n if (parsedObjToReturn[textNodeName]) {\n parsedObjToReturn[key] = parsedObjToReturn[textNodeName];\n delete parsedObjToReturn[textNodeName];\n }\n return (0, import_smithy_client3.getValueFromTextNode)(parsedObjToReturn);\n }\n return {};\n}), \"parseXmlBody\");\nvar parseXmlErrorBody = /* @__PURE__ */ __name(async (errorBody, context) => {\n const value = await parseXmlBody(errorBody, context);\n if (value.Error) {\n value.Error.message = value.Error.message ?? value.Error.Message;\n }\n return value;\n}, \"parseXmlErrorBody\");\nvar loadRestXmlErrorCode = /* @__PURE__ */ __name((output, data) => {\n var _a;\n if (((_a = data == null ? void 0 : data.Error) == null ? void 0 : _a.Code) !== void 0) {\n return data.Error.Code;\n }\n if ((data == null ? void 0 : data.Code) !== void 0) {\n return data.Code;\n }\n if (output.statusCode == 404) {\n return \"NotFound\";\n }\n}, \"loadRestXmlErrorCode\");\n// Annotate the CommonJS export names for ESM import in node:\n0 && (module.exports = {\n _toBool,\n _toNum,\n _toStr,\n awsExpectUnion,\n loadRestJsonErrorCode,\n loadRestXmlErrorCode,\n parseJsonBody,\n parseJsonErrorBody,\n parseXmlBody,\n parseXmlErrorBody\n});\n",
|
|
289
|
+
"\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst tslib_1 = require(\"tslib\");\ntslib_1.__exportStar(require(\"./submodules/client/index\"), exports);\ntslib_1.__exportStar(require(\"./submodules/httpAuthSchemes/index\"), exports);\ntslib_1.__exportStar(require(\"./submodules/protocols/index\"), exports);\n",
|
|
290
|
+
"import { CredentialsProviderError } from \"@smithy/property-provider\";\nexport const ENV_KEY = \"AWS_ACCESS_KEY_ID\";\nexport const ENV_SECRET = \"AWS_SECRET_ACCESS_KEY\";\nexport const ENV_SESSION = \"AWS_SESSION_TOKEN\";\nexport const ENV_EXPIRATION = \"AWS_CREDENTIAL_EXPIRATION\";\nexport const ENV_CREDENTIAL_SCOPE = \"AWS_CREDENTIAL_SCOPE\";\nexport const ENV_ACCOUNT_ID = \"AWS_ACCOUNT_ID\";\nexport const fromEnv = (init) => async () => {\n init?.logger?.debug(\"@aws-sdk/credential-provider-env - fromEnv\");\n const accessKeyId = process.env[ENV_KEY];\n const secretAccessKey = process.env[ENV_SECRET];\n const sessionToken = process.env[ENV_SESSION];\n const expiry = process.env[ENV_EXPIRATION];\n const credentialScope = process.env[ENV_CREDENTIAL_SCOPE];\n const accountId = process.env[ENV_ACCOUNT_ID];\n if (accessKeyId && secretAccessKey) {\n return {\n accessKeyId,\n secretAccessKey,\n ...(sessionToken && { sessionToken }),\n ...(expiry && { expiration: new Date(expiry) }),\n ...(credentialScope && { credentialScope }),\n ...(accountId && { accountId }),\n };\n }\n throw new CredentialsProviderError(\"Unable to find environment variable credentials.\", { logger: init?.logger });\n};\n",
|
|
291
|
+
"export * from \"./fromEnv\";\n",
|
|
292
|
+
"import { ProviderError } from \"@smithy/property-provider\";\nimport { Buffer } from \"buffer\";\nimport { request } from \"http\";\nexport function httpRequest(options) {\n return new Promise((resolve, reject) => {\n const req = request({\n method: \"GET\",\n ...options,\n hostname: options.hostname?.replace(/^\\[(.+)\\]$/, \"$1\"),\n });\n req.on(\"error\", (err) => {\n reject(Object.assign(new ProviderError(\"Unable to connect to instance metadata service\"), err));\n req.destroy();\n });\n req.on(\"timeout\", () => {\n reject(new ProviderError(\"TimeoutError from instance metadata service\"));\n req.destroy();\n });\n req.on(\"response\", (res) => {\n const { statusCode = 400 } = res;\n if (statusCode < 200 || 300 <= statusCode) {\n reject(Object.assign(new ProviderError(\"Error response received from instance metadata service\"), { statusCode }));\n req.destroy();\n }\n const chunks = [];\n res.on(\"data\", (chunk) => {\n chunks.push(chunk);\n });\n res.on(\"end\", () => {\n resolve(Buffer.concat(chunks));\n req.destroy();\n });\n });\n req.end();\n });\n}\n",
|
|
293
|
+
"export const isImdsCredentials = (arg) => Boolean(arg) &&\n typeof arg === \"object\" &&\n typeof arg.AccessKeyId === \"string\" &&\n typeof arg.SecretAccessKey === \"string\" &&\n typeof arg.Token === \"string\" &&\n typeof arg.Expiration === \"string\";\nexport const fromImdsCredentials = (creds) => ({\n accessKeyId: creds.AccessKeyId,\n secretAccessKey: creds.SecretAccessKey,\n sessionToken: creds.Token,\n expiration: new Date(creds.Expiration),\n ...(creds.AccountId && { accountId: creds.AccountId }),\n});\n",
|
|
294
|
+
"export const DEFAULT_TIMEOUT = 1000;\nexport const DEFAULT_MAX_RETRIES = 0;\nexport const providerConfigFromInit = ({ maxRetries = DEFAULT_MAX_RETRIES, timeout = DEFAULT_TIMEOUT, }) => ({ maxRetries, timeout });\n",
|
|
295
|
+
"export const retry = (toRetry, maxRetries) => {\n let promise = toRetry();\n for (let i = 0; i < maxRetries; i++) {\n promise = promise.catch(toRetry);\n }\n return promise;\n};\n",
|
|
296
|
+
"import { CredentialsProviderError } from \"@smithy/property-provider\";\nimport { parse } from \"url\";\nimport { httpRequest } from \"./remoteProvider/httpRequest\";\nimport { fromImdsCredentials, isImdsCredentials } from \"./remoteProvider/ImdsCredentials\";\nimport { providerConfigFromInit } from \"./remoteProvider/RemoteProviderInit\";\nimport { retry } from \"./remoteProvider/retry\";\nexport const ENV_CMDS_FULL_URI = \"AWS_CONTAINER_CREDENTIALS_FULL_URI\";\nexport const ENV_CMDS_RELATIVE_URI = \"AWS_CONTAINER_CREDENTIALS_RELATIVE_URI\";\nexport const ENV_CMDS_AUTH_TOKEN = \"AWS_CONTAINER_AUTHORIZATION_TOKEN\";\nexport const fromContainerMetadata = (init = {}) => {\n const { timeout, maxRetries } = providerConfigFromInit(init);\n return () => retry(async () => {\n const requestOptions = await getCmdsUri({ logger: init.logger });\n const credsResponse = JSON.parse(await requestFromEcsImds(timeout, requestOptions));\n if (!isImdsCredentials(credsResponse)) {\n throw new CredentialsProviderError(\"Invalid response received from instance metadata service.\", {\n logger: init.logger,\n });\n }\n return fromImdsCredentials(credsResponse);\n }, maxRetries);\n};\nconst requestFromEcsImds = async (timeout, options) => {\n if (process.env[ENV_CMDS_AUTH_TOKEN]) {\n options.headers = {\n ...options.headers,\n Authorization: process.env[ENV_CMDS_AUTH_TOKEN],\n };\n }\n const buffer = await httpRequest({\n ...options,\n timeout,\n });\n return buffer.toString();\n};\nconst CMDS_IP = \"169.254.170.2\";\nconst GREENGRASS_HOSTS = {\n localhost: true,\n \"127.0.0.1\": true,\n};\nconst GREENGRASS_PROTOCOLS = {\n \"http:\": true,\n \"https:\": true,\n};\nconst getCmdsUri = async ({ logger }) => {\n if (process.env[ENV_CMDS_RELATIVE_URI]) {\n return {\n hostname: CMDS_IP,\n path: process.env[ENV_CMDS_RELATIVE_URI],\n };\n }\n if (process.env[ENV_CMDS_FULL_URI]) {\n const parsed = parse(process.env[ENV_CMDS_FULL_URI]);\n if (!parsed.hostname || !(parsed.hostname in GREENGRASS_HOSTS)) {\n throw new CredentialsProviderError(`${parsed.hostname} is not a valid container metadata service hostname`, {\n tryNextLink: false,\n logger,\n });\n }\n if (!parsed.protocol || !(parsed.protocol in GREENGRASS_PROTOCOLS)) {\n throw new CredentialsProviderError(`${parsed.protocol} is not a valid container metadata service protocol`, {\n tryNextLink: false,\n logger,\n });\n }\n return {\n ...parsed,\n port: parsed.port ? parseInt(parsed.port, 10) : undefined,\n };\n }\n throw new CredentialsProviderError(\"The container metadata credential provider cannot be used unless\" +\n ` the ${ENV_CMDS_RELATIVE_URI} or ${ENV_CMDS_FULL_URI} environment` +\n \" variable is set\", {\n tryNextLink: false,\n logger,\n });\n};\n",
|
|
297
|
+
"import { CredentialsProviderError } from \"@smithy/property-provider\";\nexport class InstanceMetadataV1FallbackError extends CredentialsProviderError {\n constructor(message, tryNextLink = true) {\n super(message, tryNextLink);\n this.tryNextLink = tryNextLink;\n this.name = \"InstanceMetadataV1FallbackError\";\n Object.setPrototypeOf(this, InstanceMetadataV1FallbackError.prototype);\n }\n}\n",
|
|
298
|
+
"export var Endpoint;\n(function (Endpoint) {\n Endpoint[\"IPv4\"] = \"http://169.254.169.254\";\n Endpoint[\"IPv6\"] = \"http://[fd00:ec2::254]\";\n})(Endpoint || (Endpoint = {}));\n",
|
|
299
|
+
"export const ENV_ENDPOINT_NAME = \"AWS_EC2_METADATA_SERVICE_ENDPOINT\";\nexport const CONFIG_ENDPOINT_NAME = \"ec2_metadata_service_endpoint\";\nexport const ENDPOINT_CONFIG_OPTIONS = {\n environmentVariableSelector: (env) => env[ENV_ENDPOINT_NAME],\n configFileSelector: (profile) => profile[CONFIG_ENDPOINT_NAME],\n default: undefined,\n};\n",
|
|
300
|
+
"export var EndpointMode;\n(function (EndpointMode) {\n EndpointMode[\"IPv4\"] = \"IPv4\";\n EndpointMode[\"IPv6\"] = \"IPv6\";\n})(EndpointMode || (EndpointMode = {}));\n",
|
|
301
|
+
"import { EndpointMode } from \"./EndpointMode\";\nexport const ENV_ENDPOINT_MODE_NAME = \"AWS_EC2_METADATA_SERVICE_ENDPOINT_MODE\";\nexport const CONFIG_ENDPOINT_MODE_NAME = \"ec2_metadata_service_endpoint_mode\";\nexport const ENDPOINT_MODE_CONFIG_OPTIONS = {\n environmentVariableSelector: (env) => env[ENV_ENDPOINT_MODE_NAME],\n configFileSelector: (profile) => profile[CONFIG_ENDPOINT_MODE_NAME],\n default: EndpointMode.IPv4,\n};\n",
|
|
302
|
+
"import { loadConfig } from \"@smithy/node-config-provider\";\nimport { parseUrl } from \"@smithy/url-parser\";\nimport { Endpoint as InstanceMetadataEndpoint } from \"../config/Endpoint\";\nimport { ENDPOINT_CONFIG_OPTIONS } from \"../config/EndpointConfigOptions\";\nimport { EndpointMode } from \"../config/EndpointMode\";\nimport { ENDPOINT_MODE_CONFIG_OPTIONS, } from \"../config/EndpointModeConfigOptions\";\nexport const getInstanceMetadataEndpoint = async () => parseUrl((await getFromEndpointConfig()) || (await getFromEndpointModeConfig()));\nconst getFromEndpointConfig = async () => loadConfig(ENDPOINT_CONFIG_OPTIONS)();\nconst getFromEndpointModeConfig = async () => {\n const endpointMode = await loadConfig(ENDPOINT_MODE_CONFIG_OPTIONS)();\n switch (endpointMode) {\n case EndpointMode.IPv4:\n return InstanceMetadataEndpoint.IPv4;\n case EndpointMode.IPv6:\n return InstanceMetadataEndpoint.IPv6;\n default:\n throw new Error(`Unsupported endpoint mode: ${endpointMode}.` + ` Select from ${Object.values(EndpointMode)}`);\n }\n};\n",
|
|
303
|
+
"const STATIC_STABILITY_REFRESH_INTERVAL_SECONDS = 5 * 60;\nconst STATIC_STABILITY_REFRESH_INTERVAL_JITTER_WINDOW_SECONDS = 5 * 60;\nconst STATIC_STABILITY_DOC_URL = \"https://docs.aws.amazon.com/sdkref/latest/guide/feature-static-credentials.html\";\nexport const getExtendedInstanceMetadataCredentials = (credentials, logger) => {\n const refreshInterval = STATIC_STABILITY_REFRESH_INTERVAL_SECONDS +\n Math.floor(Math.random() * STATIC_STABILITY_REFRESH_INTERVAL_JITTER_WINDOW_SECONDS);\n const newExpiration = new Date(Date.now() + refreshInterval * 1000);\n logger.warn(\"Attempting credential expiration extension due to a credential service availability issue. A refresh of these \" +\n `credentials will be attempted after ${new Date(newExpiration)}.\\nFor more information, please visit: ` +\n STATIC_STABILITY_DOC_URL);\n const originalExpiration = credentials.originalExpiration ?? credentials.expiration;\n return {\n ...credentials,\n ...(originalExpiration ? { originalExpiration } : {}),\n expiration: newExpiration,\n };\n};\n",
|
|
304
|
+
"import { getExtendedInstanceMetadataCredentials } from \"./getExtendedInstanceMetadataCredentials\";\nexport const staticStabilityProvider = (provider, options = {}) => {\n const logger = options?.logger || console;\n let pastCredentials;\n return async () => {\n let credentials;\n try {\n credentials = await provider();\n if (credentials.expiration && credentials.expiration.getTime() < Date.now()) {\n credentials = getExtendedInstanceMetadataCredentials(credentials, logger);\n }\n }\n catch (e) {\n if (pastCredentials) {\n logger.warn(\"Credential renew failed: \", e);\n credentials = getExtendedInstanceMetadataCredentials(pastCredentials, logger);\n }\n else {\n throw e;\n }\n }\n pastCredentials = credentials;\n return credentials;\n };\n};\n",
|
|
305
|
+
"import { loadConfig } from \"@smithy/node-config-provider\";\nimport { CredentialsProviderError } from \"@smithy/property-provider\";\nimport { InstanceMetadataV1FallbackError } from \"./error/InstanceMetadataV1FallbackError\";\nimport { httpRequest } from \"./remoteProvider/httpRequest\";\nimport { fromImdsCredentials, isImdsCredentials } from \"./remoteProvider/ImdsCredentials\";\nimport { providerConfigFromInit } from \"./remoteProvider/RemoteProviderInit\";\nimport { retry } from \"./remoteProvider/retry\";\nimport { getInstanceMetadataEndpoint } from \"./utils/getInstanceMetadataEndpoint\";\nimport { staticStabilityProvider } from \"./utils/staticStabilityProvider\";\nconst IMDS_PATH = \"/latest/meta-data/iam/security-credentials/\";\nconst IMDS_TOKEN_PATH = \"/latest/api/token\";\nconst AWS_EC2_METADATA_V1_DISABLED = \"AWS_EC2_METADATA_V1_DISABLED\";\nconst PROFILE_AWS_EC2_METADATA_V1_DISABLED = \"ec2_metadata_v1_disabled\";\nconst X_AWS_EC2_METADATA_TOKEN = \"x-aws-ec2-metadata-token\";\nexport const fromInstanceMetadata = (init = {}) => staticStabilityProvider(getInstanceMetadataProvider(init), { logger: init.logger });\nconst getInstanceMetadataProvider = (init = {}) => {\n let disableFetchToken = false;\n const { logger, profile } = init;\n const { timeout, maxRetries } = providerConfigFromInit(init);\n const getCredentials = async (maxRetries, options) => {\n const isImdsV1Fallback = disableFetchToken || options.headers?.[X_AWS_EC2_METADATA_TOKEN] == null;\n if (isImdsV1Fallback) {\n let fallbackBlockedFromProfile = false;\n let fallbackBlockedFromProcessEnv = false;\n const configValue = await loadConfig({\n environmentVariableSelector: (env) => {\n const envValue = env[AWS_EC2_METADATA_V1_DISABLED];\n fallbackBlockedFromProcessEnv = !!envValue && envValue !== \"false\";\n if (envValue === undefined) {\n throw new CredentialsProviderError(`${AWS_EC2_METADATA_V1_DISABLED} not set in env, checking config file next.`, { logger: init.logger });\n }\n return fallbackBlockedFromProcessEnv;\n },\n configFileSelector: (profile) => {\n const profileValue = profile[PROFILE_AWS_EC2_METADATA_V1_DISABLED];\n fallbackBlockedFromProfile = !!profileValue && profileValue !== \"false\";\n return fallbackBlockedFromProfile;\n },\n default: false,\n }, {\n profile,\n })();\n if (init.ec2MetadataV1Disabled || configValue) {\n const causes = [];\n if (init.ec2MetadataV1Disabled)\n causes.push(\"credential provider initialization (runtime option ec2MetadataV1Disabled)\");\n if (fallbackBlockedFromProfile)\n causes.push(`config file profile (${PROFILE_AWS_EC2_METADATA_V1_DISABLED})`);\n if (fallbackBlockedFromProcessEnv)\n causes.push(`process environment variable (${AWS_EC2_METADATA_V1_DISABLED})`);\n throw new InstanceMetadataV1FallbackError(`AWS EC2 Metadata v1 fallback has been blocked by AWS SDK configuration in the following: [${causes.join(\", \")}].`);\n }\n }\n const imdsProfile = (await retry(async () => {\n let profile;\n try {\n profile = await getProfile(options);\n }\n catch (err) {\n if (err.statusCode === 401) {\n disableFetchToken = false;\n }\n throw err;\n }\n return profile;\n }, maxRetries)).trim();\n return retry(async () => {\n let creds;\n try {\n creds = await getCredentialsFromProfile(imdsProfile, options, init);\n }\n catch (err) {\n if (err.statusCode === 401) {\n disableFetchToken = false;\n }\n throw err;\n }\n return creds;\n }, maxRetries);\n };\n return async () => {\n const endpoint = await getInstanceMetadataEndpoint();\n if (disableFetchToken) {\n logger?.debug(\"AWS SDK Instance Metadata\", \"using v1 fallback (no token fetch)\");\n return getCredentials(maxRetries, { ...endpoint, timeout });\n }\n else {\n let token;\n try {\n token = (await getMetadataToken({ ...endpoint, timeout })).toString();\n }\n catch (error) {\n if (error?.statusCode === 400) {\n throw Object.assign(error, {\n message: \"EC2 Metadata token request returned error\",\n });\n }\n else if (error.message === \"TimeoutError\" || [403, 404, 405].includes(error.statusCode)) {\n disableFetchToken = true;\n }\n logger?.debug(\"AWS SDK Instance Metadata\", \"using v1 fallback (initial)\");\n return getCredentials(maxRetries, { ...endpoint, timeout });\n }\n return getCredentials(maxRetries, {\n ...endpoint,\n headers: {\n [X_AWS_EC2_METADATA_TOKEN]: token,\n },\n timeout,\n });\n }\n };\n};\nconst getMetadataToken = async (options) => httpRequest({\n ...options,\n path: IMDS_TOKEN_PATH,\n method: \"PUT\",\n headers: {\n \"x-aws-ec2-metadata-token-ttl-seconds\": \"21600\",\n },\n});\nconst getProfile = async (options) => (await httpRequest({ ...options, path: IMDS_PATH })).toString();\nconst getCredentialsFromProfile = async (profile, options, init) => {\n const credentialsResponse = JSON.parse((await httpRequest({\n ...options,\n path: IMDS_PATH + profile,\n })).toString());\n if (!isImdsCredentials(credentialsResponse)) {\n throw new CredentialsProviderError(\"Invalid response received from instance metadata service.\", {\n logger: init.logger,\n });\n }\n return fromImdsCredentials(credentialsResponse);\n};\n",
|
|
306
|
+
"export * from \"./fromContainerMetadata\";\nexport * from \"./fromInstanceMetadata\";\nexport * from \"./remoteProvider/RemoteProviderInit\";\nexport * from \"./types\";\nexport { httpRequest } from \"./remoteProvider/httpRequest\";\nexport { getInstanceMetadataEndpoint } from \"./utils/getInstanceMetadataEndpoint\";\nexport { Endpoint } from \"./config/Endpoint\";\n",
|
|
307
|
+
"import { CredentialsProviderError } from \"@smithy/property-provider\";\nconst LOOPBACK_CIDR_IPv4 = \"127.0.0.0/8\";\nconst LOOPBACK_CIDR_IPv6 = \"::1/128\";\nconst ECS_CONTAINER_HOST = \"169.254.170.2\";\nconst EKS_CONTAINER_HOST_IPv4 = \"169.254.170.23\";\nconst EKS_CONTAINER_HOST_IPv6 = \"[fd00:ec2::23]\";\nexport const checkUrl = (url, logger) => {\n if (url.protocol === \"https:\") {\n return;\n }\n if (url.hostname === ECS_CONTAINER_HOST ||\n url.hostname === EKS_CONTAINER_HOST_IPv4 ||\n url.hostname === EKS_CONTAINER_HOST_IPv6) {\n return;\n }\n if (url.hostname.includes(\"[\")) {\n if (url.hostname === \"[::1]\" || url.hostname === \"[0000:0000:0000:0000:0000:0000:0000:0001]\") {\n return;\n }\n }\n else {\n if (url.hostname === \"localhost\") {\n return;\n }\n const ipComponents = url.hostname.split(\".\");\n const inRange = (component) => {\n const num = parseInt(component, 10);\n return 0 <= num && num <= 255;\n };\n if (ipComponents[0] === \"127\" &&\n inRange(ipComponents[1]) &&\n inRange(ipComponents[2]) &&\n inRange(ipComponents[3]) &&\n ipComponents.length === 4) {\n return;\n }\n }\n throw new CredentialsProviderError(`URL not accepted. It must either be HTTPS or match one of the following:\n - loopback CIDR 127.0.0.0/8 or [::1/128]\n - ECS container host 169.254.170.2\n - EKS container host 169.254.170.23 or [fd00:ec2::23]`, { logger });\n};\n",
|
|
308
|
+
"import { CredentialsProviderError } from \"@smithy/property-provider\";\nimport { HttpRequest } from \"@smithy/protocol-http\";\nimport { parseRfc3339DateTime } from \"@smithy/smithy-client\";\nimport { sdkStreamMixin } from \"@smithy/util-stream\";\nexport function createGetRequest(url) {\n return new HttpRequest({\n protocol: url.protocol,\n hostname: url.hostname,\n port: Number(url.port),\n path: url.pathname,\n query: Array.from(url.searchParams.entries()).reduce((acc, [k, v]) => {\n acc[k] = v;\n return acc;\n }, {}),\n fragment: url.hash,\n });\n}\nexport async function getCredentials(response, logger) {\n const stream = sdkStreamMixin(response.body);\n const str = await stream.transformToString();\n if (response.statusCode === 200) {\n const parsed = JSON.parse(str);\n if (typeof parsed.AccessKeyId !== \"string\" ||\n typeof parsed.SecretAccessKey !== \"string\" ||\n typeof parsed.Token !== \"string\" ||\n typeof parsed.Expiration !== \"string\") {\n throw new CredentialsProviderError(\"HTTP credential provider response not of the required format, an object matching: \" +\n \"{ AccessKeyId: string, SecretAccessKey: string, Token: string, Expiration: string(rfc3339) }\", { logger });\n }\n return {\n accessKeyId: parsed.AccessKeyId,\n secretAccessKey: parsed.SecretAccessKey,\n sessionToken: parsed.Token,\n expiration: parseRfc3339DateTime(parsed.Expiration),\n };\n }\n if (response.statusCode >= 400 && response.statusCode < 500) {\n let parsedBody = {};\n try {\n parsedBody = JSON.parse(str);\n }\n catch (e) { }\n throw Object.assign(new CredentialsProviderError(`Server responded with status: ${response.statusCode}`, { logger }), {\n Code: parsedBody.Code,\n Message: parsedBody.Message,\n });\n }\n throw new CredentialsProviderError(`Server responded with status: ${response.statusCode}`, { logger });\n}\n",
|
|
309
|
+
"export const retryWrapper = (toRetry, maxRetries, delayMs) => {\n return async () => {\n for (let i = 0; i < maxRetries; ++i) {\n try {\n return await toRetry();\n }\n catch (e) {\n await new Promise((resolve) => setTimeout(resolve, delayMs));\n }\n }\n return await toRetry();\n };\n};\n",
|
|
310
|
+
"import { NodeHttpHandler } from \"@smithy/node-http-handler\";\nimport { CredentialsProviderError } from \"@smithy/property-provider\";\nimport fs from \"fs/promises\";\nimport { checkUrl } from \"./checkUrl\";\nimport { createGetRequest, getCredentials } from \"./requestHelpers\";\nimport { retryWrapper } from \"./retry-wrapper\";\nconst AWS_CONTAINER_CREDENTIALS_RELATIVE_URI = \"AWS_CONTAINER_CREDENTIALS_RELATIVE_URI\";\nconst DEFAULT_LINK_LOCAL_HOST = \"http://169.254.170.2\";\nconst AWS_CONTAINER_CREDENTIALS_FULL_URI = \"AWS_CONTAINER_CREDENTIALS_FULL_URI\";\nconst AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE = \"AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE\";\nconst AWS_CONTAINER_AUTHORIZATION_TOKEN = \"AWS_CONTAINER_AUTHORIZATION_TOKEN\";\nexport const fromHttp = (options = {}) => {\n options.logger?.debug(\"@aws-sdk/credential-provider-http - fromHttp\");\n let host;\n const relative = options.awsContainerCredentialsRelativeUri ?? process.env[AWS_CONTAINER_CREDENTIALS_RELATIVE_URI];\n const full = options.awsContainerCredentialsFullUri ?? process.env[AWS_CONTAINER_CREDENTIALS_FULL_URI];\n const token = options.awsContainerAuthorizationToken ?? process.env[AWS_CONTAINER_AUTHORIZATION_TOKEN];\n const tokenFile = options.awsContainerAuthorizationTokenFile ?? process.env[AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE];\n const warn = options.logger?.constructor?.name === \"NoOpLogger\" || !options.logger ? console.warn : options.logger.warn;\n if (relative && full) {\n warn(\"@aws-sdk/credential-provider-http: \" +\n \"you have set both awsContainerCredentialsRelativeUri and awsContainerCredentialsFullUri.\");\n warn(\"awsContainerCredentialsFullUri will take precedence.\");\n }\n if (token && tokenFile) {\n warn(\"@aws-sdk/credential-provider-http: \" +\n \"you have set both awsContainerAuthorizationToken and awsContainerAuthorizationTokenFile.\");\n warn(\"awsContainerAuthorizationToken will take precedence.\");\n }\n if (full) {\n host = full;\n }\n else if (relative) {\n host = `${DEFAULT_LINK_LOCAL_HOST}${relative}`;\n }\n else {\n throw new CredentialsProviderError(`No HTTP credential provider host provided.\nSet AWS_CONTAINER_CREDENTIALS_FULL_URI or AWS_CONTAINER_CREDENTIALS_RELATIVE_URI.`, { logger: options.logger });\n }\n const url = new URL(host);\n checkUrl(url, options.logger);\n const requestHandler = new NodeHttpHandler({\n requestTimeout: options.timeout ?? 1000,\n connectionTimeout: options.timeout ?? 1000,\n });\n return retryWrapper(async () => {\n const request = createGetRequest(url);\n if (token) {\n request.headers.Authorization = token;\n }\n else if (tokenFile) {\n request.headers.Authorization = (await fs.readFile(tokenFile)).toString();\n }\n try {\n const result = await requestHandler.handle(request);\n return getCredentials(result.response);\n }\n catch (e) {\n throw new CredentialsProviderError(String(e), { logger: options.logger });\n }\n }, options.maxRetries ?? 3, options.timeout ?? 1000);\n};\n",
|
|
311
|
+
"export { fromHttp } from \"./fromHttp/fromHttp\";\n",
|
|
312
|
+
"import { chain, CredentialsProviderError } from \"@smithy/property-provider\";\nexport const ENV_IMDS_DISABLED = \"AWS_EC2_METADATA_DISABLED\";\nexport const remoteProvider = async (init) => {\n const { ENV_CMDS_FULL_URI, ENV_CMDS_RELATIVE_URI, fromContainerMetadata, fromInstanceMetadata } = await import(\"@smithy/credential-provider-imds\");\n if (process.env[ENV_CMDS_RELATIVE_URI] || process.env[ENV_CMDS_FULL_URI]) {\n init.logger?.debug(\"@aws-sdk/credential-provider-node - remoteProvider::fromHttp/fromContainerMetadata\");\n const { fromHttp } = await import(\"@aws-sdk/credential-provider-http\");\n return chain(fromHttp(init), fromContainerMetadata(init));\n }\n if (process.env[ENV_IMDS_DISABLED]) {\n return async () => {\n throw new CredentialsProviderError(\"EC2 Instance Metadata Service access disabled\", { logger: init.logger });\n };\n }\n init.logger?.debug(\"@aws-sdk/credential-provider-node - remoteProvider::fromInstanceMetadata\");\n return fromInstanceMetadata(init);\n};\n",
|
|
313
|
+
"export const isSsoProfile = (arg) => arg &&\n (typeof arg.sso_start_url === \"string\" ||\n typeof arg.sso_account_id === \"string\" ||\n typeof arg.sso_session === \"string\" ||\n typeof arg.sso_region === \"string\" ||\n typeof arg.sso_role_name === \"string\");\n",
|
|
314
|
+
"export const EXPIRE_WINDOW_MS = 5 * 60 * 1000;\nexport const REFRESH_MESSAGE = `To refresh this SSO session run 'aws sso login' with the corresponding profile.`;\n",
|
|
315
|
+
"import { resolveAwsSdkSigV4Config, } from \"@aws-sdk/core\";\nimport { getSmithyContext, normalizeProvider } from \"@smithy/util-middleware\";\nexport const defaultSSOOIDCHttpAuthSchemeParametersProvider = async (config, context, input) => {\n return {\n operation: getSmithyContext(context).operation,\n region: (await normalizeProvider(config.region)()) ||\n (() => {\n throw new Error(\"expected `region` to be configured for `aws.auth#sigv4`\");\n })(),\n };\n};\nfunction createAwsAuthSigv4HttpAuthOption(authParameters) {\n return {\n schemeId: \"aws.auth#sigv4\",\n signingProperties: {\n name: \"sso-oauth\",\n region: authParameters.region,\n },\n propertiesExtractor: (config, context) => ({\n signingProperties: {\n config,\n context,\n },\n }),\n };\n}\nfunction createSmithyApiNoAuthHttpAuthOption(authParameters) {\n return {\n schemeId: \"smithy.api#noAuth\",\n };\n}\nexport const defaultSSOOIDCHttpAuthSchemeProvider = (authParameters) => {\n const options = [];\n switch (authParameters.operation) {\n case \"CreateToken\": {\n options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));\n break;\n }\n case \"RegisterClient\": {\n options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));\n break;\n }\n case \"StartDeviceAuthorization\": {\n options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));\n break;\n }\n default: {\n options.push(createAwsAuthSigv4HttpAuthOption(authParameters));\n }\n }\n return options;\n};\nexport const resolveHttpAuthSchemeConfig = (config) => {\n const config_0 = resolveAwsSdkSigV4Config(config);\n return {\n ...config_0,\n };\n};\n",
|
|
316
|
+
"export const resolveClientEndpointParameters = (options) => {\n return {\n ...options,\n useDualstackEndpoint: options.useDualstackEndpoint ?? false,\n useFipsEndpoint: options.useFipsEndpoint ?? false,\n defaultSigningName: \"sso-oauth\",\n };\n};\nexport const commonParams = {\n UseFIPS: { type: \"builtInParams\", name: \"useFipsEndpoint\" },\n Endpoint: { type: \"builtInParams\", name: \"endpoint\" },\n Region: { type: \"builtInParams\", name: \"region\" },\n UseDualStack: { type: \"builtInParams\", name: \"useDualstackEndpoint\" },\n};\n",
|
|
317
|
+
"export const crtAvailability = {\n isCrtAvailable: false,\n};\n",
|
|
318
|
+
"import { crtAvailability } from \"./crt-availability\";\nexport const isCrtAvailable = () => {\n if (crtAvailability.isCrtAvailable) {\n return [\"md/crt-avail\"];\n }\n return null;\n};\n",
|
|
319
|
+
"import { loadConfig } from \"@smithy/node-config-provider\";\nimport { platform, release } from \"os\";\nimport { env, versions } from \"process\";\nimport { isCrtAvailable } from \"./is-crt-available\";\nexport { crtAvailability } from \"./crt-availability\";\nexport const UA_APP_ID_ENV_NAME = \"AWS_SDK_UA_APP_ID\";\nexport const UA_APP_ID_INI_NAME = \"sdk-ua-app-id\";\nexport const defaultUserAgent = ({ serviceId, clientVersion }) => {\n const sections = [\n [\"aws-sdk-js\", clientVersion],\n [\"ua\", \"2.0\"],\n [`os/${platform()}`, release()],\n [\"lang/js\"],\n [\"md/nodejs\", `${versions.node}`],\n ];\n const crtAvailable = isCrtAvailable();\n if (crtAvailable) {\n sections.push(crtAvailable);\n }\n if (serviceId) {\n sections.push([`api/${serviceId}`, clientVersion]);\n }\n if (env.AWS_EXECUTION_ENV) {\n sections.push([`exec-env/${env.AWS_EXECUTION_ENV}`]);\n }\n const appIdPromise = loadConfig({\n environmentVariableSelector: (env) => env[UA_APP_ID_ENV_NAME],\n configFileSelector: (profile) => profile[UA_APP_ID_INI_NAME],\n default: undefined,\n })();\n let resolvedUserAgent = undefined;\n return async () => {\n if (!resolvedUserAgent) {\n const appId = await appIdPromise;\n resolvedUserAgent = appId ? [...sections, [`app/${appId}`]] : [...sections];\n }\n return resolvedUserAgent;\n };\n};\n",
|
|
320
|
+
"import { fromArrayBuffer, fromString } from \"@smithy/util-buffer-from\";\nimport { toUint8Array } from \"@smithy/util-utf8\";\nimport { Buffer } from \"buffer\";\nimport { createHash, createHmac } from \"crypto\";\nexport class Hash {\n constructor(algorithmIdentifier, secret) {\n this.algorithmIdentifier = algorithmIdentifier;\n this.secret = secret;\n this.reset();\n }\n update(toHash, encoding) {\n this.hash.update(toUint8Array(castSourceData(toHash, encoding)));\n }\n digest() {\n return Promise.resolve(this.hash.digest());\n }\n reset() {\n this.hash = this.secret\n ? createHmac(this.algorithmIdentifier, castSourceData(this.secret))\n : createHash(this.algorithmIdentifier);\n }\n}\nfunction castSourceData(toCast, encoding) {\n if (Buffer.isBuffer(toCast)) {\n return toCast;\n }\n if (typeof toCast === \"string\") {\n return fromString(toCast, encoding);\n }\n if (ArrayBuffer.isView(toCast)) {\n return fromArrayBuffer(toCast.buffer, toCast.byteOffset, toCast.byteLength);\n }\n return fromArrayBuffer(toCast);\n}\n",
|
|
321
|
+
"import { fstatSync, lstatSync } from \"fs\";\nexport const calculateBodyLength = (body) => {\n if (!body) {\n return 0;\n }\n if (typeof body === \"string\") {\n return Buffer.byteLength(body);\n }\n else if (typeof body.byteLength === \"number\") {\n return body.byteLength;\n }\n else if (typeof body.size === \"number\") {\n return body.size;\n }\n else if (typeof body.start === \"number\" && typeof body.end === \"number\") {\n return body.end + 1 - body.start;\n }\n else if (typeof body.path === \"string\" || Buffer.isBuffer(body.path)) {\n return lstatSync(body.path).size;\n }\n else if (typeof body.fd === \"number\") {\n return fstatSync(body.fd).size;\n }\n throw new Error(`Body Length computation failed for ${body}`);\n};\n",
|
|
322
|
+
"export * from \"./calculateBodyLength\";\n",
|
|
323
|
+
"const u = \"required\", v = \"fn\", w = \"argv\", x = \"ref\";\nconst a = true, b = \"isSet\", c = \"booleanEquals\", d = \"error\", e = \"endpoint\", f = \"tree\", g = \"PartitionResult\", h = \"getAttr\", i = { [u]: false, \"type\": \"String\" }, j = { [u]: true, \"default\": false, \"type\": \"Boolean\" }, k = { [x]: \"Endpoint\" }, l = { [v]: c, [w]: [{ [x]: \"UseFIPS\" }, true] }, m = { [v]: c, [w]: [{ [x]: \"UseDualStack\" }, true] }, n = {}, o = { [v]: h, [w]: [{ [x]: g }, \"supportsFIPS\"] }, p = { [x]: g }, q = { [v]: c, [w]: [true, { [v]: h, [w]: [p, \"supportsDualStack\"] }] }, r = [l], s = [m], t = [{ [x]: \"Region\" }];\nconst _data = { version: \"1.0\", parameters: { Region: i, UseDualStack: j, UseFIPS: j, Endpoint: i }, rules: [{ conditions: [{ [v]: b, [w]: [k] }], rules: [{ conditions: r, error: \"Invalid Configuration: FIPS and custom endpoint are not supported\", type: d }, { conditions: s, error: \"Invalid Configuration: Dualstack and custom endpoint are not supported\", type: d }, { endpoint: { url: k, properties: n, headers: n }, type: e }], type: f }, { conditions: [{ [v]: b, [w]: t }], rules: [{ conditions: [{ [v]: \"aws.partition\", [w]: t, assign: g }], rules: [{ conditions: [l, m], rules: [{ conditions: [{ [v]: c, [w]: [a, o] }, q], rules: [{ endpoint: { url: \"https://oidc-fips.{Region}.{PartitionResult#dualStackDnsSuffix}\", properties: n, headers: n }, type: e }], type: f }, { error: \"FIPS and DualStack are enabled, but this partition does not support one or both\", type: d }], type: f }, { conditions: r, rules: [{ conditions: [{ [v]: c, [w]: [o, a] }], rules: [{ conditions: [{ [v]: \"stringEquals\", [w]: [{ [v]: h, [w]: [p, \"name\"] }, \"aws-us-gov\"] }], endpoint: { url: \"https://oidc.{Region}.amazonaws.com\", properties: n, headers: n }, type: e }, { endpoint: { url: \"https://oidc-fips.{Region}.{PartitionResult#dnsSuffix}\", properties: n, headers: n }, type: e }], type: f }, { error: \"FIPS is enabled but this partition does not support FIPS\", type: d }], type: f }, { conditions: s, rules: [{ conditions: [q], rules: [{ endpoint: { url: \"https://oidc.{Region}.{PartitionResult#dualStackDnsSuffix}\", properties: n, headers: n }, type: e }], type: f }, { error: \"DualStack is enabled but this partition does not support DualStack\", type: d }], type: f }, { endpoint: { url: \"https://oidc.{Region}.{PartitionResult#dnsSuffix}\", properties: n, headers: n }, type: e }], type: f }], type: f }, { error: \"Invalid Configuration: Missing Region\", type: d }] };\nexport const ruleSet = _data;\n",
|
|
324
|
+
"import { awsEndpointFunctions } from \"@aws-sdk/util-endpoints\";\nimport { customEndpointFunctions, resolveEndpoint } from \"@smithy/util-endpoints\";\nimport { ruleSet } from \"./ruleset\";\nexport const defaultEndpointResolver = (endpointParams, context = {}) => {\n return resolveEndpoint(ruleSet, {\n endpointParams: endpointParams,\n logger: context.logger,\n });\n};\ncustomEndpointFunctions.aws = awsEndpointFunctions;\n",
|
|
325
|
+
"import { AwsSdkSigV4Signer } from \"@aws-sdk/core\";\nimport { NoAuthSigner } from \"@smithy/core\";\nimport { NoOpLogger } from \"@smithy/smithy-client\";\nimport { parseUrl } from \"@smithy/url-parser\";\nimport { fromBase64, toBase64 } from \"@smithy/util-base64\";\nimport { fromUtf8, toUtf8 } from \"@smithy/util-utf8\";\nimport { defaultSSOOIDCHttpAuthSchemeProvider } from \"./auth/httpAuthSchemeProvider\";\nimport { defaultEndpointResolver } from \"./endpoint/endpointResolver\";\nexport const getRuntimeConfig = (config) => {\n return {\n apiVersion: \"2019-06-10\",\n base64Decoder: config?.base64Decoder ?? fromBase64,\n base64Encoder: config?.base64Encoder ?? toBase64,\n disableHostPrefix: config?.disableHostPrefix ?? false,\n endpointProvider: config?.endpointProvider ?? defaultEndpointResolver,\n extensions: config?.extensions ?? [],\n httpAuthSchemeProvider: config?.httpAuthSchemeProvider ?? defaultSSOOIDCHttpAuthSchemeProvider,\n httpAuthSchemes: config?.httpAuthSchemes ?? [\n {\n schemeId: \"aws.auth#sigv4\",\n identityProvider: (ipc) => ipc.getIdentityProvider(\"aws.auth#sigv4\"),\n signer: new AwsSdkSigV4Signer(),\n },\n {\n schemeId: \"smithy.api#noAuth\",\n identityProvider: (ipc) => ipc.getIdentityProvider(\"smithy.api#noAuth\") || (async () => ({})),\n signer: new NoAuthSigner(),\n },\n ],\n logger: config?.logger ?? new NoOpLogger(),\n serviceId: config?.serviceId ?? \"SSO OIDC\",\n urlParser: config?.urlParser ?? parseUrl,\n utf8Decoder: config?.utf8Decoder ?? fromUtf8,\n utf8Encoder: config?.utf8Encoder ?? toUtf8,\n };\n};\n",
|
|
326
|
+
"export const AWS_EXECUTION_ENV = \"AWS_EXECUTION_ENV\";\nexport const AWS_REGION_ENV = \"AWS_REGION\";\nexport const AWS_DEFAULT_REGION_ENV = \"AWS_DEFAULT_REGION\";\nexport const ENV_IMDS_DISABLED = \"AWS_EC2_METADATA_DISABLED\";\nexport const DEFAULTS_MODE_OPTIONS = [\"in-region\", \"cross-region\", \"mobile\", \"standard\", \"legacy\"];\nexport const IMDS_REGION_PATH = \"/latest/meta-data/placement/region\";\n",
|
|
327
|
+
"const AWS_DEFAULTS_MODE_ENV = \"AWS_DEFAULTS_MODE\";\nconst AWS_DEFAULTS_MODE_CONFIG = \"defaults_mode\";\nexport const NODE_DEFAULTS_MODE_CONFIG_OPTIONS = {\n environmentVariableSelector: (env) => {\n return env[AWS_DEFAULTS_MODE_ENV];\n },\n configFileSelector: (profile) => {\n return profile[AWS_DEFAULTS_MODE_CONFIG];\n },\n default: \"legacy\",\n};\n",
|
|
328
|
+
"import { NODE_REGION_CONFIG_OPTIONS } from \"@smithy/config-resolver\";\nimport { loadConfig } from \"@smithy/node-config-provider\";\nimport { memoize } from \"@smithy/property-provider\";\nimport { AWS_DEFAULT_REGION_ENV, AWS_EXECUTION_ENV, AWS_REGION_ENV, DEFAULTS_MODE_OPTIONS, ENV_IMDS_DISABLED, IMDS_REGION_PATH, } from \"./constants\";\nimport { NODE_DEFAULTS_MODE_CONFIG_OPTIONS } from \"./defaultsModeConfig\";\nexport const resolveDefaultsModeConfig = ({ region = loadConfig(NODE_REGION_CONFIG_OPTIONS), defaultsMode = loadConfig(NODE_DEFAULTS_MODE_CONFIG_OPTIONS), } = {}) => memoize(async () => {\n const mode = typeof defaultsMode === \"function\" ? await defaultsMode() : defaultsMode;\n switch (mode?.toLowerCase()) {\n case \"auto\":\n return resolveNodeDefaultsModeAuto(region);\n case \"in-region\":\n case \"cross-region\":\n case \"mobile\":\n case \"standard\":\n case \"legacy\":\n return Promise.resolve(mode?.toLocaleLowerCase());\n case undefined:\n return Promise.resolve(\"legacy\");\n default:\n throw new Error(`Invalid parameter for \"defaultsMode\", expect ${DEFAULTS_MODE_OPTIONS.join(\", \")}, got ${mode}`);\n }\n});\nconst resolveNodeDefaultsModeAuto = async (clientRegion) => {\n if (clientRegion) {\n const resolvedRegion = typeof clientRegion === \"function\" ? await clientRegion() : clientRegion;\n const inferredRegion = await inferPhysicalRegion();\n if (!inferredRegion) {\n return \"standard\";\n }\n if (resolvedRegion === inferredRegion) {\n return \"in-region\";\n }\n else {\n return \"cross-region\";\n }\n }\n return \"standard\";\n};\nconst inferPhysicalRegion = async () => {\n if (process.env[AWS_EXECUTION_ENV] && (process.env[AWS_REGION_ENV] || process.env[AWS_DEFAULT_REGION_ENV])) {\n return process.env[AWS_REGION_ENV] ?? process.env[AWS_DEFAULT_REGION_ENV];\n }\n if (!process.env[ENV_IMDS_DISABLED]) {\n try {\n const { getInstanceMetadataEndpoint, httpRequest } = await import(\"@smithy/credential-provider-imds\");\n const endpoint = await getInstanceMetadataEndpoint();\n return (await httpRequest({ ...endpoint, path: IMDS_REGION_PATH })).toString();\n }\n catch (e) {\n }\n }\n};\n",
|
|
329
|
+
"export * from \"./resolveDefaultsModeConfig\";\n",
|
|
330
|
+
"import packageInfo from \"../package.json\";\nimport { emitWarningIfUnsupportedVersion as awsCheckVersion } from \"@aws-sdk/core\";\nimport { defaultProvider as credentialDefaultProvider } from \"@aws-sdk/credential-provider-node\";\nimport { defaultUserAgent } from \"@aws-sdk/util-user-agent-node\";\nimport { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS, NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, } from \"@smithy/config-resolver\";\nimport { Hash } from \"@smithy/hash-node\";\nimport { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from \"@smithy/middleware-retry\";\nimport { loadConfig as loadNodeConfig } from \"@smithy/node-config-provider\";\nimport { NodeHttpHandler as RequestHandler, streamCollector } from \"@smithy/node-http-handler\";\nimport { calculateBodyLength } from \"@smithy/util-body-length-node\";\nimport { DEFAULT_RETRY_MODE } from \"@smithy/util-retry\";\nimport { getRuntimeConfig as getSharedRuntimeConfig } from \"./runtimeConfig.shared\";\nimport { loadConfigsForDefaultMode } from \"@smithy/smithy-client\";\nimport { resolveDefaultsModeConfig } from \"@smithy/util-defaults-mode-node\";\nimport { emitWarningIfUnsupportedVersion } from \"@smithy/smithy-client\";\nexport const getRuntimeConfig = (config) => {\n emitWarningIfUnsupportedVersion(process.version);\n const defaultsMode = resolveDefaultsModeConfig(config);\n const defaultConfigProvider = () => defaultsMode().then(loadConfigsForDefaultMode);\n const clientSharedValues = getSharedRuntimeConfig(config);\n awsCheckVersion(process.version);\n return {\n ...clientSharedValues,\n ...config,\n runtime: \"node\",\n defaultsMode,\n bodyLengthChecker: config?.bodyLengthChecker ?? calculateBodyLength,\n credentialDefaultProvider: config?.credentialDefaultProvider ?? credentialDefaultProvider,\n defaultUserAgentProvider: config?.defaultUserAgentProvider ??\n defaultUserAgent({ serviceId: clientSharedValues.serviceId, clientVersion: packageInfo.version }),\n maxAttempts: config?.maxAttempts ?? loadNodeConfig(NODE_MAX_ATTEMPT_CONFIG_OPTIONS),\n region: config?.region ?? loadNodeConfig(NODE_REGION_CONFIG_OPTIONS, NODE_REGION_CONFIG_FILE_OPTIONS),\n requestHandler: RequestHandler.create(config?.requestHandler ?? defaultConfigProvider),\n retryMode: config?.retryMode ??\n loadNodeConfig({\n ...NODE_RETRY_MODE_CONFIG_OPTIONS,\n default: async () => (await defaultConfigProvider()).retryMode || DEFAULT_RETRY_MODE,\n }),\n sha256: config?.sha256 ?? Hash.bind(null, \"sha256\"),\n streamCollector: config?.streamCollector ?? streamCollector,\n useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS),\n useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS),\n };\n};\n",
|
|
331
|
+
"export const getAwsRegionExtensionConfiguration = (runtimeConfig) => {\n let runtimeConfigRegion = async () => {\n if (runtimeConfig.region === undefined) {\n throw new Error(\"Region is missing from runtimeConfig\");\n }\n const region = runtimeConfig.region;\n if (typeof region === \"string\") {\n return region;\n }\n return region();\n };\n return {\n setRegion(region) {\n runtimeConfigRegion = region;\n },\n region() {\n return runtimeConfigRegion;\n },\n };\n};\nexport const resolveAwsRegionExtensionConfiguration = (awsRegionExtensionConfiguration) => {\n return {\n region: awsRegionExtensionConfiguration.region(),\n };\n};\n",
|
|
332
|
+
"import { getRealRegion } from \"./getRealRegion\";\nimport { isFipsRegion } from \"./isFipsRegion\";\nexport const resolveRegionConfig = (input) => {\n const { region, useFipsEndpoint } = input;\n if (!region) {\n throw new Error(\"Region is missing\");\n }\n return {\n ...input,\n region: async () => {\n if (typeof region === \"string\") {\n return getRealRegion(region);\n }\n const providedRegion = await region();\n return getRealRegion(providedRegion);\n },\n useFipsEndpoint: async () => {\n const providedRegion = typeof region === \"string\" ? region : await region();\n if (isFipsRegion(providedRegion)) {\n return true;\n }\n return typeof useFipsEndpoint !== \"function\" ? Promise.resolve(!!useFipsEndpoint) : useFipsEndpoint();\n },\n };\n};\n",
|
|
333
|
+
"export * from \"./config\";\nexport * from \"./resolveRegionConfig\";\n",
|
|
334
|
+
"export * from \"./extensions\";\nexport * from \"./regionConfig\";\n",
|
|
335
|
+
"export const getHttpAuthExtensionConfiguration = (runtimeConfig) => {\n const _httpAuthSchemes = runtimeConfig.httpAuthSchemes;\n let _httpAuthSchemeProvider = runtimeConfig.httpAuthSchemeProvider;\n let _credentials = runtimeConfig.credentials;\n return {\n setHttpAuthScheme(httpAuthScheme) {\n const index = _httpAuthSchemes.findIndex((scheme) => scheme.schemeId === httpAuthScheme.schemeId);\n if (index === -1) {\n _httpAuthSchemes.push(httpAuthScheme);\n }\n else {\n _httpAuthSchemes.splice(index, 1, httpAuthScheme);\n }\n },\n httpAuthSchemes() {\n return _httpAuthSchemes;\n },\n setHttpAuthSchemeProvider(httpAuthSchemeProvider) {\n _httpAuthSchemeProvider = httpAuthSchemeProvider;\n },\n httpAuthSchemeProvider() {\n return _httpAuthSchemeProvider;\n },\n setCredentials(credentials) {\n _credentials = credentials;\n },\n credentials() {\n return _credentials;\n },\n };\n};\nexport const resolveHttpAuthRuntimeConfig = (config) => {\n return {\n httpAuthSchemes: config.httpAuthSchemes(),\n httpAuthSchemeProvider: config.httpAuthSchemeProvider(),\n credentials: config.credentials(),\n };\n};\n",
|
|
336
|
+
"import { getAwsRegionExtensionConfiguration, resolveAwsRegionExtensionConfiguration, } from \"@aws-sdk/region-config-resolver\";\nimport { getHttpHandlerExtensionConfiguration, resolveHttpHandlerRuntimeConfig } from \"@smithy/protocol-http\";\nimport { getDefaultExtensionConfiguration, resolveDefaultRuntimeConfig } from \"@smithy/smithy-client\";\nimport { getHttpAuthExtensionConfiguration, resolveHttpAuthRuntimeConfig } from \"./auth/httpAuthExtensionConfiguration\";\nconst asPartial = (t) => t;\nexport const resolveRuntimeExtensions = (runtimeConfig, extensions) => {\n const extensionConfiguration = {\n ...asPartial(getAwsRegionExtensionConfiguration(runtimeConfig)),\n ...asPartial(getDefaultExtensionConfiguration(runtimeConfig)),\n ...asPartial(getHttpHandlerExtensionConfiguration(runtimeConfig)),\n ...asPartial(getHttpAuthExtensionConfiguration(runtimeConfig)),\n };\n extensions.forEach((extension) => extension.configure(extensionConfiguration));\n return {\n ...runtimeConfig,\n ...resolveAwsRegionExtensionConfiguration(extensionConfiguration),\n ...resolveDefaultRuntimeConfig(extensionConfiguration),\n ...resolveHttpHandlerRuntimeConfig(extensionConfiguration),\n ...resolveHttpAuthRuntimeConfig(extensionConfiguration),\n };\n};\n",
|
|
337
|
+
"import { getHostHeaderPlugin, resolveHostHeaderConfig, } from \"@aws-sdk/middleware-host-header\";\nimport { getLoggerPlugin } from \"@aws-sdk/middleware-logger\";\nimport { getRecursionDetectionPlugin } from \"@aws-sdk/middleware-recursion-detection\";\nimport { getUserAgentPlugin, resolveUserAgentConfig, } from \"@aws-sdk/middleware-user-agent\";\nimport { resolveRegionConfig } from \"@smithy/config-resolver\";\nimport { DefaultIdentityProviderConfig, getHttpAuthSchemeEndpointRuleSetPlugin, getHttpSigningPlugin, } from \"@smithy/core\";\nimport { getContentLengthPlugin } from \"@smithy/middleware-content-length\";\nimport { resolveEndpointConfig } from \"@smithy/middleware-endpoint\";\nimport { getRetryPlugin, resolveRetryConfig } from \"@smithy/middleware-retry\";\nimport { Client as __Client, } from \"@smithy/smithy-client\";\nimport { defaultSSOOIDCHttpAuthSchemeParametersProvider, resolveHttpAuthSchemeConfig, } from \"./auth/httpAuthSchemeProvider\";\nimport { resolveClientEndpointParameters, } from \"./endpoint/EndpointParameters\";\nimport { getRuntimeConfig as __getRuntimeConfig } from \"./runtimeConfig\";\nimport { resolveRuntimeExtensions } from \"./runtimeExtensions\";\nexport { __Client };\nexport class SSOOIDCClient extends __Client {\n constructor(...[configuration]) {\n const _config_0 = __getRuntimeConfig(configuration || {});\n const _config_1 = resolveClientEndpointParameters(_config_0);\n const _config_2 = resolveUserAgentConfig(_config_1);\n const _config_3 = resolveRetryConfig(_config_2);\n const _config_4 = resolveRegionConfig(_config_3);\n const _config_5 = resolveHostHeaderConfig(_config_4);\n const _config_6 = resolveEndpointConfig(_config_5);\n const _config_7 = resolveHttpAuthSchemeConfig(_config_6);\n const _config_8 = resolveRuntimeExtensions(_config_7, configuration?.extensions || []);\n super(_config_8);\n this.config = _config_8;\n this.middlewareStack.use(getUserAgentPlugin(this.config));\n this.middlewareStack.use(getRetryPlugin(this.config));\n this.middlewareStack.use(getContentLengthPlugin(this.config));\n this.middlewareStack.use(getHostHeaderPlugin(this.config));\n this.middlewareStack.use(getLoggerPlugin(this.config));\n this.middlewareStack.use(getRecursionDetectionPlugin(this.config));\n this.middlewareStack.use(getHttpAuthSchemeEndpointRuleSetPlugin(this.config, {\n httpAuthSchemeParametersProvider: defaultSSOOIDCHttpAuthSchemeParametersProvider,\n identityProviderConfigProvider: async (config) => new DefaultIdentityProviderConfig({\n \"aws.auth#sigv4\": config.credentials,\n }),\n }));\n this.middlewareStack.use(getHttpSigningPlugin(this.config));\n }\n destroy() {\n super.destroy();\n }\n}\n",
|
|
338
|
+
"import { ServiceException as __ServiceException, } from \"@smithy/smithy-client\";\nexport { __ServiceException };\nexport class SSOOIDCServiceException extends __ServiceException {\n constructor(options) {\n super(options);\n Object.setPrototypeOf(this, SSOOIDCServiceException.prototype);\n }\n}\n",
|
|
339
|
+
"import { SENSITIVE_STRING } from \"@smithy/smithy-client\";\nimport { SSOOIDCServiceException as __BaseException } from \"./SSOOIDCServiceException\";\nexport class AccessDeniedException extends __BaseException {\n constructor(opts) {\n super({\n name: \"AccessDeniedException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"AccessDeniedException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, AccessDeniedException.prototype);\n this.error = opts.error;\n this.error_description = opts.error_description;\n }\n}\nexport class AuthorizationPendingException extends __BaseException {\n constructor(opts) {\n super({\n name: \"AuthorizationPendingException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"AuthorizationPendingException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, AuthorizationPendingException.prototype);\n this.error = opts.error;\n this.error_description = opts.error_description;\n }\n}\nexport class ExpiredTokenException extends __BaseException {\n constructor(opts) {\n super({\n name: \"ExpiredTokenException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"ExpiredTokenException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, ExpiredTokenException.prototype);\n this.error = opts.error;\n this.error_description = opts.error_description;\n }\n}\nexport class InternalServerException extends __BaseException {\n constructor(opts) {\n super({\n name: \"InternalServerException\",\n $fault: \"server\",\n ...opts,\n });\n this.name = \"InternalServerException\";\n this.$fault = \"server\";\n Object.setPrototypeOf(this, InternalServerException.prototype);\n this.error = opts.error;\n this.error_description = opts.error_description;\n }\n}\nexport class InvalidClientException extends __BaseException {\n constructor(opts) {\n super({\n name: \"InvalidClientException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"InvalidClientException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, InvalidClientException.prototype);\n this.error = opts.error;\n this.error_description = opts.error_description;\n }\n}\nexport class InvalidGrantException extends __BaseException {\n constructor(opts) {\n super({\n name: \"InvalidGrantException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"InvalidGrantException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, InvalidGrantException.prototype);\n this.error = opts.error;\n this.error_description = opts.error_description;\n }\n}\nexport class InvalidRequestException extends __BaseException {\n constructor(opts) {\n super({\n name: \"InvalidRequestException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"InvalidRequestException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, InvalidRequestException.prototype);\n this.error = opts.error;\n this.error_description = opts.error_description;\n }\n}\nexport class InvalidScopeException extends __BaseException {\n constructor(opts) {\n super({\n name: \"InvalidScopeException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"InvalidScopeException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, InvalidScopeException.prototype);\n this.error = opts.error;\n this.error_description = opts.error_description;\n }\n}\nexport class SlowDownException extends __BaseException {\n constructor(opts) {\n super({\n name: \"SlowDownException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"SlowDownException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, SlowDownException.prototype);\n this.error = opts.error;\n this.error_description = opts.error_description;\n }\n}\nexport class UnauthorizedClientException extends __BaseException {\n constructor(opts) {\n super({\n name: \"UnauthorizedClientException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"UnauthorizedClientException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, UnauthorizedClientException.prototype);\n this.error = opts.error;\n this.error_description = opts.error_description;\n }\n}\nexport class UnsupportedGrantTypeException extends __BaseException {\n constructor(opts) {\n super({\n name: \"UnsupportedGrantTypeException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"UnsupportedGrantTypeException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, UnsupportedGrantTypeException.prototype);\n this.error = opts.error;\n this.error_description = opts.error_description;\n }\n}\nexport class InvalidRequestRegionException extends __BaseException {\n constructor(opts) {\n super({\n name: \"InvalidRequestRegionException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"InvalidRequestRegionException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, InvalidRequestRegionException.prototype);\n this.error = opts.error;\n this.error_description = opts.error_description;\n this.endpoint = opts.endpoint;\n this.region = opts.region;\n }\n}\nexport class InvalidClientMetadataException extends __BaseException {\n constructor(opts) {\n super({\n name: \"InvalidClientMetadataException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"InvalidClientMetadataException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, InvalidClientMetadataException.prototype);\n this.error = opts.error;\n this.error_description = opts.error_description;\n }\n}\nexport class InvalidRedirectUriException extends __BaseException {\n constructor(opts) {\n super({\n name: \"InvalidRedirectUriException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"InvalidRedirectUriException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, InvalidRedirectUriException.prototype);\n this.error = opts.error;\n this.error_description = opts.error_description;\n }\n}\nexport const CreateTokenRequestFilterSensitiveLog = (obj) => ({\n ...obj,\n ...(obj.clientSecret && { clientSecret: SENSITIVE_STRING }),\n ...(obj.refreshToken && { refreshToken: SENSITIVE_STRING }),\n ...(obj.codeVerifier && { codeVerifier: SENSITIVE_STRING }),\n});\nexport const CreateTokenResponseFilterSensitiveLog = (obj) => ({\n ...obj,\n ...(obj.accessToken && { accessToken: SENSITIVE_STRING }),\n ...(obj.refreshToken && { refreshToken: SENSITIVE_STRING }),\n ...(obj.idToken && { idToken: SENSITIVE_STRING }),\n});\nexport const CreateTokenWithIAMRequestFilterSensitiveLog = (obj) => ({\n ...obj,\n ...(obj.refreshToken && { refreshToken: SENSITIVE_STRING }),\n ...(obj.assertion && { assertion: SENSITIVE_STRING }),\n ...(obj.subjectToken && { subjectToken: SENSITIVE_STRING }),\n ...(obj.codeVerifier && { codeVerifier: SENSITIVE_STRING }),\n});\nexport const CreateTokenWithIAMResponseFilterSensitiveLog = (obj) => ({\n ...obj,\n ...(obj.accessToken && { accessToken: SENSITIVE_STRING }),\n ...(obj.refreshToken && { refreshToken: SENSITIVE_STRING }),\n ...(obj.idToken && { idToken: SENSITIVE_STRING }),\n});\nexport const RegisterClientResponseFilterSensitiveLog = (obj) => ({\n ...obj,\n ...(obj.clientSecret && { clientSecret: SENSITIVE_STRING }),\n});\nexport const StartDeviceAuthorizationRequestFilterSensitiveLog = (obj) => ({\n ...obj,\n ...(obj.clientSecret && { clientSecret: SENSITIVE_STRING }),\n});\n",
|
|
340
|
+
"import { loadRestJsonErrorCode, parseJsonBody as parseBody, parseJsonErrorBody as parseErrorBody } from \"@aws-sdk/core\";\nimport { requestBuilder as rb } from \"@smithy/core\";\nimport { _json, collectBody, decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectLong as __expectLong, expectNonNull as __expectNonNull, expectObject as __expectObject, expectString as __expectString, map, take, withBaseException, } from \"@smithy/smithy-client\";\nimport { AccessDeniedException, AuthorizationPendingException, ExpiredTokenException, InternalServerException, InvalidClientException, InvalidClientMetadataException, InvalidGrantException, InvalidRedirectUriException, InvalidRequestException, InvalidRequestRegionException, InvalidScopeException, SlowDownException, UnauthorizedClientException, UnsupportedGrantTypeException, } from \"../models/models_0\";\nimport { SSOOIDCServiceException as __BaseException } from \"../models/SSOOIDCServiceException\";\nexport const se_CreateTokenCommand = async (input, context) => {\n const b = rb(input, context);\n const headers = {\n \"content-type\": \"application/json\",\n };\n b.bp(\"/token\");\n let body;\n body = JSON.stringify(take(input, {\n clientId: [],\n clientSecret: [],\n code: [],\n codeVerifier: [],\n deviceCode: [],\n grantType: [],\n redirectUri: [],\n refreshToken: [],\n scope: (_) => _json(_),\n }));\n b.m(\"POST\").h(headers).b(body);\n return b.build();\n};\nexport const se_CreateTokenWithIAMCommand = async (input, context) => {\n const b = rb(input, context);\n const headers = {\n \"content-type\": \"application/json\",\n };\n b.bp(\"/token\");\n const query = map({\n [_ai]: [, \"t\"],\n });\n let body;\n body = JSON.stringify(take(input, {\n assertion: [],\n clientId: [],\n code: [],\n codeVerifier: [],\n grantType: [],\n redirectUri: [],\n refreshToken: [],\n requestedTokenType: [],\n scope: (_) => _json(_),\n subjectToken: [],\n subjectTokenType: [],\n }));\n b.m(\"POST\").h(headers).q(query).b(body);\n return b.build();\n};\nexport const se_RegisterClientCommand = async (input, context) => {\n const b = rb(input, context);\n const headers = {\n \"content-type\": \"application/json\",\n };\n b.bp(\"/client/register\");\n let body;\n body = JSON.stringify(take(input, {\n clientName: [],\n clientType: [],\n entitledApplicationArn: [],\n grantTypes: (_) => _json(_),\n issuerUrl: [],\n redirectUris: (_) => _json(_),\n scopes: (_) => _json(_),\n }));\n b.m(\"POST\").h(headers).b(body);\n return b.build();\n};\nexport const se_StartDeviceAuthorizationCommand = async (input, context) => {\n const b = rb(input, context);\n const headers = {\n \"content-type\": \"application/json\",\n };\n b.bp(\"/device_authorization\");\n let body;\n body = JSON.stringify(take(input, {\n clientId: [],\n clientSecret: [],\n startUrl: [],\n }));\n b.m(\"POST\").h(headers).b(body);\n return b.build();\n};\nexport const de_CreateTokenCommand = async (output, context) => {\n if (output.statusCode !== 200 && output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const contents = map({\n $metadata: deserializeMetadata(output),\n });\n const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), \"body\");\n const doc = take(data, {\n accessToken: __expectString,\n expiresIn: __expectInt32,\n idToken: __expectString,\n refreshToken: __expectString,\n tokenType: __expectString,\n });\n Object.assign(contents, doc);\n return contents;\n};\nexport const de_CreateTokenWithIAMCommand = async (output, context) => {\n if (output.statusCode !== 200 && output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const contents = map({\n $metadata: deserializeMetadata(output),\n });\n const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), \"body\");\n const doc = take(data, {\n accessToken: __expectString,\n expiresIn: __expectInt32,\n idToken: __expectString,\n issuedTokenType: __expectString,\n refreshToken: __expectString,\n scope: _json,\n tokenType: __expectString,\n });\n Object.assign(contents, doc);\n return contents;\n};\nexport const de_RegisterClientCommand = async (output, context) => {\n if (output.statusCode !== 200 && output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const contents = map({\n $metadata: deserializeMetadata(output),\n });\n const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), \"body\");\n const doc = take(data, {\n authorizationEndpoint: __expectString,\n clientId: __expectString,\n clientIdIssuedAt: __expectLong,\n clientSecret: __expectString,\n clientSecretExpiresAt: __expectLong,\n tokenEndpoint: __expectString,\n });\n Object.assign(contents, doc);\n return contents;\n};\nexport const de_StartDeviceAuthorizationCommand = async (output, context) => {\n if (output.statusCode !== 200 && output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const contents = map({\n $metadata: deserializeMetadata(output),\n });\n const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), \"body\");\n const doc = take(data, {\n deviceCode: __expectString,\n expiresIn: __expectInt32,\n interval: __expectInt32,\n userCode: __expectString,\n verificationUri: __expectString,\n verificationUriComplete: __expectString,\n });\n Object.assign(contents, doc);\n return contents;\n};\nconst de_CommandError = async (output, context) => {\n const parsedOutput = {\n ...output,\n body: await parseErrorBody(output.body, context),\n };\n const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n switch (errorCode) {\n case \"AccessDeniedException\":\n case \"com.amazonaws.ssooidc#AccessDeniedException\":\n throw await de_AccessDeniedExceptionRes(parsedOutput, context);\n case \"AuthorizationPendingException\":\n case \"com.amazonaws.ssooidc#AuthorizationPendingException\":\n throw await de_AuthorizationPendingExceptionRes(parsedOutput, context);\n case \"ExpiredTokenException\":\n case \"com.amazonaws.ssooidc#ExpiredTokenException\":\n throw await de_ExpiredTokenExceptionRes(parsedOutput, context);\n case \"InternalServerException\":\n case \"com.amazonaws.ssooidc#InternalServerException\":\n throw await de_InternalServerExceptionRes(parsedOutput, context);\n case \"InvalidClientException\":\n case \"com.amazonaws.ssooidc#InvalidClientException\":\n throw await de_InvalidClientExceptionRes(parsedOutput, context);\n case \"InvalidGrantException\":\n case \"com.amazonaws.ssooidc#InvalidGrantException\":\n throw await de_InvalidGrantExceptionRes(parsedOutput, context);\n case \"InvalidRequestException\":\n case \"com.amazonaws.ssooidc#InvalidRequestException\":\n throw await de_InvalidRequestExceptionRes(parsedOutput, context);\n case \"InvalidScopeException\":\n case \"com.amazonaws.ssooidc#InvalidScopeException\":\n throw await de_InvalidScopeExceptionRes(parsedOutput, context);\n case \"SlowDownException\":\n case \"com.amazonaws.ssooidc#SlowDownException\":\n throw await de_SlowDownExceptionRes(parsedOutput, context);\n case \"UnauthorizedClientException\":\n case \"com.amazonaws.ssooidc#UnauthorizedClientException\":\n throw await de_UnauthorizedClientExceptionRes(parsedOutput, context);\n case \"UnsupportedGrantTypeException\":\n case \"com.amazonaws.ssooidc#UnsupportedGrantTypeException\":\n throw await de_UnsupportedGrantTypeExceptionRes(parsedOutput, context);\n case \"InvalidRequestRegionException\":\n case \"com.amazonaws.ssooidc#InvalidRequestRegionException\":\n throw await de_InvalidRequestRegionExceptionRes(parsedOutput, context);\n case \"InvalidClientMetadataException\":\n case \"com.amazonaws.ssooidc#InvalidClientMetadataException\":\n throw await de_InvalidClientMetadataExceptionRes(parsedOutput, context);\n case \"InvalidRedirectUriException\":\n case \"com.amazonaws.ssooidc#InvalidRedirectUriException\":\n throw await de_InvalidRedirectUriExceptionRes(parsedOutput, context);\n default:\n const parsedBody = parsedOutput.body;\n return throwDefaultError({\n output,\n parsedBody,\n errorCode,\n });\n }\n};\nconst throwDefaultError = withBaseException(__BaseException);\nconst de_AccessDeniedExceptionRes = async (parsedOutput, context) => {\n const contents = map({});\n const data = parsedOutput.body;\n const doc = take(data, {\n error: __expectString,\n error_description: __expectString,\n });\n Object.assign(contents, doc);\n const exception = new AccessDeniedException({\n $metadata: deserializeMetadata(parsedOutput),\n ...contents,\n });\n return __decorateServiceException(exception, parsedOutput.body);\n};\nconst de_AuthorizationPendingExceptionRes = async (parsedOutput, context) => {\n const contents = map({});\n const data = parsedOutput.body;\n const doc = take(data, {\n error: __expectString,\n error_description: __expectString,\n });\n Object.assign(contents, doc);\n const exception = new AuthorizationPendingException({\n $metadata: deserializeMetadata(parsedOutput),\n ...contents,\n });\n return __decorateServiceException(exception, parsedOutput.body);\n};\nconst de_ExpiredTokenExceptionRes = async (parsedOutput, context) => {\n const contents = map({});\n const data = parsedOutput.body;\n const doc = take(data, {\n error: __expectString,\n error_description: __expectString,\n });\n Object.assign(contents, doc);\n const exception = new ExpiredTokenException({\n $metadata: deserializeMetadata(parsedOutput),\n ...contents,\n });\n return __decorateServiceException(exception, parsedOutput.body);\n};\nconst de_InternalServerExceptionRes = async (parsedOutput, context) => {\n const contents = map({});\n const data = parsedOutput.body;\n const doc = take(data, {\n error: __expectString,\n error_description: __expectString,\n });\n Object.assign(contents, doc);\n const exception = new InternalServerException({\n $metadata: deserializeMetadata(parsedOutput),\n ...contents,\n });\n return __decorateServiceException(exception, parsedOutput.body);\n};\nconst de_InvalidClientExceptionRes = async (parsedOutput, context) => {\n const contents = map({});\n const data = parsedOutput.body;\n const doc = take(data, {\n error: __expectString,\n error_description: __expectString,\n });\n Object.assign(contents, doc);\n const exception = new InvalidClientException({\n $metadata: deserializeMetadata(parsedOutput),\n ...contents,\n });\n return __decorateServiceException(exception, parsedOutput.body);\n};\nconst de_InvalidClientMetadataExceptionRes = async (parsedOutput, context) => {\n const contents = map({});\n const data = parsedOutput.body;\n const doc = take(data, {\n error: __expectString,\n error_description: __expectString,\n });\n Object.assign(contents, doc);\n const exception = new InvalidClientMetadataException({\n $metadata: deserializeMetadata(parsedOutput),\n ...contents,\n });\n return __decorateServiceException(exception, parsedOutput.body);\n};\nconst de_InvalidGrantExceptionRes = async (parsedOutput, context) => {\n const contents = map({});\n const data = parsedOutput.body;\n const doc = take(data, {\n error: __expectString,\n error_description: __expectString,\n });\n Object.assign(contents, doc);\n const exception = new InvalidGrantException({\n $metadata: deserializeMetadata(parsedOutput),\n ...contents,\n });\n return __decorateServiceException(exception, parsedOutput.body);\n};\nconst de_InvalidRedirectUriExceptionRes = async (parsedOutput, context) => {\n const contents = map({});\n const data = parsedOutput.body;\n const doc = take(data, {\n error: __expectString,\n error_description: __expectString,\n });\n Object.assign(contents, doc);\n const exception = new InvalidRedirectUriException({\n $metadata: deserializeMetadata(parsedOutput),\n ...contents,\n });\n return __decorateServiceException(exception, parsedOutput.body);\n};\nconst de_InvalidRequestExceptionRes = async (parsedOutput, context) => {\n const contents = map({});\n const data = parsedOutput.body;\n const doc = take(data, {\n error: __expectString,\n error_description: __expectString,\n });\n Object.assign(contents, doc);\n const exception = new InvalidRequestException({\n $metadata: deserializeMetadata(parsedOutput),\n ...contents,\n });\n return __decorateServiceException(exception, parsedOutput.body);\n};\nconst de_InvalidRequestRegionExceptionRes = async (parsedOutput, context) => {\n const contents = map({});\n const data = parsedOutput.body;\n const doc = take(data, {\n endpoint: __expectString,\n error: __expectString,\n error_description: __expectString,\n region: __expectString,\n });\n Object.assign(contents, doc);\n const exception = new InvalidRequestRegionException({\n $metadata: deserializeMetadata(parsedOutput),\n ...contents,\n });\n return __decorateServiceException(exception, parsedOutput.body);\n};\nconst de_InvalidScopeExceptionRes = async (parsedOutput, context) => {\n const contents = map({});\n const data = parsedOutput.body;\n const doc = take(data, {\n error: __expectString,\n error_description: __expectString,\n });\n Object.assign(contents, doc);\n const exception = new InvalidScopeException({\n $metadata: deserializeMetadata(parsedOutput),\n ...contents,\n });\n return __decorateServiceException(exception, parsedOutput.body);\n};\nconst de_SlowDownExceptionRes = async (parsedOutput, context) => {\n const contents = map({});\n const data = parsedOutput.body;\n const doc = take(data, {\n error: __expectString,\n error_description: __expectString,\n });\n Object.assign(contents, doc);\n const exception = new SlowDownException({\n $metadata: deserializeMetadata(parsedOutput),\n ...contents,\n });\n return __decorateServiceException(exception, parsedOutput.body);\n};\nconst de_UnauthorizedClientExceptionRes = async (parsedOutput, context) => {\n const contents = map({});\n const data = parsedOutput.body;\n const doc = take(data, {\n error: __expectString,\n error_description: __expectString,\n });\n Object.assign(contents, doc);\n const exception = new UnauthorizedClientException({\n $metadata: deserializeMetadata(parsedOutput),\n ...contents,\n });\n return __decorateServiceException(exception, parsedOutput.body);\n};\nconst de_UnsupportedGrantTypeExceptionRes = async (parsedOutput, context) => {\n const contents = map({});\n const data = parsedOutput.body;\n const doc = take(data, {\n error: __expectString,\n error_description: __expectString,\n });\n Object.assign(contents, doc);\n const exception = new UnsupportedGrantTypeException({\n $metadata: deserializeMetadata(parsedOutput),\n ...contents,\n });\n return __decorateServiceException(exception, parsedOutput.body);\n};\nconst deserializeMetadata = (output) => ({\n httpStatusCode: output.statusCode,\n requestId: output.headers[\"x-amzn-requestid\"] ?? output.headers[\"x-amzn-request-id\"] ?? output.headers[\"x-amz-request-id\"],\n extendedRequestId: output.headers[\"x-amz-id-2\"],\n cfId: output.headers[\"x-amz-cf-id\"],\n});\nconst collectBodyString = (streamBody, context) => collectBody(streamBody, context).then((body) => context.utf8Encoder(body));\nconst isSerializableHeaderValue = (value) => value !== undefined &&\n value !== null &&\n value !== \"\" &&\n (!Object.getOwnPropertyNames(value).includes(\"length\") || value.length != 0) &&\n (!Object.getOwnPropertyNames(value).includes(\"size\") || value.size != 0);\nconst _ai = \"aws_iam\";\n",
|
|
341
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { CreateTokenRequestFilterSensitiveLog, CreateTokenResponseFilterSensitiveLog, } from \"../models/models_0\";\nimport { de_CreateTokenCommand, se_CreateTokenCommand } from \"../protocols/Aws_restJson1\";\nexport { $Command };\nexport class CreateTokenCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"AWSSSOOIDCService\", \"CreateToken\", {})\n .n(\"SSOOIDCClient\", \"CreateTokenCommand\")\n .f(CreateTokenRequestFilterSensitiveLog, CreateTokenResponseFilterSensitiveLog)\n .ser(se_CreateTokenCommand)\n .de(de_CreateTokenCommand)\n .build() {\n}\n",
|
|
342
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { CreateTokenWithIAMRequestFilterSensitiveLog, CreateTokenWithIAMResponseFilterSensitiveLog, } from \"../models/models_0\";\nimport { de_CreateTokenWithIAMCommand, se_CreateTokenWithIAMCommand } from \"../protocols/Aws_restJson1\";\nexport { $Command };\nexport class CreateTokenWithIAMCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"AWSSSOOIDCService\", \"CreateTokenWithIAM\", {})\n .n(\"SSOOIDCClient\", \"CreateTokenWithIAMCommand\")\n .f(CreateTokenWithIAMRequestFilterSensitiveLog, CreateTokenWithIAMResponseFilterSensitiveLog)\n .ser(se_CreateTokenWithIAMCommand)\n .de(de_CreateTokenWithIAMCommand)\n .build() {\n}\n",
|
|
343
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { RegisterClientResponseFilterSensitiveLog, } from \"../models/models_0\";\nimport { de_RegisterClientCommand, se_RegisterClientCommand } from \"../protocols/Aws_restJson1\";\nexport { $Command };\nexport class RegisterClientCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"AWSSSOOIDCService\", \"RegisterClient\", {})\n .n(\"SSOOIDCClient\", \"RegisterClientCommand\")\n .f(void 0, RegisterClientResponseFilterSensitiveLog)\n .ser(se_RegisterClientCommand)\n .de(de_RegisterClientCommand)\n .build() {\n}\n",
|
|
344
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { StartDeviceAuthorizationRequestFilterSensitiveLog, } from \"../models/models_0\";\nimport { de_StartDeviceAuthorizationCommand, se_StartDeviceAuthorizationCommand } from \"../protocols/Aws_restJson1\";\nexport { $Command };\nexport class StartDeviceAuthorizationCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"AWSSSOOIDCService\", \"StartDeviceAuthorization\", {})\n .n(\"SSOOIDCClient\", \"StartDeviceAuthorizationCommand\")\n .f(StartDeviceAuthorizationRequestFilterSensitiveLog, void 0)\n .ser(se_StartDeviceAuthorizationCommand)\n .de(de_StartDeviceAuthorizationCommand)\n .build() {\n}\n",
|
|
345
|
+
"import { createAggregatedClient } from \"@smithy/smithy-client\";\nimport { CreateTokenCommand } from \"./commands/CreateTokenCommand\";\nimport { CreateTokenWithIAMCommand, } from \"./commands/CreateTokenWithIAMCommand\";\nimport { RegisterClientCommand, } from \"./commands/RegisterClientCommand\";\nimport { StartDeviceAuthorizationCommand, } from \"./commands/StartDeviceAuthorizationCommand\";\nimport { SSOOIDCClient } from \"./SSOOIDCClient\";\nconst commands = {\n CreateTokenCommand,\n CreateTokenWithIAMCommand,\n RegisterClientCommand,\n StartDeviceAuthorizationCommand,\n};\nexport class SSOOIDC extends SSOOIDCClient {\n}\ncreateAggregatedClient(commands, SSOOIDC);\n",
|
|
346
|
+
"export * from \"./CreateTokenCommand\";\nexport * from \"./CreateTokenWithIAMCommand\";\nexport * from \"./RegisterClientCommand\";\nexport * from \"./StartDeviceAuthorizationCommand\";\n",
|
|
347
|
+
"export * from \"./models_0\";\n",
|
|
348
|
+
"export * from \"./SSOOIDCClient\";\nexport * from \"./SSOOIDC\";\nexport * from \"./commands\";\nexport * from \"./models\";\nexport { SSOOIDCServiceException } from \"./models/SSOOIDCServiceException\";\n",
|
|
349
|
+
"const ssoOidcClientsHash = {};\nexport const getSsoOidcClient = async (ssoRegion) => {\n const { SSOOIDCClient } = await import(\"@aws-sdk/client-sso-oidc\");\n if (ssoOidcClientsHash[ssoRegion]) {\n return ssoOidcClientsHash[ssoRegion];\n }\n const ssoOidcClient = new SSOOIDCClient({ region: ssoRegion });\n ssoOidcClientsHash[ssoRegion] = ssoOidcClient;\n return ssoOidcClient;\n};\n",
|
|
350
|
+
"import { getSsoOidcClient } from \"./getSsoOidcClient\";\nexport const getNewSsoOidcToken = async (ssoToken, ssoRegion) => {\n const { CreateTokenCommand } = await import(\"@aws-sdk/client-sso-oidc\");\n const ssoOidcClient = await getSsoOidcClient(ssoRegion);\n return ssoOidcClient.send(new CreateTokenCommand({\n clientId: ssoToken.clientId,\n clientSecret: ssoToken.clientSecret,\n refreshToken: ssoToken.refreshToken,\n grantType: \"refresh_token\",\n }));\n};\n",
|
|
351
|
+
"import { TokenProviderError } from \"@smithy/property-provider\";\nimport { REFRESH_MESSAGE } from \"./constants\";\nexport const validateTokenExpiry = (token) => {\n if (token.expiration && token.expiration.getTime() < Date.now()) {\n throw new TokenProviderError(`Token is expired. ${REFRESH_MESSAGE}`, false);\n }\n};\n",
|
|
352
|
+
"import { TokenProviderError } from \"@smithy/property-provider\";\nimport { REFRESH_MESSAGE } from \"./constants\";\nexport const validateTokenKey = (key, value, forRefresh = false) => {\n if (typeof value === \"undefined\") {\n throw new TokenProviderError(`Value not present for '${key}' in SSO Token${forRefresh ? \". Cannot refresh\" : \"\"}. ${REFRESH_MESSAGE}`, false);\n }\n};\n",
|
|
353
|
+
"import { getSSOTokenFilepath } from \"@smithy/shared-ini-file-loader\";\nimport { promises as fsPromises } from \"fs\";\nconst { writeFile } = fsPromises;\nexport const writeSSOTokenToFile = (id, ssoToken) => {\n const tokenFilepath = getSSOTokenFilepath(id);\n const tokenString = JSON.stringify(ssoToken, null, 2);\n return writeFile(tokenFilepath, tokenString);\n};\n",
|
|
354
|
+
"import { TokenProviderError } from \"@smithy/property-provider\";\nimport { getProfileName, getSSOTokenFromFile, loadSsoSessionData, parseKnownFiles, } from \"@smithy/shared-ini-file-loader\";\nimport { EXPIRE_WINDOW_MS, REFRESH_MESSAGE } from \"./constants\";\nimport { getNewSsoOidcToken } from \"./getNewSsoOidcToken\";\nimport { validateTokenExpiry } from \"./validateTokenExpiry\";\nimport { validateTokenKey } from \"./validateTokenKey\";\nimport { writeSSOTokenToFile } from \"./writeSSOTokenToFile\";\nconst lastRefreshAttemptTime = new Date(0);\nexport const fromSso = (init = {}) => async () => {\n init.logger?.debug(\"@aws-sdk/token-providers - fromSso\");\n const profiles = await parseKnownFiles(init);\n const profileName = getProfileName(init);\n const profile = profiles[profileName];\n if (!profile) {\n throw new TokenProviderError(`Profile '${profileName}' could not be found in shared credentials file.`, false);\n }\n else if (!profile[\"sso_session\"]) {\n throw new TokenProviderError(`Profile '${profileName}' is missing required property 'sso_session'.`);\n }\n const ssoSessionName = profile[\"sso_session\"];\n const ssoSessions = await loadSsoSessionData(init);\n const ssoSession = ssoSessions[ssoSessionName];\n if (!ssoSession) {\n throw new TokenProviderError(`Sso session '${ssoSessionName}' could not be found in shared credentials file.`, false);\n }\n for (const ssoSessionRequiredKey of [\"sso_start_url\", \"sso_region\"]) {\n if (!ssoSession[ssoSessionRequiredKey]) {\n throw new TokenProviderError(`Sso session '${ssoSessionName}' is missing required property '${ssoSessionRequiredKey}'.`, false);\n }\n }\n const ssoStartUrl = ssoSession[\"sso_start_url\"];\n const ssoRegion = ssoSession[\"sso_region\"];\n let ssoToken;\n try {\n ssoToken = await getSSOTokenFromFile(ssoSessionName);\n }\n catch (e) {\n throw new TokenProviderError(`The SSO session token associated with profile=${profileName} was not found or is invalid. ${REFRESH_MESSAGE}`, false);\n }\n validateTokenKey(\"accessToken\", ssoToken.accessToken);\n validateTokenKey(\"expiresAt\", ssoToken.expiresAt);\n const { accessToken, expiresAt } = ssoToken;\n const existingToken = { token: accessToken, expiration: new Date(expiresAt) };\n if (existingToken.expiration.getTime() - Date.now() > EXPIRE_WINDOW_MS) {\n return existingToken;\n }\n if (Date.now() - lastRefreshAttemptTime.getTime() < 30 * 1000) {\n validateTokenExpiry(existingToken);\n return existingToken;\n }\n validateTokenKey(\"clientId\", ssoToken.clientId, true);\n validateTokenKey(\"clientSecret\", ssoToken.clientSecret, true);\n validateTokenKey(\"refreshToken\", ssoToken.refreshToken, true);\n try {\n lastRefreshAttemptTime.setTime(Date.now());\n const newSsoOidcToken = await getNewSsoOidcToken(ssoToken, ssoRegion);\n validateTokenKey(\"accessToken\", newSsoOidcToken.accessToken);\n validateTokenKey(\"expiresIn\", newSsoOidcToken.expiresIn);\n const newTokenExpiration = new Date(Date.now() + newSsoOidcToken.expiresIn * 1000);\n try {\n await writeSSOTokenToFile(ssoSessionName, {\n ...ssoToken,\n accessToken: newSsoOidcToken.accessToken,\n expiresAt: newTokenExpiration.toISOString(),\n refreshToken: newSsoOidcToken.refreshToken,\n });\n }\n catch (error) {\n }\n return {\n token: newSsoOidcToken.accessToken,\n expiration: newTokenExpiration,\n };\n }\n catch (error) {\n validateTokenExpiry(existingToken);\n return existingToken;\n }\n};\n",
|
|
355
|
+
"import { TokenProviderError } from \"@smithy/property-provider\";\nexport const fromStatic = ({ token, logger }) => async () => {\n logger?.debug(\"@aws-sdk/token-providers - fromStatic\");\n if (!token || !token.token) {\n throw new TokenProviderError(`Please pass a valid token to fromStatic`, false);\n }\n return token;\n};\n",
|
|
356
|
+
"import { chain, memoize, TokenProviderError } from \"@smithy/property-provider\";\nimport { fromSso } from \"./fromSso\";\nexport const nodeProvider = (init = {}) => memoize(chain(fromSso(init), async () => {\n throw new TokenProviderError(\"Could not load token from any providers\", false);\n}), (token) => token.expiration !== undefined && token.expiration.getTime() - Date.now() < 300000, (token) => token.expiration !== undefined);\n",
|
|
357
|
+
"export * from \"./fromSso\";\nexport * from \"./fromStatic\";\nexport * from \"./nodeProvider\";\n",
|
|
358
|
+
"import { resolveAwsSdkSigV4Config, } from \"@aws-sdk/core\";\nimport { getSmithyContext, normalizeProvider } from \"@smithy/util-middleware\";\nexport const defaultSSOHttpAuthSchemeParametersProvider = async (config, context, input) => {\n return {\n operation: getSmithyContext(context).operation,\n region: (await normalizeProvider(config.region)()) ||\n (() => {\n throw new Error(\"expected `region` to be configured for `aws.auth#sigv4`\");\n })(),\n };\n};\nfunction createAwsAuthSigv4HttpAuthOption(authParameters) {\n return {\n schemeId: \"aws.auth#sigv4\",\n signingProperties: {\n name: \"awsssoportal\",\n region: authParameters.region,\n },\n propertiesExtractor: (config, context) => ({\n signingProperties: {\n config,\n context,\n },\n }),\n };\n}\nfunction createSmithyApiNoAuthHttpAuthOption(authParameters) {\n return {\n schemeId: \"smithy.api#noAuth\",\n };\n}\nexport const defaultSSOHttpAuthSchemeProvider = (authParameters) => {\n const options = [];\n switch (authParameters.operation) {\n case \"GetRoleCredentials\": {\n options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));\n break;\n }\n case \"ListAccountRoles\": {\n options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));\n break;\n }\n case \"ListAccounts\": {\n options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));\n break;\n }\n case \"Logout\": {\n options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));\n break;\n }\n default: {\n options.push(createAwsAuthSigv4HttpAuthOption(authParameters));\n }\n }\n return options;\n};\nexport const resolveHttpAuthSchemeConfig = (config) => {\n const config_0 = resolveAwsSdkSigV4Config(config);\n return {\n ...config_0,\n };\n};\n",
|
|
359
|
+
"export const resolveClientEndpointParameters = (options) => {\n return {\n ...options,\n useDualstackEndpoint: options.useDualstackEndpoint ?? false,\n useFipsEndpoint: options.useFipsEndpoint ?? false,\n defaultSigningName: \"awsssoportal\",\n };\n};\nexport const commonParams = {\n UseFIPS: { type: \"builtInParams\", name: \"useFipsEndpoint\" },\n Endpoint: { type: \"builtInParams\", name: \"endpoint\" },\n Region: { type: \"builtInParams\", name: \"region\" },\n UseDualStack: { type: \"builtInParams\", name: \"useDualstackEndpoint\" },\n};\n",
|
|
360
|
+
"const u = \"required\", v = \"fn\", w = \"argv\", x = \"ref\";\nconst a = true, b = \"isSet\", c = \"booleanEquals\", d = \"error\", e = \"endpoint\", f = \"tree\", g = \"PartitionResult\", h = \"getAttr\", i = { [u]: false, \"type\": \"String\" }, j = { [u]: true, \"default\": false, \"type\": \"Boolean\" }, k = { [x]: \"Endpoint\" }, l = { [v]: c, [w]: [{ [x]: \"UseFIPS\" }, true] }, m = { [v]: c, [w]: [{ [x]: \"UseDualStack\" }, true] }, n = {}, o = { [v]: h, [w]: [{ [x]: g }, \"supportsFIPS\"] }, p = { [x]: g }, q = { [v]: c, [w]: [true, { [v]: h, [w]: [p, \"supportsDualStack\"] }] }, r = [l], s = [m], t = [{ [x]: \"Region\" }];\nconst _data = { version: \"1.0\", parameters: { Region: i, UseDualStack: j, UseFIPS: j, Endpoint: i }, rules: [{ conditions: [{ [v]: b, [w]: [k] }], rules: [{ conditions: r, error: \"Invalid Configuration: FIPS and custom endpoint are not supported\", type: d }, { conditions: s, error: \"Invalid Configuration: Dualstack and custom endpoint are not supported\", type: d }, { endpoint: { url: k, properties: n, headers: n }, type: e }], type: f }, { conditions: [{ [v]: b, [w]: t }], rules: [{ conditions: [{ [v]: \"aws.partition\", [w]: t, assign: g }], rules: [{ conditions: [l, m], rules: [{ conditions: [{ [v]: c, [w]: [a, o] }, q], rules: [{ endpoint: { url: \"https://portal.sso-fips.{Region}.{PartitionResult#dualStackDnsSuffix}\", properties: n, headers: n }, type: e }], type: f }, { error: \"FIPS and DualStack are enabled, but this partition does not support one or both\", type: d }], type: f }, { conditions: r, rules: [{ conditions: [{ [v]: c, [w]: [o, a] }], rules: [{ conditions: [{ [v]: \"stringEquals\", [w]: [{ [v]: h, [w]: [p, \"name\"] }, \"aws-us-gov\"] }], endpoint: { url: \"https://portal.sso.{Region}.amazonaws.com\", properties: n, headers: n }, type: e }, { endpoint: { url: \"https://portal.sso-fips.{Region}.{PartitionResult#dnsSuffix}\", properties: n, headers: n }, type: e }], type: f }, { error: \"FIPS is enabled but this partition does not support FIPS\", type: d }], type: f }, { conditions: s, rules: [{ conditions: [q], rules: [{ endpoint: { url: \"https://portal.sso.{Region}.{PartitionResult#dualStackDnsSuffix}\", properties: n, headers: n }, type: e }], type: f }, { error: \"DualStack is enabled but this partition does not support DualStack\", type: d }], type: f }, { endpoint: { url: \"https://portal.sso.{Region}.{PartitionResult#dnsSuffix}\", properties: n, headers: n }, type: e }], type: f }], type: f }, { error: \"Invalid Configuration: Missing Region\", type: d }] };\nexport const ruleSet = _data;\n",
|
|
361
|
+
"import { awsEndpointFunctions } from \"@aws-sdk/util-endpoints\";\nimport { customEndpointFunctions, resolveEndpoint } from \"@smithy/util-endpoints\";\nimport { ruleSet } from \"./ruleset\";\nexport const defaultEndpointResolver = (endpointParams, context = {}) => {\n return resolveEndpoint(ruleSet, {\n endpointParams: endpointParams,\n logger: context.logger,\n });\n};\ncustomEndpointFunctions.aws = awsEndpointFunctions;\n",
|
|
362
|
+
"import { AwsSdkSigV4Signer } from \"@aws-sdk/core\";\nimport { NoAuthSigner } from \"@smithy/core\";\nimport { NoOpLogger } from \"@smithy/smithy-client\";\nimport { parseUrl } from \"@smithy/url-parser\";\nimport { fromBase64, toBase64 } from \"@smithy/util-base64\";\nimport { fromUtf8, toUtf8 } from \"@smithy/util-utf8\";\nimport { defaultSSOHttpAuthSchemeProvider } from \"./auth/httpAuthSchemeProvider\";\nimport { defaultEndpointResolver } from \"./endpoint/endpointResolver\";\nexport const getRuntimeConfig = (config) => {\n return {\n apiVersion: \"2019-06-10\",\n base64Decoder: config?.base64Decoder ?? fromBase64,\n base64Encoder: config?.base64Encoder ?? toBase64,\n disableHostPrefix: config?.disableHostPrefix ?? false,\n endpointProvider: config?.endpointProvider ?? defaultEndpointResolver,\n extensions: config?.extensions ?? [],\n httpAuthSchemeProvider: config?.httpAuthSchemeProvider ?? defaultSSOHttpAuthSchemeProvider,\n httpAuthSchemes: config?.httpAuthSchemes ?? [\n {\n schemeId: \"aws.auth#sigv4\",\n identityProvider: (ipc) => ipc.getIdentityProvider(\"aws.auth#sigv4\"),\n signer: new AwsSdkSigV4Signer(),\n },\n {\n schemeId: \"smithy.api#noAuth\",\n identityProvider: (ipc) => ipc.getIdentityProvider(\"smithy.api#noAuth\") || (async () => ({})),\n signer: new NoAuthSigner(),\n },\n ],\n logger: config?.logger ?? new NoOpLogger(),\n serviceId: config?.serviceId ?? \"SSO\",\n urlParser: config?.urlParser ?? parseUrl,\n utf8Decoder: config?.utf8Decoder ?? fromUtf8,\n utf8Encoder: config?.utf8Encoder ?? toUtf8,\n };\n};\n",
|
|
363
|
+
"import packageInfo from \"../package.json\";\nimport { emitWarningIfUnsupportedVersion as awsCheckVersion } from \"@aws-sdk/core\";\nimport { defaultUserAgent } from \"@aws-sdk/util-user-agent-node\";\nimport { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS, NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, } from \"@smithy/config-resolver\";\nimport { Hash } from \"@smithy/hash-node\";\nimport { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from \"@smithy/middleware-retry\";\nimport { loadConfig as loadNodeConfig } from \"@smithy/node-config-provider\";\nimport { NodeHttpHandler as RequestHandler, streamCollector } from \"@smithy/node-http-handler\";\nimport { calculateBodyLength } from \"@smithy/util-body-length-node\";\nimport { DEFAULT_RETRY_MODE } from \"@smithy/util-retry\";\nimport { getRuntimeConfig as getSharedRuntimeConfig } from \"./runtimeConfig.shared\";\nimport { loadConfigsForDefaultMode } from \"@smithy/smithy-client\";\nimport { resolveDefaultsModeConfig } from \"@smithy/util-defaults-mode-node\";\nimport { emitWarningIfUnsupportedVersion } from \"@smithy/smithy-client\";\nexport const getRuntimeConfig = (config) => {\n emitWarningIfUnsupportedVersion(process.version);\n const defaultsMode = resolveDefaultsModeConfig(config);\n const defaultConfigProvider = () => defaultsMode().then(loadConfigsForDefaultMode);\n const clientSharedValues = getSharedRuntimeConfig(config);\n awsCheckVersion(process.version);\n return {\n ...clientSharedValues,\n ...config,\n runtime: \"node\",\n defaultsMode,\n bodyLengthChecker: config?.bodyLengthChecker ?? calculateBodyLength,\n defaultUserAgentProvider: config?.defaultUserAgentProvider ??\n defaultUserAgent({ serviceId: clientSharedValues.serviceId, clientVersion: packageInfo.version }),\n maxAttempts: config?.maxAttempts ?? loadNodeConfig(NODE_MAX_ATTEMPT_CONFIG_OPTIONS),\n region: config?.region ?? loadNodeConfig(NODE_REGION_CONFIG_OPTIONS, NODE_REGION_CONFIG_FILE_OPTIONS),\n requestHandler: RequestHandler.create(config?.requestHandler ?? defaultConfigProvider),\n retryMode: config?.retryMode ??\n loadNodeConfig({\n ...NODE_RETRY_MODE_CONFIG_OPTIONS,\n default: async () => (await defaultConfigProvider()).retryMode || DEFAULT_RETRY_MODE,\n }),\n sha256: config?.sha256 ?? Hash.bind(null, \"sha256\"),\n streamCollector: config?.streamCollector ?? streamCollector,\n useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS),\n useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS),\n };\n};\n",
|
|
364
|
+
"export const getHttpAuthExtensionConfiguration = (runtimeConfig) => {\n const _httpAuthSchemes = runtimeConfig.httpAuthSchemes;\n let _httpAuthSchemeProvider = runtimeConfig.httpAuthSchemeProvider;\n let _credentials = runtimeConfig.credentials;\n return {\n setHttpAuthScheme(httpAuthScheme) {\n const index = _httpAuthSchemes.findIndex((scheme) => scheme.schemeId === httpAuthScheme.schemeId);\n if (index === -1) {\n _httpAuthSchemes.push(httpAuthScheme);\n }\n else {\n _httpAuthSchemes.splice(index, 1, httpAuthScheme);\n }\n },\n httpAuthSchemes() {\n return _httpAuthSchemes;\n },\n setHttpAuthSchemeProvider(httpAuthSchemeProvider) {\n _httpAuthSchemeProvider = httpAuthSchemeProvider;\n },\n httpAuthSchemeProvider() {\n return _httpAuthSchemeProvider;\n },\n setCredentials(credentials) {\n _credentials = credentials;\n },\n credentials() {\n return _credentials;\n },\n };\n};\nexport const resolveHttpAuthRuntimeConfig = (config) => {\n return {\n httpAuthSchemes: config.httpAuthSchemes(),\n httpAuthSchemeProvider: config.httpAuthSchemeProvider(),\n credentials: config.credentials(),\n };\n};\n",
|
|
365
|
+
"import { getAwsRegionExtensionConfiguration, resolveAwsRegionExtensionConfiguration, } from \"@aws-sdk/region-config-resolver\";\nimport { getHttpHandlerExtensionConfiguration, resolveHttpHandlerRuntimeConfig } from \"@smithy/protocol-http\";\nimport { getDefaultExtensionConfiguration, resolveDefaultRuntimeConfig } from \"@smithy/smithy-client\";\nimport { getHttpAuthExtensionConfiguration, resolveHttpAuthRuntimeConfig } from \"./auth/httpAuthExtensionConfiguration\";\nconst asPartial = (t) => t;\nexport const resolveRuntimeExtensions = (runtimeConfig, extensions) => {\n const extensionConfiguration = {\n ...asPartial(getAwsRegionExtensionConfiguration(runtimeConfig)),\n ...asPartial(getDefaultExtensionConfiguration(runtimeConfig)),\n ...asPartial(getHttpHandlerExtensionConfiguration(runtimeConfig)),\n ...asPartial(getHttpAuthExtensionConfiguration(runtimeConfig)),\n };\n extensions.forEach((extension) => extension.configure(extensionConfiguration));\n return {\n ...runtimeConfig,\n ...resolveAwsRegionExtensionConfiguration(extensionConfiguration),\n ...resolveDefaultRuntimeConfig(extensionConfiguration),\n ...resolveHttpHandlerRuntimeConfig(extensionConfiguration),\n ...resolveHttpAuthRuntimeConfig(extensionConfiguration),\n };\n};\n",
|
|
366
|
+
"import { getHostHeaderPlugin, resolveHostHeaderConfig, } from \"@aws-sdk/middleware-host-header\";\nimport { getLoggerPlugin } from \"@aws-sdk/middleware-logger\";\nimport { getRecursionDetectionPlugin } from \"@aws-sdk/middleware-recursion-detection\";\nimport { getUserAgentPlugin, resolveUserAgentConfig, } from \"@aws-sdk/middleware-user-agent\";\nimport { resolveRegionConfig } from \"@smithy/config-resolver\";\nimport { DefaultIdentityProviderConfig, getHttpAuthSchemeEndpointRuleSetPlugin, getHttpSigningPlugin, } from \"@smithy/core\";\nimport { getContentLengthPlugin } from \"@smithy/middleware-content-length\";\nimport { resolveEndpointConfig } from \"@smithy/middleware-endpoint\";\nimport { getRetryPlugin, resolveRetryConfig } from \"@smithy/middleware-retry\";\nimport { Client as __Client, } from \"@smithy/smithy-client\";\nimport { defaultSSOHttpAuthSchemeParametersProvider, resolveHttpAuthSchemeConfig, } from \"./auth/httpAuthSchemeProvider\";\nimport { resolveClientEndpointParameters, } from \"./endpoint/EndpointParameters\";\nimport { getRuntimeConfig as __getRuntimeConfig } from \"./runtimeConfig\";\nimport { resolveRuntimeExtensions } from \"./runtimeExtensions\";\nexport { __Client };\nexport class SSOClient extends __Client {\n constructor(...[configuration]) {\n const _config_0 = __getRuntimeConfig(configuration || {});\n const _config_1 = resolveClientEndpointParameters(_config_0);\n const _config_2 = resolveUserAgentConfig(_config_1);\n const _config_3 = resolveRetryConfig(_config_2);\n const _config_4 = resolveRegionConfig(_config_3);\n const _config_5 = resolveHostHeaderConfig(_config_4);\n const _config_6 = resolveEndpointConfig(_config_5);\n const _config_7 = resolveHttpAuthSchemeConfig(_config_6);\n const _config_8 = resolveRuntimeExtensions(_config_7, configuration?.extensions || []);\n super(_config_8);\n this.config = _config_8;\n this.middlewareStack.use(getUserAgentPlugin(this.config));\n this.middlewareStack.use(getRetryPlugin(this.config));\n this.middlewareStack.use(getContentLengthPlugin(this.config));\n this.middlewareStack.use(getHostHeaderPlugin(this.config));\n this.middlewareStack.use(getLoggerPlugin(this.config));\n this.middlewareStack.use(getRecursionDetectionPlugin(this.config));\n this.middlewareStack.use(getHttpAuthSchemeEndpointRuleSetPlugin(this.config, {\n httpAuthSchemeParametersProvider: defaultSSOHttpAuthSchemeParametersProvider,\n identityProviderConfigProvider: async (config) => new DefaultIdentityProviderConfig({\n \"aws.auth#sigv4\": config.credentials,\n }),\n }));\n this.middlewareStack.use(getHttpSigningPlugin(this.config));\n }\n destroy() {\n super.destroy();\n }\n}\n",
|
|
367
|
+
"import { ServiceException as __ServiceException, } from \"@smithy/smithy-client\";\nexport { __ServiceException };\nexport class SSOServiceException extends __ServiceException {\n constructor(options) {\n super(options);\n Object.setPrototypeOf(this, SSOServiceException.prototype);\n }\n}\n",
|
|
368
|
+
"import { SENSITIVE_STRING } from \"@smithy/smithy-client\";\nimport { SSOServiceException as __BaseException } from \"./SSOServiceException\";\nexport class InvalidRequestException extends __BaseException {\n constructor(opts) {\n super({\n name: \"InvalidRequestException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"InvalidRequestException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, InvalidRequestException.prototype);\n }\n}\nexport class ResourceNotFoundException extends __BaseException {\n constructor(opts) {\n super({\n name: \"ResourceNotFoundException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"ResourceNotFoundException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, ResourceNotFoundException.prototype);\n }\n}\nexport class TooManyRequestsException extends __BaseException {\n constructor(opts) {\n super({\n name: \"TooManyRequestsException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"TooManyRequestsException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, TooManyRequestsException.prototype);\n }\n}\nexport class UnauthorizedException extends __BaseException {\n constructor(opts) {\n super({\n name: \"UnauthorizedException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"UnauthorizedException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, UnauthorizedException.prototype);\n }\n}\nexport const GetRoleCredentialsRequestFilterSensitiveLog = (obj) => ({\n ...obj,\n ...(obj.accessToken && { accessToken: SENSITIVE_STRING }),\n});\nexport const RoleCredentialsFilterSensitiveLog = (obj) => ({\n ...obj,\n ...(obj.secretAccessKey && { secretAccessKey: SENSITIVE_STRING }),\n ...(obj.sessionToken && { sessionToken: SENSITIVE_STRING }),\n});\nexport const GetRoleCredentialsResponseFilterSensitiveLog = (obj) => ({\n ...obj,\n ...(obj.roleCredentials && { roleCredentials: RoleCredentialsFilterSensitiveLog(obj.roleCredentials) }),\n});\nexport const ListAccountRolesRequestFilterSensitiveLog = (obj) => ({\n ...obj,\n ...(obj.accessToken && { accessToken: SENSITIVE_STRING }),\n});\nexport const ListAccountsRequestFilterSensitiveLog = (obj) => ({\n ...obj,\n ...(obj.accessToken && { accessToken: SENSITIVE_STRING }),\n});\nexport const LogoutRequestFilterSensitiveLog = (obj) => ({\n ...obj,\n ...(obj.accessToken && { accessToken: SENSITIVE_STRING }),\n});\n",
|
|
369
|
+
"import { loadRestJsonErrorCode, parseJsonBody as parseBody, parseJsonErrorBody as parseErrorBody } from \"@aws-sdk/core\";\nimport { requestBuilder as rb } from \"@smithy/core\";\nimport { _json, collectBody, decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectObject as __expectObject, expectString as __expectString, map, take, withBaseException, } from \"@smithy/smithy-client\";\nimport { InvalidRequestException, ResourceNotFoundException, TooManyRequestsException, UnauthorizedException, } from \"../models/models_0\";\nimport { SSOServiceException as __BaseException } from \"../models/SSOServiceException\";\nexport const se_GetRoleCredentialsCommand = async (input, context) => {\n const b = rb(input, context);\n const headers = map({}, isSerializableHeaderValue, {\n [_xasbt]: input[_aT],\n });\n b.bp(\"/federation/credentials\");\n const query = map({\n [_rn]: [, __expectNonNull(input[_rN], `roleName`)],\n [_ai]: [, __expectNonNull(input[_aI], `accountId`)],\n });\n let body;\n b.m(\"GET\").h(headers).q(query).b(body);\n return b.build();\n};\nexport const se_ListAccountRolesCommand = async (input, context) => {\n const b = rb(input, context);\n const headers = map({}, isSerializableHeaderValue, {\n [_xasbt]: input[_aT],\n });\n b.bp(\"/assignment/roles\");\n const query = map({\n [_nt]: [, input[_nT]],\n [_mr]: [() => input.maxResults !== void 0, () => input[_mR].toString()],\n [_ai]: [, __expectNonNull(input[_aI], `accountId`)],\n });\n let body;\n b.m(\"GET\").h(headers).q(query).b(body);\n return b.build();\n};\nexport const se_ListAccountsCommand = async (input, context) => {\n const b = rb(input, context);\n const headers = map({}, isSerializableHeaderValue, {\n [_xasbt]: input[_aT],\n });\n b.bp(\"/assignment/accounts\");\n const query = map({\n [_nt]: [, input[_nT]],\n [_mr]: [() => input.maxResults !== void 0, () => input[_mR].toString()],\n });\n let body;\n b.m(\"GET\").h(headers).q(query).b(body);\n return b.build();\n};\nexport const se_LogoutCommand = async (input, context) => {\n const b = rb(input, context);\n const headers = map({}, isSerializableHeaderValue, {\n [_xasbt]: input[_aT],\n });\n b.bp(\"/logout\");\n let body;\n b.m(\"POST\").h(headers).b(body);\n return b.build();\n};\nexport const de_GetRoleCredentialsCommand = async (output, context) => {\n if (output.statusCode !== 200 && output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const contents = map({\n $metadata: deserializeMetadata(output),\n });\n const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), \"body\");\n const doc = take(data, {\n roleCredentials: _json,\n });\n Object.assign(contents, doc);\n return contents;\n};\nexport const de_ListAccountRolesCommand = async (output, context) => {\n if (output.statusCode !== 200 && output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const contents = map({\n $metadata: deserializeMetadata(output),\n });\n const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), \"body\");\n const doc = take(data, {\n nextToken: __expectString,\n roleList: _json,\n });\n Object.assign(contents, doc);\n return contents;\n};\nexport const de_ListAccountsCommand = async (output, context) => {\n if (output.statusCode !== 200 && output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const contents = map({\n $metadata: deserializeMetadata(output),\n });\n const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), \"body\");\n const doc = take(data, {\n accountList: _json,\n nextToken: __expectString,\n });\n Object.assign(contents, doc);\n return contents;\n};\nexport const de_LogoutCommand = async (output, context) => {\n if (output.statusCode !== 200 && output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const contents = map({\n $metadata: deserializeMetadata(output),\n });\n await collectBody(output.body, context);\n return contents;\n};\nconst de_CommandError = async (output, context) => {\n const parsedOutput = {\n ...output,\n body: await parseErrorBody(output.body, context),\n };\n const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n switch (errorCode) {\n case \"InvalidRequestException\":\n case \"com.amazonaws.sso#InvalidRequestException\":\n throw await de_InvalidRequestExceptionRes(parsedOutput, context);\n case \"ResourceNotFoundException\":\n case \"com.amazonaws.sso#ResourceNotFoundException\":\n throw await de_ResourceNotFoundExceptionRes(parsedOutput, context);\n case \"TooManyRequestsException\":\n case \"com.amazonaws.sso#TooManyRequestsException\":\n throw await de_TooManyRequestsExceptionRes(parsedOutput, context);\n case \"UnauthorizedException\":\n case \"com.amazonaws.sso#UnauthorizedException\":\n throw await de_UnauthorizedExceptionRes(parsedOutput, context);\n default:\n const parsedBody = parsedOutput.body;\n return throwDefaultError({\n output,\n parsedBody,\n errorCode,\n });\n }\n};\nconst throwDefaultError = withBaseException(__BaseException);\nconst de_InvalidRequestExceptionRes = async (parsedOutput, context) => {\n const contents = map({});\n const data = parsedOutput.body;\n const doc = take(data, {\n message: __expectString,\n });\n Object.assign(contents, doc);\n const exception = new InvalidRequestException({\n $metadata: deserializeMetadata(parsedOutput),\n ...contents,\n });\n return __decorateServiceException(exception, parsedOutput.body);\n};\nconst de_ResourceNotFoundExceptionRes = async (parsedOutput, context) => {\n const contents = map({});\n const data = parsedOutput.body;\n const doc = take(data, {\n message: __expectString,\n });\n Object.assign(contents, doc);\n const exception = new ResourceNotFoundException({\n $metadata: deserializeMetadata(parsedOutput),\n ...contents,\n });\n return __decorateServiceException(exception, parsedOutput.body);\n};\nconst de_TooManyRequestsExceptionRes = async (parsedOutput, context) => {\n const contents = map({});\n const data = parsedOutput.body;\n const doc = take(data, {\n message: __expectString,\n });\n Object.assign(contents, doc);\n const exception = new TooManyRequestsException({\n $metadata: deserializeMetadata(parsedOutput),\n ...contents,\n });\n return __decorateServiceException(exception, parsedOutput.body);\n};\nconst de_UnauthorizedExceptionRes = async (parsedOutput, context) => {\n const contents = map({});\n const data = parsedOutput.body;\n const doc = take(data, {\n message: __expectString,\n });\n Object.assign(contents, doc);\n const exception = new UnauthorizedException({\n $metadata: deserializeMetadata(parsedOutput),\n ...contents,\n });\n return __decorateServiceException(exception, parsedOutput.body);\n};\nconst deserializeMetadata = (output) => ({\n httpStatusCode: output.statusCode,\n requestId: output.headers[\"x-amzn-requestid\"] ?? output.headers[\"x-amzn-request-id\"] ?? output.headers[\"x-amz-request-id\"],\n extendedRequestId: output.headers[\"x-amz-id-2\"],\n cfId: output.headers[\"x-amz-cf-id\"],\n});\nconst collectBodyString = (streamBody, context) => collectBody(streamBody, context).then((body) => context.utf8Encoder(body));\nconst isSerializableHeaderValue = (value) => value !== undefined &&\n value !== null &&\n value !== \"\" &&\n (!Object.getOwnPropertyNames(value).includes(\"length\") || value.length != 0) &&\n (!Object.getOwnPropertyNames(value).includes(\"size\") || value.size != 0);\nconst _aI = \"accountId\";\nconst _aT = \"accessToken\";\nconst _ai = \"account_id\";\nconst _mR = \"maxResults\";\nconst _mr = \"max_result\";\nconst _nT = \"nextToken\";\nconst _nt = \"next_token\";\nconst _rN = \"roleName\";\nconst _rn = \"role_name\";\nconst _xasbt = \"x-amz-sso_bearer_token\";\n",
|
|
370
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { GetRoleCredentialsRequestFilterSensitiveLog, GetRoleCredentialsResponseFilterSensitiveLog, } from \"../models/models_0\";\nimport { de_GetRoleCredentialsCommand, se_GetRoleCredentialsCommand } from \"../protocols/Aws_restJson1\";\nexport { $Command };\nexport class GetRoleCredentialsCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"SWBPortalService\", \"GetRoleCredentials\", {})\n .n(\"SSOClient\", \"GetRoleCredentialsCommand\")\n .f(GetRoleCredentialsRequestFilterSensitiveLog, GetRoleCredentialsResponseFilterSensitiveLog)\n .ser(se_GetRoleCredentialsCommand)\n .de(de_GetRoleCredentialsCommand)\n .build() {\n}\n",
|
|
371
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { ListAccountRolesRequestFilterSensitiveLog, } from \"../models/models_0\";\nimport { de_ListAccountRolesCommand, se_ListAccountRolesCommand } from \"../protocols/Aws_restJson1\";\nexport { $Command };\nexport class ListAccountRolesCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"SWBPortalService\", \"ListAccountRoles\", {})\n .n(\"SSOClient\", \"ListAccountRolesCommand\")\n .f(ListAccountRolesRequestFilterSensitiveLog, void 0)\n .ser(se_ListAccountRolesCommand)\n .de(de_ListAccountRolesCommand)\n .build() {\n}\n",
|
|
372
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { ListAccountsRequestFilterSensitiveLog } from \"../models/models_0\";\nimport { de_ListAccountsCommand, se_ListAccountsCommand } from \"../protocols/Aws_restJson1\";\nexport { $Command };\nexport class ListAccountsCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"SWBPortalService\", \"ListAccounts\", {})\n .n(\"SSOClient\", \"ListAccountsCommand\")\n .f(ListAccountsRequestFilterSensitiveLog, void 0)\n .ser(se_ListAccountsCommand)\n .de(de_ListAccountsCommand)\n .build() {\n}\n",
|
|
373
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { LogoutRequestFilterSensitiveLog } from \"../models/models_0\";\nimport { de_LogoutCommand, se_LogoutCommand } from \"../protocols/Aws_restJson1\";\nexport { $Command };\nexport class LogoutCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"SWBPortalService\", \"Logout\", {})\n .n(\"SSOClient\", \"LogoutCommand\")\n .f(LogoutRequestFilterSensitiveLog, void 0)\n .ser(se_LogoutCommand)\n .de(de_LogoutCommand)\n .build() {\n}\n",
|
|
374
|
+
"import { createAggregatedClient } from \"@smithy/smithy-client\";\nimport { GetRoleCredentialsCommand, } from \"./commands/GetRoleCredentialsCommand\";\nimport { ListAccountRolesCommand, } from \"./commands/ListAccountRolesCommand\";\nimport { ListAccountsCommand, } from \"./commands/ListAccountsCommand\";\nimport { LogoutCommand } from \"./commands/LogoutCommand\";\nimport { SSOClient } from \"./SSOClient\";\nconst commands = {\n GetRoleCredentialsCommand,\n ListAccountRolesCommand,\n ListAccountsCommand,\n LogoutCommand,\n};\nexport class SSO extends SSOClient {\n}\ncreateAggregatedClient(commands, SSO);\n",
|
|
375
|
+
"export * from \"./GetRoleCredentialsCommand\";\nexport * from \"./ListAccountRolesCommand\";\nexport * from \"./ListAccountsCommand\";\nexport * from \"./LogoutCommand\";\n",
|
|
376
|
+
"import { createPaginator } from \"@smithy/core\";\nimport { ListAccountRolesCommand, } from \"../commands/ListAccountRolesCommand\";\nimport { SSOClient } from \"../SSOClient\";\nexport const paginateListAccountRoles = createPaginator(SSOClient, ListAccountRolesCommand, \"nextToken\", \"nextToken\", \"maxResults\");\n",
|
|
377
|
+
"import { createPaginator } from \"@smithy/core\";\nimport { ListAccountsCommand, } from \"../commands/ListAccountsCommand\";\nimport { SSOClient } from \"../SSOClient\";\nexport const paginateListAccounts = createPaginator(SSOClient, ListAccountsCommand, \"nextToken\", \"nextToken\", \"maxResults\");\n",
|
|
378
|
+
"export * from \"./Interfaces\";\nexport * from \"./ListAccountRolesPaginator\";\nexport * from \"./ListAccountsPaginator\";\n",
|
|
379
|
+
"export * from \"./models_0\";\n",
|
|
380
|
+
"export * from \"./SSOClient\";\nexport * from \"./SSO\";\nexport * from \"./commands\";\nexport * from \"./pagination\";\nexport * from \"./models\";\nexport { SSOServiceException } from \"./models/SSOServiceException\";\n",
|
|
381
|
+
"import { GetRoleCredentialsCommand, SSOClient } from \"@aws-sdk/client-sso\";\nexport { GetRoleCredentialsCommand, SSOClient };\n",
|
|
382
|
+
"import { fromSso as getSsoTokenProvider } from \"@aws-sdk/token-providers\";\nimport { CredentialsProviderError } from \"@smithy/property-provider\";\nimport { getSSOTokenFromFile } from \"@smithy/shared-ini-file-loader\";\nconst SHOULD_FAIL_CREDENTIAL_CHAIN = false;\nexport const resolveSSOCredentials = async ({ ssoStartUrl, ssoSession, ssoAccountId, ssoRegion, ssoRoleName, ssoClient, clientConfig, profile, logger, }) => {\n let token;\n const refreshMessage = `To refresh this SSO session run aws sso login with the corresponding profile.`;\n if (ssoSession) {\n try {\n const _token = await getSsoTokenProvider({ profile })();\n token = {\n accessToken: _token.token,\n expiresAt: new Date(_token.expiration).toISOString(),\n };\n }\n catch (e) {\n throw new CredentialsProviderError(e.message, {\n tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,\n logger,\n });\n }\n }\n else {\n try {\n token = await getSSOTokenFromFile(ssoStartUrl);\n }\n catch (e) {\n throw new CredentialsProviderError(`The SSO session associated with this profile is invalid. ${refreshMessage}`, {\n tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,\n logger,\n });\n }\n }\n if (new Date(token.expiresAt).getTime() - Date.now() <= 0) {\n throw new CredentialsProviderError(`The SSO session associated with this profile has expired. ${refreshMessage}`, {\n tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,\n logger,\n });\n }\n const { accessToken } = token;\n const { SSOClient, GetRoleCredentialsCommand } = await import(\"./loadSso\");\n const sso = ssoClient ||\n new SSOClient(Object.assign({}, clientConfig ?? {}, {\n region: clientConfig?.region ?? ssoRegion,\n }));\n let ssoResp;\n try {\n ssoResp = await sso.send(new GetRoleCredentialsCommand({\n accountId: ssoAccountId,\n roleName: ssoRoleName,\n accessToken,\n }));\n }\n catch (e) {\n throw new CredentialsProviderError(e, {\n tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,\n logger,\n });\n }\n const { roleCredentials: { accessKeyId, secretAccessKey, sessionToken, expiration, credentialScope, accountId } = {}, } = ssoResp;\n if (!accessKeyId || !secretAccessKey || !sessionToken || !expiration) {\n throw new CredentialsProviderError(\"SSO returns an invalid temporary credential.\", {\n tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,\n logger,\n });\n }\n return {\n accessKeyId,\n secretAccessKey,\n sessionToken,\n expiration: new Date(expiration),\n ...(credentialScope && { credentialScope }),\n ...(accountId && { accountId }),\n };\n};\n",
|
|
383
|
+
"import { CredentialsProviderError } from \"@smithy/property-provider\";\nexport const validateSsoProfile = (profile, logger) => {\n const { sso_start_url, sso_account_id, sso_region, sso_role_name } = profile;\n if (!sso_start_url || !sso_account_id || !sso_region || !sso_role_name) {\n throw new CredentialsProviderError(`Profile is configured with invalid SSO credentials. Required parameters \"sso_account_id\", ` +\n `\"sso_region\", \"sso_role_name\", \"sso_start_url\". Got ${Object.keys(profile).join(\", \")}\\nReference: https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-sso.html`, { tryNextLink: false, logger });\n }\n return profile;\n};\n",
|
|
384
|
+
"import { CredentialsProviderError } from \"@smithy/property-provider\";\nimport { getProfileName, loadSsoSessionData, parseKnownFiles } from \"@smithy/shared-ini-file-loader\";\nimport { isSsoProfile } from \"./isSsoProfile\";\nimport { resolveSSOCredentials } from \"./resolveSSOCredentials\";\nimport { validateSsoProfile } from \"./validateSsoProfile\";\nexport const fromSSO = (init = {}) => async () => {\n init.logger?.debug(\"@aws-sdk/credential-provider-sso - fromSSO\");\n const { ssoStartUrl, ssoAccountId, ssoRegion, ssoRoleName, ssoSession } = init;\n const { ssoClient } = init;\n const profileName = getProfileName(init);\n if (!ssoStartUrl && !ssoAccountId && !ssoRegion && !ssoRoleName && !ssoSession) {\n const profiles = await parseKnownFiles(init);\n const profile = profiles[profileName];\n if (!profile) {\n throw new CredentialsProviderError(`Profile ${profileName} was not found.`, { logger: init.logger });\n }\n if (!isSsoProfile(profile)) {\n throw new CredentialsProviderError(`Profile ${profileName} is not configured with SSO credentials.`, {\n logger: init.logger,\n });\n }\n if (profile?.sso_session) {\n const ssoSessions = await loadSsoSessionData(init);\n const session = ssoSessions[profile.sso_session];\n const conflictMsg = ` configurations in profile ${profileName} and sso-session ${profile.sso_session}`;\n if (ssoRegion && ssoRegion !== session.sso_region) {\n throw new CredentialsProviderError(`Conflicting SSO region` + conflictMsg, {\n tryNextLink: false,\n logger: init.logger,\n });\n }\n if (ssoStartUrl && ssoStartUrl !== session.sso_start_url) {\n throw new CredentialsProviderError(`Conflicting SSO start_url` + conflictMsg, {\n tryNextLink: false,\n logger: init.logger,\n });\n }\n profile.sso_region = session.sso_region;\n profile.sso_start_url = session.sso_start_url;\n }\n const { sso_start_url, sso_account_id, sso_region, sso_role_name, sso_session } = validateSsoProfile(profile, init.logger);\n return resolveSSOCredentials({\n ssoStartUrl: sso_start_url,\n ssoSession: sso_session,\n ssoAccountId: sso_account_id,\n ssoRegion: sso_region,\n ssoRoleName: sso_role_name,\n ssoClient: ssoClient,\n clientConfig: init.clientConfig,\n profile: profileName,\n });\n }\n else if (!ssoStartUrl || !ssoAccountId || !ssoRegion || !ssoRoleName) {\n throw new CredentialsProviderError(\"Incomplete configuration. The fromSSO() argument hash must include \" +\n '\"ssoStartUrl\", \"ssoAccountId\", \"ssoRegion\", \"ssoRoleName\"', { tryNextLink: false, logger: init.logger });\n }\n else {\n return resolveSSOCredentials({\n ssoStartUrl,\n ssoSession,\n ssoAccountId,\n ssoRegion,\n ssoRoleName,\n ssoClient,\n clientConfig: init.clientConfig,\n profile: profileName,\n });\n }\n};\n",
|
|
385
|
+
"export * from \"./fromSSO\";\nexport * from \"./isSsoProfile\";\nexport * from \"./types\";\nexport * from \"./validateSsoProfile\";\n",
|
|
386
|
+
"import { chain, CredentialsProviderError } from \"@smithy/property-provider\";\nexport const resolveCredentialSource = (credentialSource, profileName, logger) => {\n const sourceProvidersMap = {\n EcsContainer: async (options) => {\n const { fromHttp } = await import(\"@aws-sdk/credential-provider-http\");\n const { fromContainerMetadata } = await import(\"@smithy/credential-provider-imds\");\n logger?.debug(\"@aws-sdk/credential-provider-ini - credential_source is EcsContainer\");\n return chain(fromHttp(options ?? {}), fromContainerMetadata(options));\n },\n Ec2InstanceMetadata: async (options) => {\n logger?.debug(\"@aws-sdk/credential-provider-ini - credential_source is Ec2InstanceMetadata\");\n const { fromInstanceMetadata } = await import(\"@smithy/credential-provider-imds\");\n return fromInstanceMetadata(options);\n },\n Environment: async (options) => {\n logger?.debug(\"@aws-sdk/credential-provider-ini - credential_source is Environment\");\n const { fromEnv } = await import(\"@aws-sdk/credential-provider-env\");\n return fromEnv(options);\n },\n };\n if (credentialSource in sourceProvidersMap) {\n return sourceProvidersMap[credentialSource];\n }\n else {\n throw new CredentialsProviderError(`Unsupported credential source in profile ${profileName}. Got ${credentialSource}, ` +\n `expected EcsContainer or Ec2InstanceMetadata or Environment.`, { logger });\n }\n};\n",
|
|
387
|
+
"import { resolveAwsSdkSigV4Config, } from \"@aws-sdk/core\";\nimport { getSmithyContext, normalizeProvider } from \"@smithy/util-middleware\";\nimport { STSClient } from \"../STSClient\";\nexport const defaultSTSHttpAuthSchemeParametersProvider = async (config, context, input) => {\n return {\n operation: getSmithyContext(context).operation,\n region: (await normalizeProvider(config.region)()) ||\n (() => {\n throw new Error(\"expected `region` to be configured for `aws.auth#sigv4`\");\n })(),\n };\n};\nfunction createAwsAuthSigv4HttpAuthOption(authParameters) {\n return {\n schemeId: \"aws.auth#sigv4\",\n signingProperties: {\n name: \"sts\",\n region: authParameters.region,\n },\n propertiesExtractor: (config, context) => ({\n signingProperties: {\n config,\n context,\n },\n }),\n };\n}\nfunction createSmithyApiNoAuthHttpAuthOption(authParameters) {\n return {\n schemeId: \"smithy.api#noAuth\",\n };\n}\nexport const defaultSTSHttpAuthSchemeProvider = (authParameters) => {\n const options = [];\n switch (authParameters.operation) {\n case \"AssumeRoleWithSAML\": {\n options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));\n break;\n }\n case \"AssumeRoleWithWebIdentity\": {\n options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));\n break;\n }\n default: {\n options.push(createAwsAuthSigv4HttpAuthOption(authParameters));\n }\n }\n return options;\n};\nexport const resolveStsAuthConfig = (input) => ({\n ...input,\n stsClientCtor: STSClient,\n});\nexport const resolveHttpAuthSchemeConfig = (config) => {\n const config_0 = resolveStsAuthConfig(config);\n const config_1 = resolveAwsSdkSigV4Config(config_0);\n return {\n ...config_1,\n };\n};\n",
|
|
388
|
+
"export const resolveClientEndpointParameters = (options) => {\n return {\n ...options,\n useDualstackEndpoint: options.useDualstackEndpoint ?? false,\n useFipsEndpoint: options.useFipsEndpoint ?? false,\n useGlobalEndpoint: options.useGlobalEndpoint ?? false,\n defaultSigningName: \"sts\",\n };\n};\nexport const commonParams = {\n UseGlobalEndpoint: { type: \"builtInParams\", name: \"useGlobalEndpoint\" },\n UseFIPS: { type: \"builtInParams\", name: \"useFipsEndpoint\" },\n Endpoint: { type: \"builtInParams\", name: \"endpoint\" },\n Region: { type: \"builtInParams\", name: \"region\" },\n UseDualStack: { type: \"builtInParams\", name: \"useDualstackEndpoint\" },\n};\n",
|
|
389
|
+
"const F = \"required\", G = \"type\", H = \"fn\", I = \"argv\", J = \"ref\";\nconst a = false, b = true, c = \"booleanEquals\", d = \"stringEquals\", e = \"sigv4\", f = \"sts\", g = \"us-east-1\", h = \"endpoint\", i = \"https://sts.{Region}.{PartitionResult#dnsSuffix}\", j = \"tree\", k = \"error\", l = \"getAttr\", m = { [F]: false, [G]: \"String\" }, n = { [F]: true, \"default\": false, [G]: \"Boolean\" }, o = { [J]: \"Endpoint\" }, p = { [H]: \"isSet\", [I]: [{ [J]: \"Region\" }] }, q = { [J]: \"Region\" }, r = { [H]: \"aws.partition\", [I]: [q], \"assign\": \"PartitionResult\" }, s = { [J]: \"UseFIPS\" }, t = { [J]: \"UseDualStack\" }, u = { \"url\": \"https://sts.amazonaws.com\", \"properties\": { \"authSchemes\": [{ \"name\": e, \"signingName\": f, \"signingRegion\": g }] }, \"headers\": {} }, v = {}, w = { \"conditions\": [{ [H]: d, [I]: [q, \"aws-global\"] }], [h]: u, [G]: h }, x = { [H]: c, [I]: [s, true] }, y = { [H]: c, [I]: [t, true] }, z = { [H]: l, [I]: [{ [J]: \"PartitionResult\" }, \"supportsFIPS\"] }, A = { [J]: \"PartitionResult\" }, B = { [H]: c, [I]: [true, { [H]: l, [I]: [A, \"supportsDualStack\"] }] }, C = [{ [H]: \"isSet\", [I]: [o] }], D = [x], E = [y];\nconst _data = { version: \"1.0\", parameters: { Region: m, UseDualStack: n, UseFIPS: n, Endpoint: m, UseGlobalEndpoint: n }, rules: [{ conditions: [{ [H]: c, [I]: [{ [J]: \"UseGlobalEndpoint\" }, b] }, { [H]: \"not\", [I]: C }, p, r, { [H]: c, [I]: [s, a] }, { [H]: c, [I]: [t, a] }], rules: [{ conditions: [{ [H]: d, [I]: [q, \"ap-northeast-1\"] }], endpoint: u, [G]: h }, { conditions: [{ [H]: d, [I]: [q, \"ap-south-1\"] }], endpoint: u, [G]: h }, { conditions: [{ [H]: d, [I]: [q, \"ap-southeast-1\"] }], endpoint: u, [G]: h }, { conditions: [{ [H]: d, [I]: [q, \"ap-southeast-2\"] }], endpoint: u, [G]: h }, w, { conditions: [{ [H]: d, [I]: [q, \"ca-central-1\"] }], endpoint: u, [G]: h }, { conditions: [{ [H]: d, [I]: [q, \"eu-central-1\"] }], endpoint: u, [G]: h }, { conditions: [{ [H]: d, [I]: [q, \"eu-north-1\"] }], endpoint: u, [G]: h }, { conditions: [{ [H]: d, [I]: [q, \"eu-west-1\"] }], endpoint: u, [G]: h }, { conditions: [{ [H]: d, [I]: [q, \"eu-west-2\"] }], endpoint: u, [G]: h }, { conditions: [{ [H]: d, [I]: [q, \"eu-west-3\"] }], endpoint: u, [G]: h }, { conditions: [{ [H]: d, [I]: [q, \"sa-east-1\"] }], endpoint: u, [G]: h }, { conditions: [{ [H]: d, [I]: [q, g] }], endpoint: u, [G]: h }, { conditions: [{ [H]: d, [I]: [q, \"us-east-2\"] }], endpoint: u, [G]: h }, { conditions: [{ [H]: d, [I]: [q, \"us-west-1\"] }], endpoint: u, [G]: h }, { conditions: [{ [H]: d, [I]: [q, \"us-west-2\"] }], endpoint: u, [G]: h }, { endpoint: { url: i, properties: { authSchemes: [{ name: e, signingName: f, signingRegion: \"{Region}\" }] }, headers: v }, [G]: h }], [G]: j }, { conditions: C, rules: [{ conditions: D, error: \"Invalid Configuration: FIPS and custom endpoint are not supported\", [G]: k }, { conditions: E, error: \"Invalid Configuration: Dualstack and custom endpoint are not supported\", [G]: k }, { endpoint: { url: o, properties: v, headers: v }, [G]: h }], [G]: j }, { conditions: [p], rules: [{ conditions: [r], rules: [{ conditions: [x, y], rules: [{ conditions: [{ [H]: c, [I]: [b, z] }, B], rules: [{ endpoint: { url: \"https://sts-fips.{Region}.{PartitionResult#dualStackDnsSuffix}\", properties: v, headers: v }, [G]: h }], [G]: j }, { error: \"FIPS and DualStack are enabled, but this partition does not support one or both\", [G]: k }], [G]: j }, { conditions: D, rules: [{ conditions: [{ [H]: c, [I]: [z, b] }], rules: [{ conditions: [{ [H]: d, [I]: [{ [H]: l, [I]: [A, \"name\"] }, \"aws-us-gov\"] }], endpoint: { url: \"https://sts.{Region}.amazonaws.com\", properties: v, headers: v }, [G]: h }, { endpoint: { url: \"https://sts-fips.{Region}.{PartitionResult#dnsSuffix}\", properties: v, headers: v }, [G]: h }], [G]: j }, { error: \"FIPS is enabled but this partition does not support FIPS\", [G]: k }], [G]: j }, { conditions: E, rules: [{ conditions: [B], rules: [{ endpoint: { url: \"https://sts.{Region}.{PartitionResult#dualStackDnsSuffix}\", properties: v, headers: v }, [G]: h }], [G]: j }, { error: \"DualStack is enabled but this partition does not support DualStack\", [G]: k }], [G]: j }, w, { endpoint: { url: i, properties: v, headers: v }, [G]: h }], [G]: j }], [G]: j }, { error: \"Invalid Configuration: Missing Region\", [G]: k }] };\nexport const ruleSet = _data;\n",
|
|
390
|
+
"import { awsEndpointFunctions } from \"@aws-sdk/util-endpoints\";\nimport { customEndpointFunctions, resolveEndpoint } from \"@smithy/util-endpoints\";\nimport { ruleSet } from \"./ruleset\";\nexport const defaultEndpointResolver = (endpointParams, context = {}) => {\n return resolveEndpoint(ruleSet, {\n endpointParams: endpointParams,\n logger: context.logger,\n });\n};\ncustomEndpointFunctions.aws = awsEndpointFunctions;\n",
|
|
391
|
+
"import { AwsSdkSigV4Signer } from \"@aws-sdk/core\";\nimport { NoAuthSigner } from \"@smithy/core\";\nimport { NoOpLogger } from \"@smithy/smithy-client\";\nimport { parseUrl } from \"@smithy/url-parser\";\nimport { fromBase64, toBase64 } from \"@smithy/util-base64\";\nimport { fromUtf8, toUtf8 } from \"@smithy/util-utf8\";\nimport { defaultSTSHttpAuthSchemeProvider } from \"./auth/httpAuthSchemeProvider\";\nimport { defaultEndpointResolver } from \"./endpoint/endpointResolver\";\nexport const getRuntimeConfig = (config) => {\n return {\n apiVersion: \"2011-06-15\",\n base64Decoder: config?.base64Decoder ?? fromBase64,\n base64Encoder: config?.base64Encoder ?? toBase64,\n disableHostPrefix: config?.disableHostPrefix ?? false,\n endpointProvider: config?.endpointProvider ?? defaultEndpointResolver,\n extensions: config?.extensions ?? [],\n httpAuthSchemeProvider: config?.httpAuthSchemeProvider ?? defaultSTSHttpAuthSchemeProvider,\n httpAuthSchemes: config?.httpAuthSchemes ?? [\n {\n schemeId: \"aws.auth#sigv4\",\n identityProvider: (ipc) => ipc.getIdentityProvider(\"aws.auth#sigv4\"),\n signer: new AwsSdkSigV4Signer(),\n },\n {\n schemeId: \"smithy.api#noAuth\",\n identityProvider: (ipc) => ipc.getIdentityProvider(\"smithy.api#noAuth\") || (async () => ({})),\n signer: new NoAuthSigner(),\n },\n ],\n logger: config?.logger ?? new NoOpLogger(),\n serviceId: config?.serviceId ?? \"STS\",\n urlParser: config?.urlParser ?? parseUrl,\n utf8Decoder: config?.utf8Decoder ?? fromUtf8,\n utf8Encoder: config?.utf8Encoder ?? toUtf8,\n };\n};\n",
|
|
392
|
+
"import packageInfo from \"../package.json\";\nimport { AwsSdkSigV4Signer, emitWarningIfUnsupportedVersion as awsCheckVersion } from \"@aws-sdk/core\";\nimport { defaultProvider as credentialDefaultProvider } from \"@aws-sdk/credential-provider-node\";\nimport { defaultUserAgent } from \"@aws-sdk/util-user-agent-node\";\nimport { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS, NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, } from \"@smithy/config-resolver\";\nimport { NoAuthSigner } from \"@smithy/core\";\nimport { Hash } from \"@smithy/hash-node\";\nimport { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from \"@smithy/middleware-retry\";\nimport { loadConfig as loadNodeConfig } from \"@smithy/node-config-provider\";\nimport { NodeHttpHandler as RequestHandler, streamCollector } from \"@smithy/node-http-handler\";\nimport { calculateBodyLength } from \"@smithy/util-body-length-node\";\nimport { DEFAULT_RETRY_MODE } from \"@smithy/util-retry\";\nimport { getRuntimeConfig as getSharedRuntimeConfig } from \"./runtimeConfig.shared\";\nimport { loadConfigsForDefaultMode } from \"@smithy/smithy-client\";\nimport { resolveDefaultsModeConfig } from \"@smithy/util-defaults-mode-node\";\nimport { emitWarningIfUnsupportedVersion } from \"@smithy/smithy-client\";\nexport const getRuntimeConfig = (config) => {\n emitWarningIfUnsupportedVersion(process.version);\n const defaultsMode = resolveDefaultsModeConfig(config);\n const defaultConfigProvider = () => defaultsMode().then(loadConfigsForDefaultMode);\n const clientSharedValues = getSharedRuntimeConfig(config);\n awsCheckVersion(process.version);\n return {\n ...clientSharedValues,\n ...config,\n runtime: \"node\",\n defaultsMode,\n bodyLengthChecker: config?.bodyLengthChecker ?? calculateBodyLength,\n credentialDefaultProvider: config?.credentialDefaultProvider ?? credentialDefaultProvider,\n defaultUserAgentProvider: config?.defaultUserAgentProvider ??\n defaultUserAgent({ serviceId: clientSharedValues.serviceId, clientVersion: packageInfo.version }),\n httpAuthSchemes: config?.httpAuthSchemes ?? [\n {\n schemeId: \"aws.auth#sigv4\",\n identityProvider: (ipc) => ipc.getIdentityProvider(\"aws.auth#sigv4\") ||\n (async (idProps) => await credentialDefaultProvider(idProps?.__config || {})()),\n signer: new AwsSdkSigV4Signer(),\n },\n {\n schemeId: \"smithy.api#noAuth\",\n identityProvider: (ipc) => ipc.getIdentityProvider(\"smithy.api#noAuth\") || (async () => ({})),\n signer: new NoAuthSigner(),\n },\n ],\n maxAttempts: config?.maxAttempts ?? loadNodeConfig(NODE_MAX_ATTEMPT_CONFIG_OPTIONS),\n region: config?.region ?? loadNodeConfig(NODE_REGION_CONFIG_OPTIONS, NODE_REGION_CONFIG_FILE_OPTIONS),\n requestHandler: RequestHandler.create(config?.requestHandler ?? defaultConfigProvider),\n retryMode: config?.retryMode ??\n loadNodeConfig({\n ...NODE_RETRY_MODE_CONFIG_OPTIONS,\n default: async () => (await defaultConfigProvider()).retryMode || DEFAULT_RETRY_MODE,\n }),\n sha256: config?.sha256 ?? Hash.bind(null, \"sha256\"),\n streamCollector: config?.streamCollector ?? streamCollector,\n useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS),\n useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS),\n };\n};\n",
|
|
393
|
+
"export const getHttpAuthExtensionConfiguration = (runtimeConfig) => {\n const _httpAuthSchemes = runtimeConfig.httpAuthSchemes;\n let _httpAuthSchemeProvider = runtimeConfig.httpAuthSchemeProvider;\n let _credentials = runtimeConfig.credentials;\n return {\n setHttpAuthScheme(httpAuthScheme) {\n const index = _httpAuthSchemes.findIndex((scheme) => scheme.schemeId === httpAuthScheme.schemeId);\n if (index === -1) {\n _httpAuthSchemes.push(httpAuthScheme);\n }\n else {\n _httpAuthSchemes.splice(index, 1, httpAuthScheme);\n }\n },\n httpAuthSchemes() {\n return _httpAuthSchemes;\n },\n setHttpAuthSchemeProvider(httpAuthSchemeProvider) {\n _httpAuthSchemeProvider = httpAuthSchemeProvider;\n },\n httpAuthSchemeProvider() {\n return _httpAuthSchemeProvider;\n },\n setCredentials(credentials) {\n _credentials = credentials;\n },\n credentials() {\n return _credentials;\n },\n };\n};\nexport const resolveHttpAuthRuntimeConfig = (config) => {\n return {\n httpAuthSchemes: config.httpAuthSchemes(),\n httpAuthSchemeProvider: config.httpAuthSchemeProvider(),\n credentials: config.credentials(),\n };\n};\n",
|
|
394
|
+
"import { getAwsRegionExtensionConfiguration, resolveAwsRegionExtensionConfiguration, } from \"@aws-sdk/region-config-resolver\";\nimport { getHttpHandlerExtensionConfiguration, resolveHttpHandlerRuntimeConfig } from \"@smithy/protocol-http\";\nimport { getDefaultExtensionConfiguration, resolveDefaultRuntimeConfig } from \"@smithy/smithy-client\";\nimport { getHttpAuthExtensionConfiguration, resolveHttpAuthRuntimeConfig } from \"./auth/httpAuthExtensionConfiguration\";\nconst asPartial = (t) => t;\nexport const resolveRuntimeExtensions = (runtimeConfig, extensions) => {\n const extensionConfiguration = {\n ...asPartial(getAwsRegionExtensionConfiguration(runtimeConfig)),\n ...asPartial(getDefaultExtensionConfiguration(runtimeConfig)),\n ...asPartial(getHttpHandlerExtensionConfiguration(runtimeConfig)),\n ...asPartial(getHttpAuthExtensionConfiguration(runtimeConfig)),\n };\n extensions.forEach((extension) => extension.configure(extensionConfiguration));\n return {\n ...runtimeConfig,\n ...resolveAwsRegionExtensionConfiguration(extensionConfiguration),\n ...resolveDefaultRuntimeConfig(extensionConfiguration),\n ...resolveHttpHandlerRuntimeConfig(extensionConfiguration),\n ...resolveHttpAuthRuntimeConfig(extensionConfiguration),\n };\n};\n",
|
|
395
|
+
"import { getHostHeaderPlugin, resolveHostHeaderConfig, } from \"@aws-sdk/middleware-host-header\";\nimport { getLoggerPlugin } from \"@aws-sdk/middleware-logger\";\nimport { getRecursionDetectionPlugin } from \"@aws-sdk/middleware-recursion-detection\";\nimport { getUserAgentPlugin, resolveUserAgentConfig, } from \"@aws-sdk/middleware-user-agent\";\nimport { resolveRegionConfig } from \"@smithy/config-resolver\";\nimport { DefaultIdentityProviderConfig, getHttpAuthSchemeEndpointRuleSetPlugin, getHttpSigningPlugin, } from \"@smithy/core\";\nimport { getContentLengthPlugin } from \"@smithy/middleware-content-length\";\nimport { resolveEndpointConfig } from \"@smithy/middleware-endpoint\";\nimport { getRetryPlugin, resolveRetryConfig } from \"@smithy/middleware-retry\";\nimport { Client as __Client, } from \"@smithy/smithy-client\";\nimport { defaultSTSHttpAuthSchemeParametersProvider, resolveHttpAuthSchemeConfig, } from \"./auth/httpAuthSchemeProvider\";\nimport { resolveClientEndpointParameters, } from \"./endpoint/EndpointParameters\";\nimport { getRuntimeConfig as __getRuntimeConfig } from \"./runtimeConfig\";\nimport { resolveRuntimeExtensions } from \"./runtimeExtensions\";\nexport { __Client };\nexport class STSClient extends __Client {\n constructor(...[configuration]) {\n const _config_0 = __getRuntimeConfig(configuration || {});\n const _config_1 = resolveClientEndpointParameters(_config_0);\n const _config_2 = resolveUserAgentConfig(_config_1);\n const _config_3 = resolveRetryConfig(_config_2);\n const _config_4 = resolveRegionConfig(_config_3);\n const _config_5 = resolveHostHeaderConfig(_config_4);\n const _config_6 = resolveEndpointConfig(_config_5);\n const _config_7 = resolveHttpAuthSchemeConfig(_config_6);\n const _config_8 = resolveRuntimeExtensions(_config_7, configuration?.extensions || []);\n super(_config_8);\n this.config = _config_8;\n this.middlewareStack.use(getUserAgentPlugin(this.config));\n this.middlewareStack.use(getRetryPlugin(this.config));\n this.middlewareStack.use(getContentLengthPlugin(this.config));\n this.middlewareStack.use(getHostHeaderPlugin(this.config));\n this.middlewareStack.use(getLoggerPlugin(this.config));\n this.middlewareStack.use(getRecursionDetectionPlugin(this.config));\n this.middlewareStack.use(getHttpAuthSchemeEndpointRuleSetPlugin(this.config, {\n httpAuthSchemeParametersProvider: defaultSTSHttpAuthSchemeParametersProvider,\n identityProviderConfigProvider: async (config) => new DefaultIdentityProviderConfig({\n \"aws.auth#sigv4\": config.credentials,\n }),\n }));\n this.middlewareStack.use(getHttpSigningPlugin(this.config));\n }\n destroy() {\n super.destroy();\n }\n}\n",
|
|
396
|
+
"import { ServiceException as __ServiceException, } from \"@smithy/smithy-client\";\nexport { __ServiceException };\nexport class STSServiceException extends __ServiceException {\n constructor(options) {\n super(options);\n Object.setPrototypeOf(this, STSServiceException.prototype);\n }\n}\n",
|
|
397
|
+
"import { SENSITIVE_STRING } from \"@smithy/smithy-client\";\nimport { STSServiceException as __BaseException } from \"./STSServiceException\";\nexport class ExpiredTokenException extends __BaseException {\n constructor(opts) {\n super({\n name: \"ExpiredTokenException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"ExpiredTokenException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, ExpiredTokenException.prototype);\n }\n}\nexport class MalformedPolicyDocumentException extends __BaseException {\n constructor(opts) {\n super({\n name: \"MalformedPolicyDocumentException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"MalformedPolicyDocumentException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, MalformedPolicyDocumentException.prototype);\n }\n}\nexport class PackedPolicyTooLargeException extends __BaseException {\n constructor(opts) {\n super({\n name: \"PackedPolicyTooLargeException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"PackedPolicyTooLargeException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, PackedPolicyTooLargeException.prototype);\n }\n}\nexport class RegionDisabledException extends __BaseException {\n constructor(opts) {\n super({\n name: \"RegionDisabledException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"RegionDisabledException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, RegionDisabledException.prototype);\n }\n}\nexport class IDPRejectedClaimException extends __BaseException {\n constructor(opts) {\n super({\n name: \"IDPRejectedClaimException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"IDPRejectedClaimException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, IDPRejectedClaimException.prototype);\n }\n}\nexport class InvalidIdentityTokenException extends __BaseException {\n constructor(opts) {\n super({\n name: \"InvalidIdentityTokenException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"InvalidIdentityTokenException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, InvalidIdentityTokenException.prototype);\n }\n}\nexport class IDPCommunicationErrorException extends __BaseException {\n constructor(opts) {\n super({\n name: \"IDPCommunicationErrorException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"IDPCommunicationErrorException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, IDPCommunicationErrorException.prototype);\n }\n}\nexport class InvalidAuthorizationMessageException extends __BaseException {\n constructor(opts) {\n super({\n name: \"InvalidAuthorizationMessageException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"InvalidAuthorizationMessageException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, InvalidAuthorizationMessageException.prototype);\n }\n}\nexport const CredentialsFilterSensitiveLog = (obj) => ({\n ...obj,\n ...(obj.SecretAccessKey && { SecretAccessKey: SENSITIVE_STRING }),\n});\nexport const AssumeRoleResponseFilterSensitiveLog = (obj) => ({\n ...obj,\n ...(obj.Credentials && { Credentials: CredentialsFilterSensitiveLog(obj.Credentials) }),\n});\nexport const AssumeRoleWithSAMLRequestFilterSensitiveLog = (obj) => ({\n ...obj,\n ...(obj.SAMLAssertion && { SAMLAssertion: SENSITIVE_STRING }),\n});\nexport const AssumeRoleWithSAMLResponseFilterSensitiveLog = (obj) => ({\n ...obj,\n ...(obj.Credentials && { Credentials: CredentialsFilterSensitiveLog(obj.Credentials) }),\n});\nexport const AssumeRoleWithWebIdentityRequestFilterSensitiveLog = (obj) => ({\n ...obj,\n ...(obj.WebIdentityToken && { WebIdentityToken: SENSITIVE_STRING }),\n});\nexport const AssumeRoleWithWebIdentityResponseFilterSensitiveLog = (obj) => ({\n ...obj,\n ...(obj.Credentials && { Credentials: CredentialsFilterSensitiveLog(obj.Credentials) }),\n});\nexport const GetFederationTokenResponseFilterSensitiveLog = (obj) => ({\n ...obj,\n ...(obj.Credentials && { Credentials: CredentialsFilterSensitiveLog(obj.Credentials) }),\n});\nexport const GetSessionTokenResponseFilterSensitiveLog = (obj) => ({\n ...obj,\n ...(obj.Credentials && { Credentials: CredentialsFilterSensitiveLog(obj.Credentials) }),\n});\n",
|
|
398
|
+
"import { parseXmlBody as parseBody, parseXmlErrorBody as parseErrorBody } from \"@aws-sdk/core\";\nimport { HttpRequest as __HttpRequest } from \"@smithy/protocol-http\";\nimport { collectBody, decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectString as __expectString, extendedEncodeURIComponent as __extendedEncodeURIComponent, parseRfc3339DateTimeWithOffset as __parseRfc3339DateTimeWithOffset, strictParseInt32 as __strictParseInt32, withBaseException, } from \"@smithy/smithy-client\";\nimport { ExpiredTokenException, IDPCommunicationErrorException, IDPRejectedClaimException, InvalidAuthorizationMessageException, InvalidIdentityTokenException, MalformedPolicyDocumentException, PackedPolicyTooLargeException, RegionDisabledException, } from \"../models/models_0\";\nimport { STSServiceException as __BaseException } from \"../models/STSServiceException\";\nexport const se_AssumeRoleCommand = async (input, context) => {\n const headers = SHARED_HEADERS;\n let body;\n body = buildFormUrlencodedString({\n ...se_AssumeRoleRequest(input, context),\n [_A]: _AR,\n [_V]: _,\n });\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_AssumeRoleWithSAMLCommand = async (input, context) => {\n const headers = SHARED_HEADERS;\n let body;\n body = buildFormUrlencodedString({\n ...se_AssumeRoleWithSAMLRequest(input, context),\n [_A]: _ARWSAML,\n [_V]: _,\n });\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_AssumeRoleWithWebIdentityCommand = async (input, context) => {\n const headers = SHARED_HEADERS;\n let body;\n body = buildFormUrlencodedString({\n ...se_AssumeRoleWithWebIdentityRequest(input, context),\n [_A]: _ARWWI,\n [_V]: _,\n });\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_DecodeAuthorizationMessageCommand = async (input, context) => {\n const headers = SHARED_HEADERS;\n let body;\n body = buildFormUrlencodedString({\n ...se_DecodeAuthorizationMessageRequest(input, context),\n [_A]: _DAM,\n [_V]: _,\n });\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_GetAccessKeyInfoCommand = async (input, context) => {\n const headers = SHARED_HEADERS;\n let body;\n body = buildFormUrlencodedString({\n ...se_GetAccessKeyInfoRequest(input, context),\n [_A]: _GAKI,\n [_V]: _,\n });\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_GetCallerIdentityCommand = async (input, context) => {\n const headers = SHARED_HEADERS;\n let body;\n body = buildFormUrlencodedString({\n ...se_GetCallerIdentityRequest(input, context),\n [_A]: _GCI,\n [_V]: _,\n });\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_GetFederationTokenCommand = async (input, context) => {\n const headers = SHARED_HEADERS;\n let body;\n body = buildFormUrlencodedString({\n ...se_GetFederationTokenRequest(input, context),\n [_A]: _GFT,\n [_V]: _,\n });\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_GetSessionTokenCommand = async (input, context) => {\n const headers = SHARED_HEADERS;\n let body;\n body = buildFormUrlencodedString({\n ...se_GetSessionTokenRequest(input, context),\n [_A]: _GST,\n [_V]: _,\n });\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const de_AssumeRoleCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_AssumeRoleResponse(data.AssumeRoleResult, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_AssumeRoleWithSAMLCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_AssumeRoleWithSAMLResponse(data.AssumeRoleWithSAMLResult, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_AssumeRoleWithWebIdentityCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_AssumeRoleWithWebIdentityResponse(data.AssumeRoleWithWebIdentityResult, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_DecodeAuthorizationMessageCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_DecodeAuthorizationMessageResponse(data.DecodeAuthorizationMessageResult, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_GetAccessKeyInfoCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_GetAccessKeyInfoResponse(data.GetAccessKeyInfoResult, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_GetCallerIdentityCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_GetCallerIdentityResponse(data.GetCallerIdentityResult, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_GetFederationTokenCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_GetFederationTokenResponse(data.GetFederationTokenResult, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_GetSessionTokenCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_GetSessionTokenResponse(data.GetSessionTokenResult, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nconst de_CommandError = async (output, context) => {\n const parsedOutput = {\n ...output,\n body: await parseErrorBody(output.body, context),\n };\n const errorCode = loadQueryErrorCode(output, parsedOutput.body);\n switch (errorCode) {\n case \"ExpiredTokenException\":\n case \"com.amazonaws.sts#ExpiredTokenException\":\n throw await de_ExpiredTokenExceptionRes(parsedOutput, context);\n case \"MalformedPolicyDocument\":\n case \"com.amazonaws.sts#MalformedPolicyDocumentException\":\n throw await de_MalformedPolicyDocumentExceptionRes(parsedOutput, context);\n case \"PackedPolicyTooLarge\":\n case \"com.amazonaws.sts#PackedPolicyTooLargeException\":\n throw await de_PackedPolicyTooLargeExceptionRes(parsedOutput, context);\n case \"RegionDisabledException\":\n case \"com.amazonaws.sts#RegionDisabledException\":\n throw await de_RegionDisabledExceptionRes(parsedOutput, context);\n case \"IDPRejectedClaim\":\n case \"com.amazonaws.sts#IDPRejectedClaimException\":\n throw await de_IDPRejectedClaimExceptionRes(parsedOutput, context);\n case \"InvalidIdentityToken\":\n case \"com.amazonaws.sts#InvalidIdentityTokenException\":\n throw await de_InvalidIdentityTokenExceptionRes(parsedOutput, context);\n case \"IDPCommunicationError\":\n case \"com.amazonaws.sts#IDPCommunicationErrorException\":\n throw await de_IDPCommunicationErrorExceptionRes(parsedOutput, context);\n case \"InvalidAuthorizationMessageException\":\n case \"com.amazonaws.sts#InvalidAuthorizationMessageException\":\n throw await de_InvalidAuthorizationMessageExceptionRes(parsedOutput, context);\n default:\n const parsedBody = parsedOutput.body;\n return throwDefaultError({\n output,\n parsedBody: parsedBody.Error,\n errorCode,\n });\n }\n};\nconst de_ExpiredTokenExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = de_ExpiredTokenException(body.Error, context);\n const exception = new ExpiredTokenException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_IDPCommunicationErrorExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = de_IDPCommunicationErrorException(body.Error, context);\n const exception = new IDPCommunicationErrorException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_IDPRejectedClaimExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = de_IDPRejectedClaimException(body.Error, context);\n const exception = new IDPRejectedClaimException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_InvalidAuthorizationMessageExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = de_InvalidAuthorizationMessageException(body.Error, context);\n const exception = new InvalidAuthorizationMessageException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_InvalidIdentityTokenExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = de_InvalidIdentityTokenException(body.Error, context);\n const exception = new InvalidIdentityTokenException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_MalformedPolicyDocumentExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = de_MalformedPolicyDocumentException(body.Error, context);\n const exception = new MalformedPolicyDocumentException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_PackedPolicyTooLargeExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = de_PackedPolicyTooLargeException(body.Error, context);\n const exception = new PackedPolicyTooLargeException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_RegionDisabledExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = de_RegionDisabledException(body.Error, context);\n const exception = new RegionDisabledException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst se_AssumeRoleRequest = (input, context) => {\n const entries = {};\n if (input[_RA] != null) {\n entries[_RA] = input[_RA];\n }\n if (input[_RSN] != null) {\n entries[_RSN] = input[_RSN];\n }\n if (input[_PA] != null) {\n const memberEntries = se_policyDescriptorListType(input[_PA], context);\n if (input[_PA]?.length === 0) {\n entries.PolicyArns = [];\n }\n Object.entries(memberEntries).forEach(([key, value]) => {\n const loc = `PolicyArns.${key}`;\n entries[loc] = value;\n });\n }\n if (input[_P] != null) {\n entries[_P] = input[_P];\n }\n if (input[_DS] != null) {\n entries[_DS] = input[_DS];\n }\n if (input[_T] != null) {\n const memberEntries = se_tagListType(input[_T], context);\n if (input[_T]?.length === 0) {\n entries.Tags = [];\n }\n Object.entries(memberEntries).forEach(([key, value]) => {\n const loc = `Tags.${key}`;\n entries[loc] = value;\n });\n }\n if (input[_TTK] != null) {\n const memberEntries = se_tagKeyListType(input[_TTK], context);\n if (input[_TTK]?.length === 0) {\n entries.TransitiveTagKeys = [];\n }\n Object.entries(memberEntries).forEach(([key, value]) => {\n const loc = `TransitiveTagKeys.${key}`;\n entries[loc] = value;\n });\n }\n if (input[_EI] != null) {\n entries[_EI] = input[_EI];\n }\n if (input[_SN] != null) {\n entries[_SN] = input[_SN];\n }\n if (input[_TC] != null) {\n entries[_TC] = input[_TC];\n }\n if (input[_SI] != null) {\n entries[_SI] = input[_SI];\n }\n if (input[_PC] != null) {\n const memberEntries = se_ProvidedContextsListType(input[_PC], context);\n if (input[_PC]?.length === 0) {\n entries.ProvidedContexts = [];\n }\n Object.entries(memberEntries).forEach(([key, value]) => {\n const loc = `ProvidedContexts.${key}`;\n entries[loc] = value;\n });\n }\n return entries;\n};\nconst se_AssumeRoleWithSAMLRequest = (input, context) => {\n const entries = {};\n if (input[_RA] != null) {\n entries[_RA] = input[_RA];\n }\n if (input[_PAr] != null) {\n entries[_PAr] = input[_PAr];\n }\n if (input[_SAMLA] != null) {\n entries[_SAMLA] = input[_SAMLA];\n }\n if (input[_PA] != null) {\n const memberEntries = se_policyDescriptorListType(input[_PA], context);\n if (input[_PA]?.length === 0) {\n entries.PolicyArns = [];\n }\n Object.entries(memberEntries).forEach(([key, value]) => {\n const loc = `PolicyArns.${key}`;\n entries[loc] = value;\n });\n }\n if (input[_P] != null) {\n entries[_P] = input[_P];\n }\n if (input[_DS] != null) {\n entries[_DS] = input[_DS];\n }\n return entries;\n};\nconst se_AssumeRoleWithWebIdentityRequest = (input, context) => {\n const entries = {};\n if (input[_RA] != null) {\n entries[_RA] = input[_RA];\n }\n if (input[_RSN] != null) {\n entries[_RSN] = input[_RSN];\n }\n if (input[_WIT] != null) {\n entries[_WIT] = input[_WIT];\n }\n if (input[_PI] != null) {\n entries[_PI] = input[_PI];\n }\n if (input[_PA] != null) {\n const memberEntries = se_policyDescriptorListType(input[_PA], context);\n if (input[_PA]?.length === 0) {\n entries.PolicyArns = [];\n }\n Object.entries(memberEntries).forEach(([key, value]) => {\n const loc = `PolicyArns.${key}`;\n entries[loc] = value;\n });\n }\n if (input[_P] != null) {\n entries[_P] = input[_P];\n }\n if (input[_DS] != null) {\n entries[_DS] = input[_DS];\n }\n return entries;\n};\nconst se_DecodeAuthorizationMessageRequest = (input, context) => {\n const entries = {};\n if (input[_EM] != null) {\n entries[_EM] = input[_EM];\n }\n return entries;\n};\nconst se_GetAccessKeyInfoRequest = (input, context) => {\n const entries = {};\n if (input[_AKI] != null) {\n entries[_AKI] = input[_AKI];\n }\n return entries;\n};\nconst se_GetCallerIdentityRequest = (input, context) => {\n const entries = {};\n return entries;\n};\nconst se_GetFederationTokenRequest = (input, context) => {\n const entries = {};\n if (input[_N] != null) {\n entries[_N] = input[_N];\n }\n if (input[_P] != null) {\n entries[_P] = input[_P];\n }\n if (input[_PA] != null) {\n const memberEntries = se_policyDescriptorListType(input[_PA], context);\n if (input[_PA]?.length === 0) {\n entries.PolicyArns = [];\n }\n Object.entries(memberEntries).forEach(([key, value]) => {\n const loc = `PolicyArns.${key}`;\n entries[loc] = value;\n });\n }\n if (input[_DS] != null) {\n entries[_DS] = input[_DS];\n }\n if (input[_T] != null) {\n const memberEntries = se_tagListType(input[_T], context);\n if (input[_T]?.length === 0) {\n entries.Tags = [];\n }\n Object.entries(memberEntries).forEach(([key, value]) => {\n const loc = `Tags.${key}`;\n entries[loc] = value;\n });\n }\n return entries;\n};\nconst se_GetSessionTokenRequest = (input, context) => {\n const entries = {};\n if (input[_DS] != null) {\n entries[_DS] = input[_DS];\n }\n if (input[_SN] != null) {\n entries[_SN] = input[_SN];\n }\n if (input[_TC] != null) {\n entries[_TC] = input[_TC];\n }\n return entries;\n};\nconst se_policyDescriptorListType = (input, context) => {\n const entries = {};\n let counter = 1;\n for (const entry of input) {\n if (entry === null) {\n continue;\n }\n const memberEntries = se_PolicyDescriptorType(entry, context);\n Object.entries(memberEntries).forEach(([key, value]) => {\n entries[`member.${counter}.${key}`] = value;\n });\n counter++;\n }\n return entries;\n};\nconst se_PolicyDescriptorType = (input, context) => {\n const entries = {};\n if (input[_a] != null) {\n entries[_a] = input[_a];\n }\n return entries;\n};\nconst se_ProvidedContext = (input, context) => {\n const entries = {};\n if (input[_PAro] != null) {\n entries[_PAro] = input[_PAro];\n }\n if (input[_CA] != null) {\n entries[_CA] = input[_CA];\n }\n return entries;\n};\nconst se_ProvidedContextsListType = (input, context) => {\n const entries = {};\n let counter = 1;\n for (const entry of input) {\n if (entry === null) {\n continue;\n }\n const memberEntries = se_ProvidedContext(entry, context);\n Object.entries(memberEntries).forEach(([key, value]) => {\n entries[`member.${counter}.${key}`] = value;\n });\n counter++;\n }\n return entries;\n};\nconst se_Tag = (input, context) => {\n const entries = {};\n if (input[_K] != null) {\n entries[_K] = input[_K];\n }\n if (input[_Va] != null) {\n entries[_Va] = input[_Va];\n }\n return entries;\n};\nconst se_tagKeyListType = (input, context) => {\n const entries = {};\n let counter = 1;\n for (const entry of input) {\n if (entry === null) {\n continue;\n }\n entries[`member.${counter}`] = entry;\n counter++;\n }\n return entries;\n};\nconst se_tagListType = (input, context) => {\n const entries = {};\n let counter = 1;\n for (const entry of input) {\n if (entry === null) {\n continue;\n }\n const memberEntries = se_Tag(entry, context);\n Object.entries(memberEntries).forEach(([key, value]) => {\n entries[`member.${counter}.${key}`] = value;\n });\n counter++;\n }\n return entries;\n};\nconst de_AssumedRoleUser = (output, context) => {\n const contents = {};\n if (output[_ARI] != null) {\n contents[_ARI] = __expectString(output[_ARI]);\n }\n if (output[_Ar] != null) {\n contents[_Ar] = __expectString(output[_Ar]);\n }\n return contents;\n};\nconst de_AssumeRoleResponse = (output, context) => {\n const contents = {};\n if (output[_C] != null) {\n contents[_C] = de_Credentials(output[_C], context);\n }\n if (output[_ARU] != null) {\n contents[_ARU] = de_AssumedRoleUser(output[_ARU], context);\n }\n if (output[_PPS] != null) {\n contents[_PPS] = __strictParseInt32(output[_PPS]);\n }\n if (output[_SI] != null) {\n contents[_SI] = __expectString(output[_SI]);\n }\n return contents;\n};\nconst de_AssumeRoleWithSAMLResponse = (output, context) => {\n const contents = {};\n if (output[_C] != null) {\n contents[_C] = de_Credentials(output[_C], context);\n }\n if (output[_ARU] != null) {\n contents[_ARU] = de_AssumedRoleUser(output[_ARU], context);\n }\n if (output[_PPS] != null) {\n contents[_PPS] = __strictParseInt32(output[_PPS]);\n }\n if (output[_S] != null) {\n contents[_S] = __expectString(output[_S]);\n }\n if (output[_ST] != null) {\n contents[_ST] = __expectString(output[_ST]);\n }\n if (output[_I] != null) {\n contents[_I] = __expectString(output[_I]);\n }\n if (output[_Au] != null) {\n contents[_Au] = __expectString(output[_Au]);\n }\n if (output[_NQ] != null) {\n contents[_NQ] = __expectString(output[_NQ]);\n }\n if (output[_SI] != null) {\n contents[_SI] = __expectString(output[_SI]);\n }\n return contents;\n};\nconst de_AssumeRoleWithWebIdentityResponse = (output, context) => {\n const contents = {};\n if (output[_C] != null) {\n contents[_C] = de_Credentials(output[_C], context);\n }\n if (output[_SFWIT] != null) {\n contents[_SFWIT] = __expectString(output[_SFWIT]);\n }\n if (output[_ARU] != null) {\n contents[_ARU] = de_AssumedRoleUser(output[_ARU], context);\n }\n if (output[_PPS] != null) {\n contents[_PPS] = __strictParseInt32(output[_PPS]);\n }\n if (output[_Pr] != null) {\n contents[_Pr] = __expectString(output[_Pr]);\n }\n if (output[_Au] != null) {\n contents[_Au] = __expectString(output[_Au]);\n }\n if (output[_SI] != null) {\n contents[_SI] = __expectString(output[_SI]);\n }\n return contents;\n};\nconst de_Credentials = (output, context) => {\n const contents = {};\n if (output[_AKI] != null) {\n contents[_AKI] = __expectString(output[_AKI]);\n }\n if (output[_SAK] != null) {\n contents[_SAK] = __expectString(output[_SAK]);\n }\n if (output[_STe] != null) {\n contents[_STe] = __expectString(output[_STe]);\n }\n if (output[_E] != null) {\n contents[_E] = __expectNonNull(__parseRfc3339DateTimeWithOffset(output[_E]));\n }\n return contents;\n};\nconst de_DecodeAuthorizationMessageResponse = (output, context) => {\n const contents = {};\n if (output[_DM] != null) {\n contents[_DM] = __expectString(output[_DM]);\n }\n return contents;\n};\nconst de_ExpiredTokenException = (output, context) => {\n const contents = {};\n if (output[_m] != null) {\n contents[_m] = __expectString(output[_m]);\n }\n return contents;\n};\nconst de_FederatedUser = (output, context) => {\n const contents = {};\n if (output[_FUI] != null) {\n contents[_FUI] = __expectString(output[_FUI]);\n }\n if (output[_Ar] != null) {\n contents[_Ar] = __expectString(output[_Ar]);\n }\n return contents;\n};\nconst de_GetAccessKeyInfoResponse = (output, context) => {\n const contents = {};\n if (output[_Ac] != null) {\n contents[_Ac] = __expectString(output[_Ac]);\n }\n return contents;\n};\nconst de_GetCallerIdentityResponse = (output, context) => {\n const contents = {};\n if (output[_UI] != null) {\n contents[_UI] = __expectString(output[_UI]);\n }\n if (output[_Ac] != null) {\n contents[_Ac] = __expectString(output[_Ac]);\n }\n if (output[_Ar] != null) {\n contents[_Ar] = __expectString(output[_Ar]);\n }\n return contents;\n};\nconst de_GetFederationTokenResponse = (output, context) => {\n const contents = {};\n if (output[_C] != null) {\n contents[_C] = de_Credentials(output[_C], context);\n }\n if (output[_FU] != null) {\n contents[_FU] = de_FederatedUser(output[_FU], context);\n }\n if (output[_PPS] != null) {\n contents[_PPS] = __strictParseInt32(output[_PPS]);\n }\n return contents;\n};\nconst de_GetSessionTokenResponse = (output, context) => {\n const contents = {};\n if (output[_C] != null) {\n contents[_C] = de_Credentials(output[_C], context);\n }\n return contents;\n};\nconst de_IDPCommunicationErrorException = (output, context) => {\n const contents = {};\n if (output[_m] != null) {\n contents[_m] = __expectString(output[_m]);\n }\n return contents;\n};\nconst de_IDPRejectedClaimException = (output, context) => {\n const contents = {};\n if (output[_m] != null) {\n contents[_m] = __expectString(output[_m]);\n }\n return contents;\n};\nconst de_InvalidAuthorizationMessageException = (output, context) => {\n const contents = {};\n if (output[_m] != null) {\n contents[_m] = __expectString(output[_m]);\n }\n return contents;\n};\nconst de_InvalidIdentityTokenException = (output, context) => {\n const contents = {};\n if (output[_m] != null) {\n contents[_m] = __expectString(output[_m]);\n }\n return contents;\n};\nconst de_MalformedPolicyDocumentException = (output, context) => {\n const contents = {};\n if (output[_m] != null) {\n contents[_m] = __expectString(output[_m]);\n }\n return contents;\n};\nconst de_PackedPolicyTooLargeException = (output, context) => {\n const contents = {};\n if (output[_m] != null) {\n contents[_m] = __expectString(output[_m]);\n }\n return contents;\n};\nconst de_RegionDisabledException = (output, context) => {\n const contents = {};\n if (output[_m] != null) {\n contents[_m] = __expectString(output[_m]);\n }\n return contents;\n};\nconst deserializeMetadata = (output) => ({\n httpStatusCode: output.statusCode,\n requestId: output.headers[\"x-amzn-requestid\"] ?? output.headers[\"x-amzn-request-id\"] ?? output.headers[\"x-amz-request-id\"],\n extendedRequestId: output.headers[\"x-amz-id-2\"],\n cfId: output.headers[\"x-amz-cf-id\"],\n});\nconst collectBodyString = (streamBody, context) => collectBody(streamBody, context).then((body) => context.utf8Encoder(body));\nconst throwDefaultError = withBaseException(__BaseException);\nconst buildHttpRpcRequest = async (context, headers, path, resolvedHostname, body) => {\n const { hostname, protocol = \"https\", port, path: basePath } = await context.endpoint();\n const contents = {\n protocol,\n hostname,\n port,\n method: \"POST\",\n path: basePath.endsWith(\"/\") ? basePath.slice(0, -1) + path : basePath + path,\n headers,\n };\n if (resolvedHostname !== undefined) {\n contents.hostname = resolvedHostname;\n }\n if (body !== undefined) {\n contents.body = body;\n }\n return new __HttpRequest(contents);\n};\nconst SHARED_HEADERS = {\n \"content-type\": \"application/x-www-form-urlencoded\",\n};\nconst _ = \"2011-06-15\";\nconst _A = \"Action\";\nconst _AKI = \"AccessKeyId\";\nconst _AR = \"AssumeRole\";\nconst _ARI = \"AssumedRoleId\";\nconst _ARU = \"AssumedRoleUser\";\nconst _ARWSAML = \"AssumeRoleWithSAML\";\nconst _ARWWI = \"AssumeRoleWithWebIdentity\";\nconst _Ac = \"Account\";\nconst _Ar = \"Arn\";\nconst _Au = \"Audience\";\nconst _C = \"Credentials\";\nconst _CA = \"ContextAssertion\";\nconst _DAM = \"DecodeAuthorizationMessage\";\nconst _DM = \"DecodedMessage\";\nconst _DS = \"DurationSeconds\";\nconst _E = \"Expiration\";\nconst _EI = \"ExternalId\";\nconst _EM = \"EncodedMessage\";\nconst _FU = \"FederatedUser\";\nconst _FUI = \"FederatedUserId\";\nconst _GAKI = \"GetAccessKeyInfo\";\nconst _GCI = \"GetCallerIdentity\";\nconst _GFT = \"GetFederationToken\";\nconst _GST = \"GetSessionToken\";\nconst _I = \"Issuer\";\nconst _K = \"Key\";\nconst _N = \"Name\";\nconst _NQ = \"NameQualifier\";\nconst _P = \"Policy\";\nconst _PA = \"PolicyArns\";\nconst _PAr = \"PrincipalArn\";\nconst _PAro = \"ProviderArn\";\nconst _PC = \"ProvidedContexts\";\nconst _PI = \"ProviderId\";\nconst _PPS = \"PackedPolicySize\";\nconst _Pr = \"Provider\";\nconst _RA = \"RoleArn\";\nconst _RSN = \"RoleSessionName\";\nconst _S = \"Subject\";\nconst _SAK = \"SecretAccessKey\";\nconst _SAMLA = \"SAMLAssertion\";\nconst _SFWIT = \"SubjectFromWebIdentityToken\";\nconst _SI = \"SourceIdentity\";\nconst _SN = \"SerialNumber\";\nconst _ST = \"SubjectType\";\nconst _STe = \"SessionToken\";\nconst _T = \"Tags\";\nconst _TC = \"TokenCode\";\nconst _TTK = \"TransitiveTagKeys\";\nconst _UI = \"UserId\";\nconst _V = \"Version\";\nconst _Va = \"Value\";\nconst _WIT = \"WebIdentityToken\";\nconst _a = \"arn\";\nconst _m = \"message\";\nconst buildFormUrlencodedString = (formEntries) => Object.entries(formEntries)\n .map(([key, value]) => __extendedEncodeURIComponent(key) + \"=\" + __extendedEncodeURIComponent(value))\n .join(\"&\");\nconst loadQueryErrorCode = (output, data) => {\n if (data.Error?.Code !== undefined) {\n return data.Error.Code;\n }\n if (output.statusCode == 404) {\n return \"NotFound\";\n }\n};\n",
|
|
399
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { AssumeRoleResponseFilterSensitiveLog } from \"../models/models_0\";\nimport { de_AssumeRoleCommand, se_AssumeRoleCommand } from \"../protocols/Aws_query\";\nexport { $Command };\nexport class AssumeRoleCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"AWSSecurityTokenServiceV20110615\", \"AssumeRole\", {})\n .n(\"STSClient\", \"AssumeRoleCommand\")\n .f(void 0, AssumeRoleResponseFilterSensitiveLog)\n .ser(se_AssumeRoleCommand)\n .de(de_AssumeRoleCommand)\n .build() {\n}\n",
|
|
400
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { AssumeRoleWithSAMLRequestFilterSensitiveLog, AssumeRoleWithSAMLResponseFilterSensitiveLog, } from \"../models/models_0\";\nimport { de_AssumeRoleWithSAMLCommand, se_AssumeRoleWithSAMLCommand } from \"../protocols/Aws_query\";\nexport { $Command };\nexport class AssumeRoleWithSAMLCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"AWSSecurityTokenServiceV20110615\", \"AssumeRoleWithSAML\", {})\n .n(\"STSClient\", \"AssumeRoleWithSAMLCommand\")\n .f(AssumeRoleWithSAMLRequestFilterSensitiveLog, AssumeRoleWithSAMLResponseFilterSensitiveLog)\n .ser(se_AssumeRoleWithSAMLCommand)\n .de(de_AssumeRoleWithSAMLCommand)\n .build() {\n}\n",
|
|
401
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { AssumeRoleWithWebIdentityRequestFilterSensitiveLog, AssumeRoleWithWebIdentityResponseFilterSensitiveLog, } from \"../models/models_0\";\nimport { de_AssumeRoleWithWebIdentityCommand, se_AssumeRoleWithWebIdentityCommand } from \"../protocols/Aws_query\";\nexport { $Command };\nexport class AssumeRoleWithWebIdentityCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"AWSSecurityTokenServiceV20110615\", \"AssumeRoleWithWebIdentity\", {})\n .n(\"STSClient\", \"AssumeRoleWithWebIdentityCommand\")\n .f(AssumeRoleWithWebIdentityRequestFilterSensitiveLog, AssumeRoleWithWebIdentityResponseFilterSensitiveLog)\n .ser(se_AssumeRoleWithWebIdentityCommand)\n .de(de_AssumeRoleWithWebIdentityCommand)\n .build() {\n}\n",
|
|
402
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_DecodeAuthorizationMessageCommand, se_DecodeAuthorizationMessageCommand } from \"../protocols/Aws_query\";\nexport { $Command };\nexport class DecodeAuthorizationMessageCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"AWSSecurityTokenServiceV20110615\", \"DecodeAuthorizationMessage\", {})\n .n(\"STSClient\", \"DecodeAuthorizationMessageCommand\")\n .f(void 0, void 0)\n .ser(se_DecodeAuthorizationMessageCommand)\n .de(de_DecodeAuthorizationMessageCommand)\n .build() {\n}\n",
|
|
403
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_GetAccessKeyInfoCommand, se_GetAccessKeyInfoCommand } from \"../protocols/Aws_query\";\nexport { $Command };\nexport class GetAccessKeyInfoCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"AWSSecurityTokenServiceV20110615\", \"GetAccessKeyInfo\", {})\n .n(\"STSClient\", \"GetAccessKeyInfoCommand\")\n .f(void 0, void 0)\n .ser(se_GetAccessKeyInfoCommand)\n .de(de_GetAccessKeyInfoCommand)\n .build() {\n}\n",
|
|
404
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_GetCallerIdentityCommand, se_GetCallerIdentityCommand } from \"../protocols/Aws_query\";\nexport { $Command };\nexport class GetCallerIdentityCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"AWSSecurityTokenServiceV20110615\", \"GetCallerIdentity\", {})\n .n(\"STSClient\", \"GetCallerIdentityCommand\")\n .f(void 0, void 0)\n .ser(se_GetCallerIdentityCommand)\n .de(de_GetCallerIdentityCommand)\n .build() {\n}\n",
|
|
405
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { GetFederationTokenResponseFilterSensitiveLog, } from \"../models/models_0\";\nimport { de_GetFederationTokenCommand, se_GetFederationTokenCommand } from \"../protocols/Aws_query\";\nexport { $Command };\nexport class GetFederationTokenCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"AWSSecurityTokenServiceV20110615\", \"GetFederationToken\", {})\n .n(\"STSClient\", \"GetFederationTokenCommand\")\n .f(void 0, GetFederationTokenResponseFilterSensitiveLog)\n .ser(se_GetFederationTokenCommand)\n .de(de_GetFederationTokenCommand)\n .build() {\n}\n",
|
|
406
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { GetSessionTokenResponseFilterSensitiveLog, } from \"../models/models_0\";\nimport { de_GetSessionTokenCommand, se_GetSessionTokenCommand } from \"../protocols/Aws_query\";\nexport { $Command };\nexport class GetSessionTokenCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"AWSSecurityTokenServiceV20110615\", \"GetSessionToken\", {})\n .n(\"STSClient\", \"GetSessionTokenCommand\")\n .f(void 0, GetSessionTokenResponseFilterSensitiveLog)\n .ser(se_GetSessionTokenCommand)\n .de(de_GetSessionTokenCommand)\n .build() {\n}\n",
|
|
407
|
+
"import { createAggregatedClient } from \"@smithy/smithy-client\";\nimport { AssumeRoleCommand } from \"./commands/AssumeRoleCommand\";\nimport { AssumeRoleWithSAMLCommand, } from \"./commands/AssumeRoleWithSAMLCommand\";\nimport { AssumeRoleWithWebIdentityCommand, } from \"./commands/AssumeRoleWithWebIdentityCommand\";\nimport { DecodeAuthorizationMessageCommand, } from \"./commands/DecodeAuthorizationMessageCommand\";\nimport { GetAccessKeyInfoCommand, } from \"./commands/GetAccessKeyInfoCommand\";\nimport { GetCallerIdentityCommand, } from \"./commands/GetCallerIdentityCommand\";\nimport { GetFederationTokenCommand, } from \"./commands/GetFederationTokenCommand\";\nimport { GetSessionTokenCommand, } from \"./commands/GetSessionTokenCommand\";\nimport { STSClient } from \"./STSClient\";\nconst commands = {\n AssumeRoleCommand,\n AssumeRoleWithSAMLCommand,\n AssumeRoleWithWebIdentityCommand,\n DecodeAuthorizationMessageCommand,\n GetAccessKeyInfoCommand,\n GetCallerIdentityCommand,\n GetFederationTokenCommand,\n GetSessionTokenCommand,\n};\nexport class STS extends STSClient {\n}\ncreateAggregatedClient(commands, STS);\n",
|
|
408
|
+
"export * from \"./AssumeRoleCommand\";\nexport * from \"./AssumeRoleWithSAMLCommand\";\nexport * from \"./AssumeRoleWithWebIdentityCommand\";\nexport * from \"./DecodeAuthorizationMessageCommand\";\nexport * from \"./GetAccessKeyInfoCommand\";\nexport * from \"./GetCallerIdentityCommand\";\nexport * from \"./GetFederationTokenCommand\";\nexport * from \"./GetSessionTokenCommand\";\n",
|
|
409
|
+
"export * from \"./models_0\";\n",
|
|
410
|
+
"import { AssumeRoleCommand } from \"./commands/AssumeRoleCommand\";\nimport { AssumeRoleWithWebIdentityCommand, } from \"./commands/AssumeRoleWithWebIdentityCommand\";\nconst ASSUME_ROLE_DEFAULT_REGION = \"us-east-1\";\nconst getAccountIdFromAssumedRoleUser = (assumedRoleUser) => {\n if (typeof assumedRoleUser?.Arn === \"string\") {\n const arnComponents = assumedRoleUser.Arn.split(\":\");\n if (arnComponents.length > 4 && arnComponents[4] !== \"\") {\n return arnComponents[4];\n }\n }\n return undefined;\n};\nconst resolveRegion = async (_region, _parentRegion, credentialProviderLogger) => {\n const region = typeof _region === \"function\" ? await _region() : _region;\n const parentRegion = typeof _parentRegion === \"function\" ? await _parentRegion() : _parentRegion;\n credentialProviderLogger?.debug?.(\"@aws-sdk/client-sts::resolveRegion\", \"accepting first of:\", `${region} (provider)`, `${parentRegion} (parent client)`, `${ASSUME_ROLE_DEFAULT_REGION} (STS default)`);\n return region ?? parentRegion ?? ASSUME_ROLE_DEFAULT_REGION;\n};\nexport const getDefaultRoleAssumer = (stsOptions, stsClientCtor) => {\n let stsClient;\n let closureSourceCreds;\n return async (sourceCreds, params) => {\n closureSourceCreds = sourceCreds;\n if (!stsClient) {\n const { logger = stsOptions?.parentClientConfig?.logger, region, requestHandler = stsOptions?.parentClientConfig?.requestHandler, credentialProviderLogger, } = stsOptions;\n const resolvedRegion = await resolveRegion(region, stsOptions?.parentClientConfig?.region, credentialProviderLogger);\n const isCompatibleRequestHandler = !isH2(requestHandler);\n stsClient = new stsClientCtor({\n credentialDefaultProvider: () => async () => closureSourceCreds,\n region: resolvedRegion,\n requestHandler: isCompatibleRequestHandler ? requestHandler : undefined,\n logger: logger,\n });\n }\n const { Credentials, AssumedRoleUser } = await stsClient.send(new AssumeRoleCommand(params));\n if (!Credentials || !Credentials.AccessKeyId || !Credentials.SecretAccessKey) {\n throw new Error(`Invalid response from STS.assumeRole call with role ${params.RoleArn}`);\n }\n const accountId = getAccountIdFromAssumedRoleUser(AssumedRoleUser);\n return {\n accessKeyId: Credentials.AccessKeyId,\n secretAccessKey: Credentials.SecretAccessKey,\n sessionToken: Credentials.SessionToken,\n expiration: Credentials.Expiration,\n ...(Credentials.CredentialScope && { credentialScope: Credentials.CredentialScope }),\n ...(accountId && { accountId }),\n };\n };\n};\nexport const getDefaultRoleAssumerWithWebIdentity = (stsOptions, stsClientCtor) => {\n let stsClient;\n return async (params) => {\n if (!stsClient) {\n const { logger = stsOptions?.parentClientConfig?.logger, region, requestHandler = stsOptions?.parentClientConfig?.requestHandler, credentialProviderLogger, } = stsOptions;\n const resolvedRegion = await resolveRegion(region, stsOptions?.parentClientConfig?.region, credentialProviderLogger);\n const isCompatibleRequestHandler = !isH2(requestHandler);\n stsClient = new stsClientCtor({\n region: resolvedRegion,\n requestHandler: isCompatibleRequestHandler ? requestHandler : undefined,\n logger: logger,\n });\n }\n const { Credentials, AssumedRoleUser } = await stsClient.send(new AssumeRoleWithWebIdentityCommand(params));\n if (!Credentials || !Credentials.AccessKeyId || !Credentials.SecretAccessKey) {\n throw new Error(`Invalid response from STS.assumeRoleWithWebIdentity call with role ${params.RoleArn}`);\n }\n const accountId = getAccountIdFromAssumedRoleUser(AssumedRoleUser);\n return {\n accessKeyId: Credentials.AccessKeyId,\n secretAccessKey: Credentials.SecretAccessKey,\n sessionToken: Credentials.SessionToken,\n expiration: Credentials.Expiration,\n ...(Credentials.CredentialScope && { credentialScope: Credentials.CredentialScope }),\n ...(accountId && { accountId }),\n };\n };\n};\nexport const decorateDefaultCredentialProvider = (provider) => (input) => provider({\n roleAssumer: getDefaultRoleAssumer(input, input.stsClientCtor),\n roleAssumerWithWebIdentity: getDefaultRoleAssumerWithWebIdentity(input, input.stsClientCtor),\n ...input,\n});\nconst isH2 = (requestHandler) => {\n return requestHandler?.metadata?.handlerProtocol === \"h2\";\n};\n",
|
|
411
|
+
"import { getDefaultRoleAssumer as StsGetDefaultRoleAssumer, getDefaultRoleAssumerWithWebIdentity as StsGetDefaultRoleAssumerWithWebIdentity, } from \"./defaultStsRoleAssumers\";\nimport { STSClient } from \"./STSClient\";\nconst getCustomizableStsClientCtor = (baseCtor, customizations) => {\n if (!customizations)\n return baseCtor;\n else\n return class CustomizableSTSClient extends baseCtor {\n constructor(config) {\n super(config);\n for (const customization of customizations) {\n this.middlewareStack.use(customization);\n }\n }\n };\n};\nexport const getDefaultRoleAssumer = (stsOptions = {}, stsPlugins) => StsGetDefaultRoleAssumer(stsOptions, getCustomizableStsClientCtor(STSClient, stsPlugins));\nexport const getDefaultRoleAssumerWithWebIdentity = (stsOptions = {}, stsPlugins) => StsGetDefaultRoleAssumerWithWebIdentity(stsOptions, getCustomizableStsClientCtor(STSClient, stsPlugins));\nexport const decorateDefaultCredentialProvider = (provider) => (input) => provider({\n roleAssumer: getDefaultRoleAssumer(input),\n roleAssumerWithWebIdentity: getDefaultRoleAssumerWithWebIdentity(input),\n ...input,\n});\n",
|
|
412
|
+
"export * from \"./STSClient\";\nexport * from \"./STS\";\nexport * from \"./commands\";\nexport * from \"./models\";\nexport * from \"./defaultRoleAssumers\";\nexport { STSServiceException } from \"./models/STSServiceException\";\n",
|
|
413
|
+
"import { CredentialsProviderError } from \"@smithy/property-provider\";\nimport { getProfileName } from \"@smithy/shared-ini-file-loader\";\nimport { resolveCredentialSource } from \"./resolveCredentialSource\";\nimport { resolveProfileData } from \"./resolveProfileData\";\nexport const isAssumeRoleProfile = (arg, { profile = \"default\", logger } = {}) => {\n return (Boolean(arg) &&\n typeof arg === \"object\" &&\n typeof arg.role_arn === \"string\" &&\n [\"undefined\", \"string\"].indexOf(typeof arg.role_session_name) > -1 &&\n [\"undefined\", \"string\"].indexOf(typeof arg.external_id) > -1 &&\n [\"undefined\", \"string\"].indexOf(typeof arg.mfa_serial) > -1 &&\n (isAssumeRoleWithSourceProfile(arg, { profile, logger }) || isCredentialSourceProfile(arg, { profile, logger })));\n};\nconst isAssumeRoleWithSourceProfile = (arg, { profile, logger }) => {\n const withSourceProfile = typeof arg.source_profile === \"string\" && typeof arg.credential_source === \"undefined\";\n if (withSourceProfile) {\n logger?.debug?.(` ${profile} isAssumeRoleWithSourceProfile source_profile=${arg.source_profile}`);\n }\n return withSourceProfile;\n};\nconst isCredentialSourceProfile = (arg, { profile, logger }) => {\n const withProviderProfile = typeof arg.credential_source === \"string\" && typeof arg.source_profile === \"undefined\";\n if (withProviderProfile) {\n logger?.debug?.(` ${profile} isCredentialSourceProfile credential_source=${arg.credential_source}`);\n }\n return withProviderProfile;\n};\nexport const resolveAssumeRoleCredentials = async (profileName, profiles, options, visitedProfiles = {}) => {\n options.logger?.debug(\"@aws-sdk/credential-provider-ini - resolveAssumeRoleCredentials (STS)\");\n const data = profiles[profileName];\n if (!options.roleAssumer) {\n const { getDefaultRoleAssumer } = await import(\"@aws-sdk/client-sts\");\n options.roleAssumer = getDefaultRoleAssumer({\n ...options.clientConfig,\n credentialProviderLogger: options.logger,\n parentClientConfig: options?.parentClientConfig,\n }, options.clientPlugins);\n }\n const { source_profile } = data;\n if (source_profile && source_profile in visitedProfiles) {\n throw new CredentialsProviderError(`Detected a cycle attempting to resolve credentials for profile` +\n ` ${getProfileName(options)}. Profiles visited: ` +\n Object.keys(visitedProfiles).join(\", \"), { logger: options.logger });\n }\n options.logger?.debug(`@aws-sdk/credential-provider-ini - finding credential resolver using ${source_profile ? `source_profile=[${source_profile}]` : `profile=[${profileName}]`}`);\n const sourceCredsProvider = source_profile\n ? resolveProfileData(source_profile, {\n ...profiles,\n [source_profile]: {\n ...profiles[source_profile],\n role_arn: data.role_arn ?? profiles[source_profile].role_arn,\n },\n }, options, {\n ...visitedProfiles,\n [source_profile]: true,\n })\n : (await resolveCredentialSource(data.credential_source, profileName, options.logger)(options))();\n const params = {\n RoleArn: data.role_arn,\n RoleSessionName: data.role_session_name || `aws-sdk-js-${Date.now()}`,\n ExternalId: data.external_id,\n DurationSeconds: parseInt(data.duration_seconds || \"3600\", 10),\n };\n const { mfa_serial } = data;\n if (mfa_serial) {\n if (!options.mfaCodeProvider) {\n throw new CredentialsProviderError(`Profile ${profileName} requires multi-factor authentication, but no MFA code callback was provided.`, { logger: options.logger, tryNextLink: false });\n }\n params.SerialNumber = mfa_serial;\n params.TokenCode = await options.mfaCodeProvider(mfa_serial);\n }\n const sourceCreds = await sourceCredsProvider;\n return options.roleAssumer(sourceCreds, params);\n};\n",
|
|
414
|
+
"export const getValidatedProcessCredentials = (profileName, data, profiles) => {\n if (data.Version !== 1) {\n throw Error(`Profile ${profileName} credential_process did not return Version 1.`);\n }\n if (data.AccessKeyId === undefined || data.SecretAccessKey === undefined) {\n throw Error(`Profile ${profileName} credential_process returned invalid credentials.`);\n }\n if (data.Expiration) {\n const currentTime = new Date();\n const expireTime = new Date(data.Expiration);\n if (expireTime < currentTime) {\n throw Error(`Profile ${profileName} credential_process returned expired credentials.`);\n }\n }\n let accountId = data.AccountId;\n if (!accountId && profiles?.[profileName]?.aws_account_id) {\n accountId = profiles[profileName].aws_account_id;\n }\n return {\n accessKeyId: data.AccessKeyId,\n secretAccessKey: data.SecretAccessKey,\n ...(data.SessionToken && { sessionToken: data.SessionToken }),\n ...(data.Expiration && { expiration: new Date(data.Expiration) }),\n ...(data.CredentialScope && { credentialScope: data.CredentialScope }),\n ...(accountId && { accountId }),\n };\n};\n",
|
|
415
|
+
"import { CredentialsProviderError } from \"@smithy/property-provider\";\nimport { exec } from \"child_process\";\nimport { promisify } from \"util\";\nimport { getValidatedProcessCredentials } from \"./getValidatedProcessCredentials\";\nexport const resolveProcessCredentials = async (profileName, profiles, logger) => {\n const profile = profiles[profileName];\n if (profiles[profileName]) {\n const credentialProcess = profile[\"credential_process\"];\n if (credentialProcess !== undefined) {\n const execPromise = promisify(exec);\n try {\n const { stdout } = await execPromise(credentialProcess);\n let data;\n try {\n data = JSON.parse(stdout.trim());\n }\n catch {\n throw Error(`Profile ${profileName} credential_process returned invalid JSON.`);\n }\n return getValidatedProcessCredentials(profileName, data, profiles);\n }\n catch (error) {\n throw new CredentialsProviderError(error.message, { logger });\n }\n }\n else {\n throw new CredentialsProviderError(`Profile ${profileName} did not contain credential_process.`, { logger });\n }\n }\n else {\n throw new CredentialsProviderError(`Profile ${profileName} could not be found in shared credentials file.`, {\n logger,\n });\n }\n};\n",
|
|
416
|
+
"import { getProfileName, parseKnownFiles } from \"@smithy/shared-ini-file-loader\";\nimport { resolveProcessCredentials } from \"./resolveProcessCredentials\";\nexport const fromProcess = (init = {}) => async () => {\n init.logger?.debug(\"@aws-sdk/credential-provider-process - fromProcess\");\n const profiles = await parseKnownFiles(init);\n return resolveProcessCredentials(getProfileName(init), profiles, init.logger);\n};\n",
|
|
417
|
+
"export * from \"./fromProcess\";\n",
|
|
418
|
+
"export const isProcessProfile = (arg) => Boolean(arg) && typeof arg === \"object\" && typeof arg.credential_process === \"string\";\nexport const resolveProcessCredentials = async (options, profile) => import(\"@aws-sdk/credential-provider-process\").then(({ fromProcess }) => fromProcess({\n ...options,\n profile,\n})());\n",
|
|
419
|
+
"export const resolveSsoCredentials = async (profile, options = {}) => {\n const { fromSSO } = await import(\"@aws-sdk/credential-provider-sso\");\n return fromSSO({\n profile,\n logger: options.logger,\n })();\n};\nexport const isSsoProfile = (arg) => arg &&\n (typeof arg.sso_start_url === \"string\" ||\n typeof arg.sso_account_id === \"string\" ||\n typeof arg.sso_session === \"string\" ||\n typeof arg.sso_region === \"string\" ||\n typeof arg.sso_role_name === \"string\");\n",
|
|
420
|
+
"export const isStaticCredsProfile = (arg) => Boolean(arg) &&\n typeof arg === \"object\" &&\n typeof arg.aws_access_key_id === \"string\" &&\n typeof arg.aws_secret_access_key === \"string\" &&\n [\"undefined\", \"string\"].indexOf(typeof arg.aws_session_token) > -1 &&\n [\"undefined\", \"string\"].indexOf(typeof arg.aws_account_id) > -1;\nexport const resolveStaticCredentials = (profile, options) => {\n options?.logger?.debug(\"@aws-sdk/credential-provider-ini - resolveStaticCredentials\");\n return Promise.resolve({\n accessKeyId: profile.aws_access_key_id,\n secretAccessKey: profile.aws_secret_access_key,\n sessionToken: profile.aws_session_token,\n ...(profile.aws_credential_scope && { credentialScope: profile.aws_credential_scope }),\n ...(profile.aws_account_id && { accountId: profile.aws_account_id }),\n });\n};\n",
|
|
421
|
+
"export const fromWebToken = (init) => async () => {\n init.logger?.debug(\"@aws-sdk/credential-provider-web-identity - fromWebToken\");\n const { roleArn, roleSessionName, webIdentityToken, providerId, policyArns, policy, durationSeconds } = init;\n let { roleAssumerWithWebIdentity } = init;\n if (!roleAssumerWithWebIdentity) {\n const { getDefaultRoleAssumerWithWebIdentity } = await import(\"@aws-sdk/client-sts\");\n roleAssumerWithWebIdentity = getDefaultRoleAssumerWithWebIdentity({\n ...init.clientConfig,\n credentialProviderLogger: init.logger,\n parentClientConfig: init.parentClientConfig,\n }, init.clientPlugins);\n }\n return roleAssumerWithWebIdentity({\n RoleArn: roleArn,\n RoleSessionName: roleSessionName ?? `aws-sdk-js-session-${Date.now()}`,\n WebIdentityToken: webIdentityToken,\n ProviderId: providerId,\n PolicyArns: policyArns,\n Policy: policy,\n DurationSeconds: durationSeconds,\n });\n};\n",
|
|
422
|
+
"import { CredentialsProviderError } from \"@smithy/property-provider\";\nimport { readFileSync } from \"fs\";\nimport { fromWebToken } from \"./fromWebToken\";\nconst ENV_TOKEN_FILE = \"AWS_WEB_IDENTITY_TOKEN_FILE\";\nconst ENV_ROLE_ARN = \"AWS_ROLE_ARN\";\nconst ENV_ROLE_SESSION_NAME = \"AWS_ROLE_SESSION_NAME\";\nexport const fromTokenFile = (init = {}) => async () => {\n init.logger?.debug(\"@aws-sdk/credential-provider-web-identity - fromTokenFile\");\n const webIdentityTokenFile = init?.webIdentityTokenFile ?? process.env[ENV_TOKEN_FILE];\n const roleArn = init?.roleArn ?? process.env[ENV_ROLE_ARN];\n const roleSessionName = init?.roleSessionName ?? process.env[ENV_ROLE_SESSION_NAME];\n if (!webIdentityTokenFile || !roleArn) {\n throw new CredentialsProviderError(\"Web identity configuration not specified\", {\n logger: init.logger,\n });\n }\n return fromWebToken({\n ...init,\n webIdentityToken: readFileSync(webIdentityTokenFile, { encoding: \"ascii\" }),\n roleArn,\n roleSessionName,\n })();\n};\n",
|
|
423
|
+
"export * from \"./fromTokenFile\";\nexport * from \"./fromWebToken\";\n",
|
|
424
|
+
"export const isWebIdentityProfile = (arg) => Boolean(arg) &&\n typeof arg === \"object\" &&\n typeof arg.web_identity_token_file === \"string\" &&\n typeof arg.role_arn === \"string\" &&\n [\"undefined\", \"string\"].indexOf(typeof arg.role_session_name) > -1;\nexport const resolveWebIdentityCredentials = async (profile, options) => import(\"@aws-sdk/credential-provider-web-identity\").then(({ fromTokenFile }) => fromTokenFile({\n webIdentityTokenFile: profile.web_identity_token_file,\n roleArn: profile.role_arn,\n roleSessionName: profile.role_session_name,\n roleAssumerWithWebIdentity: options.roleAssumerWithWebIdentity,\n logger: options.logger,\n parentClientConfig: options.parentClientConfig,\n})());\n",
|
|
425
|
+
"import { CredentialsProviderError } from \"@smithy/property-provider\";\nimport { isAssumeRoleProfile, resolveAssumeRoleCredentials } from \"./resolveAssumeRoleCredentials\";\nimport { isProcessProfile, resolveProcessCredentials } from \"./resolveProcessCredentials\";\nimport { isSsoProfile, resolveSsoCredentials } from \"./resolveSsoCredentials\";\nimport { isStaticCredsProfile, resolveStaticCredentials } from \"./resolveStaticCredentials\";\nimport { isWebIdentityProfile, resolveWebIdentityCredentials } from \"./resolveWebIdentityCredentials\";\nexport const resolveProfileData = async (profileName, profiles, options, visitedProfiles = {}) => {\n const data = profiles[profileName];\n if (Object.keys(visitedProfiles).length > 0 && isStaticCredsProfile(data)) {\n return resolveStaticCredentials(data, options);\n }\n if (isAssumeRoleProfile(data, { profile: profileName, logger: options.logger })) {\n return resolveAssumeRoleCredentials(profileName, profiles, options, visitedProfiles);\n }\n if (isStaticCredsProfile(data)) {\n return resolveStaticCredentials(data, options);\n }\n if (isWebIdentityProfile(data)) {\n return resolveWebIdentityCredentials(data, options);\n }\n if (isProcessProfile(data)) {\n return resolveProcessCredentials(options, profileName);\n }\n if (isSsoProfile(data)) {\n return await resolveSsoCredentials(profileName, options);\n }\n throw new CredentialsProviderError(`Could not resolve credentials using profile: [${profileName}] in configuration/credentials file(s).`, { logger: options.logger });\n};\n",
|
|
426
|
+
"import { getProfileName, parseKnownFiles } from \"@smithy/shared-ini-file-loader\";\nimport { resolveProfileData } from \"./resolveProfileData\";\nexport const fromIni = (init = {}) => async () => {\n init.logger?.debug(\"@aws-sdk/credential-provider-ini - fromIni\");\n const profiles = await parseKnownFiles(init);\n return resolveProfileData(getProfileName(init), profiles, init);\n};\n",
|
|
427
|
+
"export * from \"./fromIni\";\n",
|
|
428
|
+
"import { ENV_KEY, ENV_SECRET, fromEnv } from \"@aws-sdk/credential-provider-env\";\nimport { chain, CredentialsProviderError, memoize } from \"@smithy/property-provider\";\nimport { ENV_PROFILE } from \"@smithy/shared-ini-file-loader\";\nimport { remoteProvider } from \"./remoteProvider\";\nlet multipleCredentialSourceWarningEmitted = false;\nexport const defaultProvider = (init = {}) => memoize(chain(async () => {\n const profile = init.profile ?? process.env[ENV_PROFILE];\n if (profile) {\n const envStaticCredentialsAreSet = process.env[ENV_KEY] && process.env[ENV_SECRET];\n if (envStaticCredentialsAreSet) {\n if (!multipleCredentialSourceWarningEmitted) {\n const warnFn = init.logger?.warn && init.logger?.constructor?.name !== \"NoOpLogger\" ? init.logger.warn : console.warn;\n warnFn(`@aws-sdk/credential-provider-node - defaultProvider::fromEnv WARNING:\n Multiple credential sources detected: \n Both AWS_PROFILE and the pair AWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY static credentials are set.\n This SDK will proceed with the AWS_PROFILE value.\n \n However, a future version may change this behavior to prefer the ENV static credentials.\n Please ensure that your environment only sets either the AWS_PROFILE or the\n AWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY pair.\n`);\n multipleCredentialSourceWarningEmitted = true;\n }\n }\n throw new CredentialsProviderError(\"AWS_PROFILE is set, skipping fromEnv provider.\", {\n logger: init.logger,\n tryNextLink: true,\n });\n }\n init.logger?.debug(\"@aws-sdk/credential-provider-node - defaultProvider::fromEnv\");\n return fromEnv(init)();\n}, async () => {\n init.logger?.debug(\"@aws-sdk/credential-provider-node - defaultProvider::fromSSO\");\n const { ssoStartUrl, ssoAccountId, ssoRegion, ssoRoleName, ssoSession } = init;\n if (!ssoStartUrl && !ssoAccountId && !ssoRegion && !ssoRoleName && !ssoSession) {\n throw new CredentialsProviderError(\"Skipping SSO provider in default chain (inputs do not include SSO fields).\", { logger: init.logger });\n }\n const { fromSSO } = await import(\"@aws-sdk/credential-provider-sso\");\n return fromSSO(init)();\n}, async () => {\n init.logger?.debug(\"@aws-sdk/credential-provider-node - defaultProvider::fromIni\");\n const { fromIni } = await import(\"@aws-sdk/credential-provider-ini\");\n return fromIni(init)();\n}, async () => {\n init.logger?.debug(\"@aws-sdk/credential-provider-node - defaultProvider::fromProcess\");\n const { fromProcess } = await import(\"@aws-sdk/credential-provider-process\");\n return fromProcess(init)();\n}, async () => {\n init.logger?.debug(\"@aws-sdk/credential-provider-node - defaultProvider::fromTokenFile\");\n const { fromTokenFile } = await import(\"@aws-sdk/credential-provider-web-identity\");\n return fromTokenFile(init)();\n}, async () => {\n init.logger?.debug(\"@aws-sdk/credential-provider-node - defaultProvider::remoteProvider\");\n return (await remoteProvider(init))();\n}, async () => {\n throw new CredentialsProviderError(\"Could not load credentials from any providers\", {\n tryNextLink: false,\n logger: init.logger,\n });\n}), credentialsTreatedAsExpired, credentialsWillNeedRefresh);\nexport const credentialsWillNeedRefresh = (credentials) => credentials?.expiration !== undefined;\nexport const credentialsTreatedAsExpired = (credentials) => credentials?.expiration !== undefined && credentials.expiration.getTime() - Date.now() < 300000;\n",
|
|
429
|
+
"export * from \"./defaultProvider\";\n",
|
|
430
|
+
"const ENV_ENDPOINT_DISCOVERY = [\"AWS_ENABLE_ENDPOINT_DISCOVERY\", \"AWS_ENDPOINT_DISCOVERY_ENABLED\"];\nconst CONFIG_ENDPOINT_DISCOVERY = \"endpoint_discovery_enabled\";\nconst isFalsy = (value) => [\"false\", \"0\"].indexOf(value) >= 0;\nexport const NODE_ENDPOINT_DISCOVERY_CONFIG_OPTIONS = {\n environmentVariableSelector: (env) => {\n for (let i = 0; i < ENV_ENDPOINT_DISCOVERY.length; i++) {\n const envKey = ENV_ENDPOINT_DISCOVERY[i];\n if (envKey in env) {\n const value = env[envKey];\n if (value === \"\") {\n throw Error(`Environment variable ${envKey} can't be empty of undefined, got \"${value}\"`);\n }\n return !isFalsy(value);\n }\n }\n },\n configFileSelector: (profile) => {\n if (CONFIG_ENDPOINT_DISCOVERY in profile) {\n const value = profile[CONFIG_ENDPOINT_DISCOVERY];\n if (value === undefined) {\n throw Error(`Shared config entry ${CONFIG_ENDPOINT_DISCOVERY} can't be undefined, got \"${value}\"`);\n }\n return !isFalsy(value);\n }\n },\n default: undefined,\n};\n",
|
|
431
|
+
"import { HttpRequest } from \"@smithy/protocol-http\";\nimport { getCacheKey } from \"./getCacheKey\";\nimport { updateDiscoveredEndpointInCache } from \"./updateDiscoveredEndpointInCache\";\nexport const endpointDiscoveryMiddleware = (config, middlewareConfig) => (next, context) => async (args) => {\n if (config.isCustomEndpoint) {\n if (config.isClientEndpointDiscoveryEnabled) {\n throw new Error(`Custom endpoint is supplied; endpointDiscoveryEnabled must not be true.`);\n }\n return next(args);\n }\n const { endpointDiscoveryCommandCtor } = config;\n const { isDiscoveredEndpointRequired, identifiers } = middlewareConfig;\n const clientName = context.clientName;\n const commandName = context.commandName;\n const isEndpointDiscoveryEnabled = await config.endpointDiscoveryEnabled();\n const cacheKey = await getCacheKey(commandName, config, { identifiers });\n if (isDiscoveredEndpointRequired) {\n if (isEndpointDiscoveryEnabled === false) {\n throw new Error(`Endpoint Discovery is disabled but ${commandName} on ${clientName} requires it.` +\n ` Please check your configurations.`);\n }\n await updateDiscoveredEndpointInCache(config, {\n ...middlewareConfig,\n commandName,\n cacheKey,\n endpointDiscoveryCommandCtor,\n });\n }\n else if (isEndpointDiscoveryEnabled) {\n updateDiscoveredEndpointInCache(config, {\n ...middlewareConfig,\n commandName,\n cacheKey,\n endpointDiscoveryCommandCtor,\n });\n }\n const { request } = args;\n if (cacheKey && HttpRequest.isInstance(request)) {\n const endpoint = config.endpointCache.getEndpoint(cacheKey);\n if (endpoint) {\n request.hostname = endpoint;\n }\n }\n return next(args);\n};\n",
|
|
432
|
+
"import LRUCache from \"mnemonist/lru-cache\";\nexport class EndpointCache {\n constructor(capacity) {\n this.cache = new LRUCache(capacity);\n }\n getEndpoint(key) {\n const endpointsWithExpiry = this.get(key);\n if (!endpointsWithExpiry || endpointsWithExpiry.length === 0) {\n return undefined;\n }\n const endpoints = endpointsWithExpiry.map((endpoint) => endpoint.Address);\n return endpoints[Math.floor(Math.random() * endpoints.length)];\n }\n get(key) {\n if (!this.has(key)) {\n return;\n }\n const value = this.cache.get(key);\n if (!value) {\n return;\n }\n const now = Date.now();\n const endpointsWithExpiry = value.filter((endpoint) => now < endpoint.Expires);\n if (endpointsWithExpiry.length === 0) {\n this.delete(key);\n return undefined;\n }\n return endpointsWithExpiry;\n }\n set(key, endpoints) {\n const now = Date.now();\n this.cache.set(key, endpoints.map(({ Address, CachePeriodInMinutes }) => ({\n Address,\n Expires: now + CachePeriodInMinutes * 60 * 1000,\n })));\n }\n delete(key) {\n this.cache.set(key, []);\n }\n has(key) {\n if (!this.cache.has(key)) {\n return false;\n }\n const endpoints = this.cache.peek(key);\n if (!endpoints) {\n return false;\n }\n return endpoints.length > 0;\n }\n clear() {\n this.cache.clear();\n }\n}\n",
|
|
433
|
+
"import { EndpointCache } from \"@aws-sdk/endpoint-cache\";\nexport const resolveEndpointDiscoveryConfig = (input, { endpointDiscoveryCommandCtor }) => ({\n ...input,\n endpointDiscoveryCommandCtor,\n endpointCache: new EndpointCache(input.endpointCacheSize ?? 1000),\n endpointDiscoveryEnabled: input.endpointDiscoveryEnabled !== undefined\n ? () => Promise.resolve(input.endpointDiscoveryEnabled)\n : input.endpointDiscoveryEnabledProvider,\n isClientEndpointDiscoveryEnabled: input.endpointDiscoveryEnabled !== undefined,\n});\n",
|
|
434
|
+
"import { resolveEndpointDiscoveryConfig, } from \"@aws-sdk/middleware-endpoint-discovery\";\nimport { getHostHeaderPlugin, resolveHostHeaderConfig, } from \"@aws-sdk/middleware-host-header\";\nimport { getLoggerPlugin } from \"@aws-sdk/middleware-logger\";\nimport { getRecursionDetectionPlugin } from \"@aws-sdk/middleware-recursion-detection\";\nimport { getUserAgentPlugin, resolveUserAgentConfig, } from \"@aws-sdk/middleware-user-agent\";\nimport { resolveRegionConfig } from \"@smithy/config-resolver\";\nimport { DefaultIdentityProviderConfig, getHttpAuthSchemeEndpointRuleSetPlugin, getHttpSigningPlugin, } from \"@smithy/core\";\nimport { getContentLengthPlugin } from \"@smithy/middleware-content-length\";\nimport { resolveEndpointConfig } from \"@smithy/middleware-endpoint\";\nimport { getRetryPlugin, resolveRetryConfig } from \"@smithy/middleware-retry\";\nimport { Client as __Client, } from \"@smithy/smithy-client\";\nimport { defaultDynamoDBHttpAuthSchemeParametersProvider, resolveHttpAuthSchemeConfig, } from \"./auth/httpAuthSchemeProvider\";\nimport { DescribeEndpointsCommand, } from \"./commands/DescribeEndpointsCommand\";\nimport { resolveClientEndpointParameters, } from \"./endpoint/EndpointParameters\";\nimport { getRuntimeConfig as __getRuntimeConfig } from \"./runtimeConfig\";\nimport { resolveRuntimeExtensions } from \"./runtimeExtensions\";\nexport { __Client };\nexport class DynamoDBClient extends __Client {\n constructor(...[configuration]) {\n const _config_0 = __getRuntimeConfig(configuration || {});\n const _config_1 = resolveClientEndpointParameters(_config_0);\n const _config_2 = resolveUserAgentConfig(_config_1);\n const _config_3 = resolveRetryConfig(_config_2);\n const _config_4 = resolveRegionConfig(_config_3);\n const _config_5 = resolveHostHeaderConfig(_config_4);\n const _config_6 = resolveEndpointConfig(_config_5);\n const _config_7 = resolveHttpAuthSchemeConfig(_config_6);\n const _config_8 = resolveEndpointDiscoveryConfig(_config_7, {\n endpointDiscoveryCommandCtor: DescribeEndpointsCommand,\n });\n const _config_9 = resolveRuntimeExtensions(_config_8, configuration?.extensions || []);\n super(_config_9);\n this.config = _config_9;\n this.middlewareStack.use(getUserAgentPlugin(this.config));\n this.middlewareStack.use(getRetryPlugin(this.config));\n this.middlewareStack.use(getContentLengthPlugin(this.config));\n this.middlewareStack.use(getHostHeaderPlugin(this.config));\n this.middlewareStack.use(getLoggerPlugin(this.config));\n this.middlewareStack.use(getRecursionDetectionPlugin(this.config));\n this.middlewareStack.use(getHttpAuthSchemeEndpointRuleSetPlugin(this.config, {\n httpAuthSchemeParametersProvider: defaultDynamoDBHttpAuthSchemeParametersProvider,\n identityProviderConfigProvider: async (config) => new DefaultIdentityProviderConfig({\n \"aws.auth#sigv4\": config.credentials,\n }),\n }));\n this.middlewareStack.use(getHttpSigningPlugin(this.config));\n }\n destroy() {\n super.destroy();\n }\n}\n",
|
|
435
|
+
"import { resolveAwsSdkSigV4Config, } from \"@aws-sdk/core\";\nimport { getSmithyContext, normalizeProvider } from \"@smithy/util-middleware\";\nexport const defaultDynamoDBHttpAuthSchemeParametersProvider = async (config, context, input) => {\n return {\n operation: getSmithyContext(context).operation,\n region: (await normalizeProvider(config.region)()) ||\n (() => {\n throw new Error(\"expected `region` to be configured for `aws.auth#sigv4`\");\n })(),\n };\n};\nfunction createAwsAuthSigv4HttpAuthOption(authParameters) {\n return {\n schemeId: \"aws.auth#sigv4\",\n signingProperties: {\n name: \"dynamodb\",\n region: authParameters.region,\n },\n propertiesExtractor: (config, context) => ({\n signingProperties: {\n config,\n context,\n },\n }),\n };\n}\nexport const defaultDynamoDBHttpAuthSchemeProvider = (authParameters) => {\n const options = [];\n switch (authParameters.operation) {\n default: {\n options.push(createAwsAuthSigv4HttpAuthOption(authParameters));\n }\n }\n return options;\n};\nexport const resolveHttpAuthSchemeConfig = (config) => {\n const config_0 = resolveAwsSdkSigV4Config(config);\n return {\n ...config_0,\n };\n};\n",
|
|
436
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_DescribeEndpointsCommand, se_DescribeEndpointsCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class DescribeEndpointsCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"DescribeEndpoints\", {})\n .n(\"DynamoDBClient\", \"DescribeEndpointsCommand\")\n .f(void 0, void 0)\n .ser(se_DescribeEndpointsCommand)\n .de(de_DescribeEndpointsCommand)\n .build() {\n}\n",
|
|
437
|
+
"export const resolveClientEndpointParameters = (options) => {\n return {\n ...options,\n useDualstackEndpoint: options.useDualstackEndpoint ?? false,\n useFipsEndpoint: options.useFipsEndpoint ?? false,\n defaultSigningName: \"dynamodb\",\n };\n};\nexport const commonParams = {\n UseFIPS: { type: \"builtInParams\", name: \"useFipsEndpoint\" },\n Endpoint: { type: \"builtInParams\", name: \"endpoint\" },\n Region: { type: \"builtInParams\", name: \"region\" },\n UseDualStack: { type: \"builtInParams\", name: \"useDualstackEndpoint\" },\n};\n",
|
|
438
|
+
"import { awsExpectUnion as __expectUnion, loadRestJsonErrorCode, parseJsonBody as parseBody, parseJsonErrorBody as parseErrorBody, } from \"@aws-sdk/core\";\nimport { HttpRequest as __HttpRequest } from \"@smithy/protocol-http\";\nimport { _json, collectBody, decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, expectNonNull as __expectNonNull, expectNumber as __expectNumber, expectString as __expectString, limitedParseDouble as __limitedParseDouble, parseEpochTimestamp as __parseEpochTimestamp, serializeFloat as __serializeFloat, take, withBaseException, } from \"@smithy/smithy-client\";\nimport { v4 as generateIdempotencyToken } from \"uuid\";\nimport { DynamoDBServiceException as __BaseException } from \"../models/DynamoDBServiceException\";\nimport { AttributeValue, BackupInUseException, BackupNotFoundException, ConditionalCheckFailedException, ContinuousBackupsUnavailableException, DuplicateItemException, ExportConflictException, ExportNotFoundException, GlobalTableAlreadyExistsException, GlobalTableNotFoundException, IdempotentParameterMismatchException, ImportConflictException, ImportNotFoundException, IndexNotFoundException, InternalServerError, InvalidEndpointException, InvalidExportTimeException, InvalidRestoreTimeException, ItemCollectionSizeLimitExceededException, LimitExceededException, PointInTimeRecoveryUnavailableException, PolicyNotFoundException, ProvisionedThroughputExceededException, ReplicaAlreadyExistsException, ReplicaNotFoundException, RequestLimitExceeded, ResourceInUseException, ResourceNotFoundException, TableAlreadyExistsException, TableInUseException, TableNotFoundException, TransactionCanceledException, TransactionConflictException, TransactionInProgressException, } from \"../models/models_0\";\nexport const se_BatchExecuteStatementCommand = async (input, context) => {\n const headers = sharedHeaders(\"BatchExecuteStatement\");\n let body;\n body = JSON.stringify(se_BatchExecuteStatementInput(input, context));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_BatchGetItemCommand = async (input, context) => {\n const headers = sharedHeaders(\"BatchGetItem\");\n let body;\n body = JSON.stringify(se_BatchGetItemInput(input, context));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_BatchWriteItemCommand = async (input, context) => {\n const headers = sharedHeaders(\"BatchWriteItem\");\n let body;\n body = JSON.stringify(se_BatchWriteItemInput(input, context));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_CreateBackupCommand = async (input, context) => {\n const headers = sharedHeaders(\"CreateBackup\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_CreateGlobalTableCommand = async (input, context) => {\n const headers = sharedHeaders(\"CreateGlobalTable\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_CreateTableCommand = async (input, context) => {\n const headers = sharedHeaders(\"CreateTable\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_DeleteBackupCommand = async (input, context) => {\n const headers = sharedHeaders(\"DeleteBackup\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_DeleteItemCommand = async (input, context) => {\n const headers = sharedHeaders(\"DeleteItem\");\n let body;\n body = JSON.stringify(se_DeleteItemInput(input, context));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_DeleteResourcePolicyCommand = async (input, context) => {\n const headers = sharedHeaders(\"DeleteResourcePolicy\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_DeleteTableCommand = async (input, context) => {\n const headers = sharedHeaders(\"DeleteTable\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_DescribeBackupCommand = async (input, context) => {\n const headers = sharedHeaders(\"DescribeBackup\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_DescribeContinuousBackupsCommand = async (input, context) => {\n const headers = sharedHeaders(\"DescribeContinuousBackups\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_DescribeContributorInsightsCommand = async (input, context) => {\n const headers = sharedHeaders(\"DescribeContributorInsights\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_DescribeEndpointsCommand = async (input, context) => {\n const headers = sharedHeaders(\"DescribeEndpoints\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_DescribeExportCommand = async (input, context) => {\n const headers = sharedHeaders(\"DescribeExport\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_DescribeGlobalTableCommand = async (input, context) => {\n const headers = sharedHeaders(\"DescribeGlobalTable\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_DescribeGlobalTableSettingsCommand = async (input, context) => {\n const headers = sharedHeaders(\"DescribeGlobalTableSettings\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_DescribeImportCommand = async (input, context) => {\n const headers = sharedHeaders(\"DescribeImport\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_DescribeKinesisStreamingDestinationCommand = async (input, context) => {\n const headers = sharedHeaders(\"DescribeKinesisStreamingDestination\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_DescribeLimitsCommand = async (input, context) => {\n const headers = sharedHeaders(\"DescribeLimits\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_DescribeTableCommand = async (input, context) => {\n const headers = sharedHeaders(\"DescribeTable\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_DescribeTableReplicaAutoScalingCommand = async (input, context) => {\n const headers = sharedHeaders(\"DescribeTableReplicaAutoScaling\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_DescribeTimeToLiveCommand = async (input, context) => {\n const headers = sharedHeaders(\"DescribeTimeToLive\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_DisableKinesisStreamingDestinationCommand = async (input, context) => {\n const headers = sharedHeaders(\"DisableKinesisStreamingDestination\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_EnableKinesisStreamingDestinationCommand = async (input, context) => {\n const headers = sharedHeaders(\"EnableKinesisStreamingDestination\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_ExecuteStatementCommand = async (input, context) => {\n const headers = sharedHeaders(\"ExecuteStatement\");\n let body;\n body = JSON.stringify(se_ExecuteStatementInput(input, context));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_ExecuteTransactionCommand = async (input, context) => {\n const headers = sharedHeaders(\"ExecuteTransaction\");\n let body;\n body = JSON.stringify(se_ExecuteTransactionInput(input, context));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_ExportTableToPointInTimeCommand = async (input, context) => {\n const headers = sharedHeaders(\"ExportTableToPointInTime\");\n let body;\n body = JSON.stringify(se_ExportTableToPointInTimeInput(input, context));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_GetItemCommand = async (input, context) => {\n const headers = sharedHeaders(\"GetItem\");\n let body;\n body = JSON.stringify(se_GetItemInput(input, context));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_GetResourcePolicyCommand = async (input, context) => {\n const headers = sharedHeaders(\"GetResourcePolicy\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_ImportTableCommand = async (input, context) => {\n const headers = sharedHeaders(\"ImportTable\");\n let body;\n body = JSON.stringify(se_ImportTableInput(input, context));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_ListBackupsCommand = async (input, context) => {\n const headers = sharedHeaders(\"ListBackups\");\n let body;\n body = JSON.stringify(se_ListBackupsInput(input, context));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_ListContributorInsightsCommand = async (input, context) => {\n const headers = sharedHeaders(\"ListContributorInsights\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_ListExportsCommand = async (input, context) => {\n const headers = sharedHeaders(\"ListExports\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_ListGlobalTablesCommand = async (input, context) => {\n const headers = sharedHeaders(\"ListGlobalTables\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_ListImportsCommand = async (input, context) => {\n const headers = sharedHeaders(\"ListImports\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_ListTablesCommand = async (input, context) => {\n const headers = sharedHeaders(\"ListTables\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_ListTagsOfResourceCommand = async (input, context) => {\n const headers = sharedHeaders(\"ListTagsOfResource\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_PutItemCommand = async (input, context) => {\n const headers = sharedHeaders(\"PutItem\");\n let body;\n body = JSON.stringify(se_PutItemInput(input, context));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_PutResourcePolicyCommand = async (input, context) => {\n const headers = sharedHeaders(\"PutResourcePolicy\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_QueryCommand = async (input, context) => {\n const headers = sharedHeaders(\"Query\");\n let body;\n body = JSON.stringify(se_QueryInput(input, context));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_RestoreTableFromBackupCommand = async (input, context) => {\n const headers = sharedHeaders(\"RestoreTableFromBackup\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_RestoreTableToPointInTimeCommand = async (input, context) => {\n const headers = sharedHeaders(\"RestoreTableToPointInTime\");\n let body;\n body = JSON.stringify(se_RestoreTableToPointInTimeInput(input, context));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_ScanCommand = async (input, context) => {\n const headers = sharedHeaders(\"Scan\");\n let body;\n body = JSON.stringify(se_ScanInput(input, context));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_TagResourceCommand = async (input, context) => {\n const headers = sharedHeaders(\"TagResource\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_TransactGetItemsCommand = async (input, context) => {\n const headers = sharedHeaders(\"TransactGetItems\");\n let body;\n body = JSON.stringify(se_TransactGetItemsInput(input, context));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_TransactWriteItemsCommand = async (input, context) => {\n const headers = sharedHeaders(\"TransactWriteItems\");\n let body;\n body = JSON.stringify(se_TransactWriteItemsInput(input, context));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_UntagResourceCommand = async (input, context) => {\n const headers = sharedHeaders(\"UntagResource\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_UpdateContinuousBackupsCommand = async (input, context) => {\n const headers = sharedHeaders(\"UpdateContinuousBackups\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_UpdateContributorInsightsCommand = async (input, context) => {\n const headers = sharedHeaders(\"UpdateContributorInsights\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_UpdateGlobalTableCommand = async (input, context) => {\n const headers = sharedHeaders(\"UpdateGlobalTable\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_UpdateGlobalTableSettingsCommand = async (input, context) => {\n const headers = sharedHeaders(\"UpdateGlobalTableSettings\");\n let body;\n body = JSON.stringify(se_UpdateGlobalTableSettingsInput(input, context));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_UpdateItemCommand = async (input, context) => {\n const headers = sharedHeaders(\"UpdateItem\");\n let body;\n body = JSON.stringify(se_UpdateItemInput(input, context));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_UpdateKinesisStreamingDestinationCommand = async (input, context) => {\n const headers = sharedHeaders(\"UpdateKinesisStreamingDestination\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_UpdateTableCommand = async (input, context) => {\n const headers = sharedHeaders(\"UpdateTable\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_UpdateTableReplicaAutoScalingCommand = async (input, context) => {\n const headers = sharedHeaders(\"UpdateTableReplicaAutoScaling\");\n let body;\n body = JSON.stringify(se_UpdateTableReplicaAutoScalingInput(input, context));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_UpdateTimeToLiveCommand = async (input, context) => {\n const headers = sharedHeaders(\"UpdateTimeToLive\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const de_BatchExecuteStatementCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_BatchExecuteStatementOutput(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_BatchGetItemCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_BatchGetItemOutput(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_BatchWriteItemCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_BatchWriteItemOutput(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_CreateBackupCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_CreateBackupOutput(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_CreateGlobalTableCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_CreateGlobalTableOutput(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_CreateTableCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_CreateTableOutput(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_DeleteBackupCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_DeleteBackupOutput(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_DeleteItemCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_DeleteItemOutput(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_DeleteResourcePolicyCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = _json(data);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_DeleteTableCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_DeleteTableOutput(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_DescribeBackupCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_DescribeBackupOutput(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_DescribeContinuousBackupsCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_DescribeContinuousBackupsOutput(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_DescribeContributorInsightsCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_DescribeContributorInsightsOutput(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_DescribeEndpointsCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = _json(data);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_DescribeExportCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_DescribeExportOutput(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_DescribeGlobalTableCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_DescribeGlobalTableOutput(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_DescribeGlobalTableSettingsCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_DescribeGlobalTableSettingsOutput(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_DescribeImportCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_DescribeImportOutput(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_DescribeKinesisStreamingDestinationCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = _json(data);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_DescribeLimitsCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = _json(data);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_DescribeTableCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_DescribeTableOutput(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_DescribeTableReplicaAutoScalingCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_DescribeTableReplicaAutoScalingOutput(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_DescribeTimeToLiveCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = _json(data);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_DisableKinesisStreamingDestinationCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = _json(data);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_EnableKinesisStreamingDestinationCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = _json(data);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_ExecuteStatementCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_ExecuteStatementOutput(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_ExecuteTransactionCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_ExecuteTransactionOutput(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_ExportTableToPointInTimeCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_ExportTableToPointInTimeOutput(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_GetItemCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_GetItemOutput(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_GetResourcePolicyCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = _json(data);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_ImportTableCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_ImportTableOutput(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_ListBackupsCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_ListBackupsOutput(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_ListContributorInsightsCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = _json(data);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_ListExportsCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = _json(data);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_ListGlobalTablesCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = _json(data);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_ListImportsCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_ListImportsOutput(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_ListTablesCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = _json(data);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_ListTagsOfResourceCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = _json(data);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_PutItemCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_PutItemOutput(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_PutResourcePolicyCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = _json(data);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_QueryCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_QueryOutput(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_RestoreTableFromBackupCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_RestoreTableFromBackupOutput(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_RestoreTableToPointInTimeCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_RestoreTableToPointInTimeOutput(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_ScanCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_ScanOutput(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_TagResourceCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n await collectBody(output.body, context);\n const response = {\n $metadata: deserializeMetadata(output),\n };\n return response;\n};\nexport const de_TransactGetItemsCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_TransactGetItemsOutput(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_TransactWriteItemsCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_TransactWriteItemsOutput(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_UntagResourceCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n await collectBody(output.body, context);\n const response = {\n $metadata: deserializeMetadata(output),\n };\n return response;\n};\nexport const de_UpdateContinuousBackupsCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_UpdateContinuousBackupsOutput(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_UpdateContributorInsightsCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = _json(data);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_UpdateGlobalTableCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_UpdateGlobalTableOutput(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_UpdateGlobalTableSettingsCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_UpdateGlobalTableSettingsOutput(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_UpdateItemCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_UpdateItemOutput(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_UpdateKinesisStreamingDestinationCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = _json(data);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_UpdateTableCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_UpdateTableOutput(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_UpdateTableReplicaAutoScalingCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_UpdateTableReplicaAutoScalingOutput(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_UpdateTimeToLiveCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = _json(data);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nconst de_CommandError = async (output, context) => {\n const parsedOutput = {\n ...output,\n body: await parseErrorBody(output.body, context),\n };\n const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n switch (errorCode) {\n case \"InternalServerError\":\n case \"com.amazonaws.dynamodb#InternalServerError\":\n throw await de_InternalServerErrorRes(parsedOutput, context);\n case \"RequestLimitExceeded\":\n case \"com.amazonaws.dynamodb#RequestLimitExceeded\":\n throw await de_RequestLimitExceededRes(parsedOutput, context);\n case \"InvalidEndpointException\":\n case \"com.amazonaws.dynamodb#InvalidEndpointException\":\n throw await de_InvalidEndpointExceptionRes(parsedOutput, context);\n case \"ProvisionedThroughputExceededException\":\n case \"com.amazonaws.dynamodb#ProvisionedThroughputExceededException\":\n throw await de_ProvisionedThroughputExceededExceptionRes(parsedOutput, context);\n case \"ResourceNotFoundException\":\n case \"com.amazonaws.dynamodb#ResourceNotFoundException\":\n throw await de_ResourceNotFoundExceptionRes(parsedOutput, context);\n case \"ItemCollectionSizeLimitExceededException\":\n case \"com.amazonaws.dynamodb#ItemCollectionSizeLimitExceededException\":\n throw await de_ItemCollectionSizeLimitExceededExceptionRes(parsedOutput, context);\n case \"BackupInUseException\":\n case \"com.amazonaws.dynamodb#BackupInUseException\":\n throw await de_BackupInUseExceptionRes(parsedOutput, context);\n case \"ContinuousBackupsUnavailableException\":\n case \"com.amazonaws.dynamodb#ContinuousBackupsUnavailableException\":\n throw await de_ContinuousBackupsUnavailableExceptionRes(parsedOutput, context);\n case \"LimitExceededException\":\n case \"com.amazonaws.dynamodb#LimitExceededException\":\n throw await de_LimitExceededExceptionRes(parsedOutput, context);\n case \"TableInUseException\":\n case \"com.amazonaws.dynamodb#TableInUseException\":\n throw await de_TableInUseExceptionRes(parsedOutput, context);\n case \"TableNotFoundException\":\n case \"com.amazonaws.dynamodb#TableNotFoundException\":\n throw await de_TableNotFoundExceptionRes(parsedOutput, context);\n case \"GlobalTableAlreadyExistsException\":\n case \"com.amazonaws.dynamodb#GlobalTableAlreadyExistsException\":\n throw await de_GlobalTableAlreadyExistsExceptionRes(parsedOutput, context);\n case \"ResourceInUseException\":\n case \"com.amazonaws.dynamodb#ResourceInUseException\":\n throw await de_ResourceInUseExceptionRes(parsedOutput, context);\n case \"BackupNotFoundException\":\n case \"com.amazonaws.dynamodb#BackupNotFoundException\":\n throw await de_BackupNotFoundExceptionRes(parsedOutput, context);\n case \"ConditionalCheckFailedException\":\n case \"com.amazonaws.dynamodb#ConditionalCheckFailedException\":\n throw await de_ConditionalCheckFailedExceptionRes(parsedOutput, context);\n case \"TransactionConflictException\":\n case \"com.amazonaws.dynamodb#TransactionConflictException\":\n throw await de_TransactionConflictExceptionRes(parsedOutput, context);\n case \"PolicyNotFoundException\":\n case \"com.amazonaws.dynamodb#PolicyNotFoundException\":\n throw await de_PolicyNotFoundExceptionRes(parsedOutput, context);\n case \"ExportNotFoundException\":\n case \"com.amazonaws.dynamodb#ExportNotFoundException\":\n throw await de_ExportNotFoundExceptionRes(parsedOutput, context);\n case \"GlobalTableNotFoundException\":\n case \"com.amazonaws.dynamodb#GlobalTableNotFoundException\":\n throw await de_GlobalTableNotFoundExceptionRes(parsedOutput, context);\n case \"ImportNotFoundException\":\n case \"com.amazonaws.dynamodb#ImportNotFoundException\":\n throw await de_ImportNotFoundExceptionRes(parsedOutput, context);\n case \"DuplicateItemException\":\n case \"com.amazonaws.dynamodb#DuplicateItemException\":\n throw await de_DuplicateItemExceptionRes(parsedOutput, context);\n case \"IdempotentParameterMismatchException\":\n case \"com.amazonaws.dynamodb#IdempotentParameterMismatchException\":\n throw await de_IdempotentParameterMismatchExceptionRes(parsedOutput, context);\n case \"TransactionCanceledException\":\n case \"com.amazonaws.dynamodb#TransactionCanceledException\":\n throw await de_TransactionCanceledExceptionRes(parsedOutput, context);\n case \"TransactionInProgressException\":\n case \"com.amazonaws.dynamodb#TransactionInProgressException\":\n throw await de_TransactionInProgressExceptionRes(parsedOutput, context);\n case \"ExportConflictException\":\n case \"com.amazonaws.dynamodb#ExportConflictException\":\n throw await de_ExportConflictExceptionRes(parsedOutput, context);\n case \"InvalidExportTimeException\":\n case \"com.amazonaws.dynamodb#InvalidExportTimeException\":\n throw await de_InvalidExportTimeExceptionRes(parsedOutput, context);\n case \"PointInTimeRecoveryUnavailableException\":\n case \"com.amazonaws.dynamodb#PointInTimeRecoveryUnavailableException\":\n throw await de_PointInTimeRecoveryUnavailableExceptionRes(parsedOutput, context);\n case \"ImportConflictException\":\n case \"com.amazonaws.dynamodb#ImportConflictException\":\n throw await de_ImportConflictExceptionRes(parsedOutput, context);\n case \"TableAlreadyExistsException\":\n case \"com.amazonaws.dynamodb#TableAlreadyExistsException\":\n throw await de_TableAlreadyExistsExceptionRes(parsedOutput, context);\n case \"InvalidRestoreTimeException\":\n case \"com.amazonaws.dynamodb#InvalidRestoreTimeException\":\n throw await de_InvalidRestoreTimeExceptionRes(parsedOutput, context);\n case \"ReplicaAlreadyExistsException\":\n case \"com.amazonaws.dynamodb#ReplicaAlreadyExistsException\":\n throw await de_ReplicaAlreadyExistsExceptionRes(parsedOutput, context);\n case \"ReplicaNotFoundException\":\n case \"com.amazonaws.dynamodb#ReplicaNotFoundException\":\n throw await de_ReplicaNotFoundExceptionRes(parsedOutput, context);\n case \"IndexNotFoundException\":\n case \"com.amazonaws.dynamodb#IndexNotFoundException\":\n throw await de_IndexNotFoundExceptionRes(parsedOutput, context);\n default:\n const parsedBody = parsedOutput.body;\n return throwDefaultError({\n output,\n parsedBody,\n errorCode,\n });\n }\n};\nconst de_BackupInUseExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new BackupInUseException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_BackupNotFoundExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new BackupNotFoundException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_ConditionalCheckFailedExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = de_ConditionalCheckFailedException(body, context);\n const exception = new ConditionalCheckFailedException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_ContinuousBackupsUnavailableExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new ContinuousBackupsUnavailableException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_DuplicateItemExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new DuplicateItemException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_ExportConflictExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new ExportConflictException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_ExportNotFoundExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new ExportNotFoundException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_GlobalTableAlreadyExistsExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new GlobalTableAlreadyExistsException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_GlobalTableNotFoundExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new GlobalTableNotFoundException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_IdempotentParameterMismatchExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new IdempotentParameterMismatchException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_ImportConflictExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new ImportConflictException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_ImportNotFoundExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new ImportNotFoundException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_IndexNotFoundExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new IndexNotFoundException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_InternalServerErrorRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new InternalServerError({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_InvalidEndpointExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new InvalidEndpointException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_InvalidExportTimeExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new InvalidExportTimeException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_InvalidRestoreTimeExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new InvalidRestoreTimeException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_ItemCollectionSizeLimitExceededExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new ItemCollectionSizeLimitExceededException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_LimitExceededExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new LimitExceededException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_PointInTimeRecoveryUnavailableExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new PointInTimeRecoveryUnavailableException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_PolicyNotFoundExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new PolicyNotFoundException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_ProvisionedThroughputExceededExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new ProvisionedThroughputExceededException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_ReplicaAlreadyExistsExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new ReplicaAlreadyExistsException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_ReplicaNotFoundExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new ReplicaNotFoundException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_RequestLimitExceededRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new RequestLimitExceeded({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_ResourceInUseExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new ResourceInUseException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_ResourceNotFoundExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new ResourceNotFoundException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_TableAlreadyExistsExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new TableAlreadyExistsException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_TableInUseExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new TableInUseException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_TableNotFoundExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new TableNotFoundException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_TransactionCanceledExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = de_TransactionCanceledException(body, context);\n const exception = new TransactionCanceledException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_TransactionConflictExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new TransactionConflictException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_TransactionInProgressExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new TransactionInProgressException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst se_AttributeUpdates = (input, context) => {\n return Object.entries(input).reduce((acc, [key, value]) => {\n if (value === null) {\n return acc;\n }\n acc[key] = se_AttributeValueUpdate(value, context);\n return acc;\n }, {});\n};\nconst se_AttributeValue = (input, context) => {\n return AttributeValue.visit(input, {\n B: (value) => ({ B: context.base64Encoder(value) }),\n BOOL: (value) => ({ BOOL: value }),\n BS: (value) => ({ BS: se_BinarySetAttributeValue(value, context) }),\n L: (value) => ({ L: se_ListAttributeValue(value, context) }),\n M: (value) => ({ M: se_MapAttributeValue(value, context) }),\n N: (value) => ({ N: value }),\n NS: (value) => ({ NS: _json(value) }),\n NULL: (value) => ({ NULL: value }),\n S: (value) => ({ S: value }),\n SS: (value) => ({ SS: _json(value) }),\n _: (name, value) => ({ name: value }),\n });\n};\nconst se_AttributeValueList = (input, context) => {\n return input\n .filter((e) => e != null)\n .map((entry) => {\n return se_AttributeValue(entry, context);\n });\n};\nconst se_AttributeValueUpdate = (input, context) => {\n return take(input, {\n Action: [],\n Value: (_) => se_AttributeValue(_, context),\n });\n};\nconst se_AutoScalingPolicyUpdate = (input, context) => {\n return take(input, {\n PolicyName: [],\n TargetTrackingScalingPolicyConfiguration: (_) => se_AutoScalingTargetTrackingScalingPolicyConfigurationUpdate(_, context),\n });\n};\nconst se_AutoScalingSettingsUpdate = (input, context) => {\n return take(input, {\n AutoScalingDisabled: [],\n AutoScalingRoleArn: [],\n MaximumUnits: [],\n MinimumUnits: [],\n ScalingPolicyUpdate: (_) => se_AutoScalingPolicyUpdate(_, context),\n });\n};\nconst se_AutoScalingTargetTrackingScalingPolicyConfigurationUpdate = (input, context) => {\n return take(input, {\n DisableScaleIn: [],\n ScaleInCooldown: [],\n ScaleOutCooldown: [],\n TargetValue: __serializeFloat,\n });\n};\nconst se_BatchExecuteStatementInput = (input, context) => {\n return take(input, {\n ReturnConsumedCapacity: [],\n Statements: (_) => se_PartiQLBatchRequest(_, context),\n });\n};\nconst se_BatchGetItemInput = (input, context) => {\n return take(input, {\n RequestItems: (_) => se_BatchGetRequestMap(_, context),\n ReturnConsumedCapacity: [],\n });\n};\nconst se_BatchGetRequestMap = (input, context) => {\n return Object.entries(input).reduce((acc, [key, value]) => {\n if (value === null) {\n return acc;\n }\n acc[key] = se_KeysAndAttributes(value, context);\n return acc;\n }, {});\n};\nconst se_BatchStatementRequest = (input, context) => {\n return take(input, {\n ConsistentRead: [],\n Parameters: (_) => se_PreparedStatementParameters(_, context),\n ReturnValuesOnConditionCheckFailure: [],\n Statement: [],\n });\n};\nconst se_BatchWriteItemInput = (input, context) => {\n return take(input, {\n RequestItems: (_) => se_BatchWriteItemRequestMap(_, context),\n ReturnConsumedCapacity: [],\n ReturnItemCollectionMetrics: [],\n });\n};\nconst se_BatchWriteItemRequestMap = (input, context) => {\n return Object.entries(input).reduce((acc, [key, value]) => {\n if (value === null) {\n return acc;\n }\n acc[key] = se_WriteRequests(value, context);\n return acc;\n }, {});\n};\nconst se_BinarySetAttributeValue = (input, context) => {\n return input\n .filter((e) => e != null)\n .map((entry) => {\n return context.base64Encoder(entry);\n });\n};\nconst se_Condition = (input, context) => {\n return take(input, {\n AttributeValueList: (_) => se_AttributeValueList(_, context),\n ComparisonOperator: [],\n });\n};\nconst se_ConditionCheck = (input, context) => {\n return take(input, {\n ConditionExpression: [],\n ExpressionAttributeNames: _json,\n ExpressionAttributeValues: (_) => se_ExpressionAttributeValueMap(_, context),\n Key: (_) => se_Key(_, context),\n ReturnValuesOnConditionCheckFailure: [],\n TableName: [],\n });\n};\nconst se_Delete = (input, context) => {\n return take(input, {\n ConditionExpression: [],\n ExpressionAttributeNames: _json,\n ExpressionAttributeValues: (_) => se_ExpressionAttributeValueMap(_, context),\n Key: (_) => se_Key(_, context),\n ReturnValuesOnConditionCheckFailure: [],\n TableName: [],\n });\n};\nconst se_DeleteItemInput = (input, context) => {\n return take(input, {\n ConditionExpression: [],\n ConditionalOperator: [],\n Expected: (_) => se_ExpectedAttributeMap(_, context),\n ExpressionAttributeNames: _json,\n ExpressionAttributeValues: (_) => se_ExpressionAttributeValueMap(_, context),\n Key: (_) => se_Key(_, context),\n ReturnConsumedCapacity: [],\n ReturnItemCollectionMetrics: [],\n ReturnValues: [],\n ReturnValuesOnConditionCheckFailure: [],\n TableName: [],\n });\n};\nconst se_DeleteRequest = (input, context) => {\n return take(input, {\n Key: (_) => se_Key(_, context),\n });\n};\nconst se_ExecuteStatementInput = (input, context) => {\n return take(input, {\n ConsistentRead: [],\n Limit: [],\n NextToken: [],\n Parameters: (_) => se_PreparedStatementParameters(_, context),\n ReturnConsumedCapacity: [],\n ReturnValuesOnConditionCheckFailure: [],\n Statement: [],\n });\n};\nconst se_ExecuteTransactionInput = (input, context) => {\n return take(input, {\n ClientRequestToken: [true, (_) => _ ?? generateIdempotencyToken()],\n ReturnConsumedCapacity: [],\n TransactStatements: (_) => se_ParameterizedStatements(_, context),\n });\n};\nconst se_ExpectedAttributeMap = (input, context) => {\n return Object.entries(input).reduce((acc, [key, value]) => {\n if (value === null) {\n return acc;\n }\n acc[key] = se_ExpectedAttributeValue(value, context);\n return acc;\n }, {});\n};\nconst se_ExpectedAttributeValue = (input, context) => {\n return take(input, {\n AttributeValueList: (_) => se_AttributeValueList(_, context),\n ComparisonOperator: [],\n Exists: [],\n Value: (_) => se_AttributeValue(_, context),\n });\n};\nconst se_ExportTableToPointInTimeInput = (input, context) => {\n return take(input, {\n ClientToken: [true, (_) => _ ?? generateIdempotencyToken()],\n ExportFormat: [],\n ExportTime: (_) => _.getTime() / 1000,\n ExportType: [],\n IncrementalExportSpecification: (_) => se_IncrementalExportSpecification(_, context),\n S3Bucket: [],\n S3BucketOwner: [],\n S3Prefix: [],\n S3SseAlgorithm: [],\n S3SseKmsKeyId: [],\n TableArn: [],\n });\n};\nconst se_ExpressionAttributeValueMap = (input, context) => {\n return Object.entries(input).reduce((acc, [key, value]) => {\n if (value === null) {\n return acc;\n }\n acc[key] = se_AttributeValue(value, context);\n return acc;\n }, {});\n};\nconst se_FilterConditionMap = (input, context) => {\n return Object.entries(input).reduce((acc, [key, value]) => {\n if (value === null) {\n return acc;\n }\n acc[key] = se_Condition(value, context);\n return acc;\n }, {});\n};\nconst se_Get = (input, context) => {\n return take(input, {\n ExpressionAttributeNames: _json,\n Key: (_) => se_Key(_, context),\n ProjectionExpression: [],\n TableName: [],\n });\n};\nconst se_GetItemInput = (input, context) => {\n return take(input, {\n AttributesToGet: _json,\n ConsistentRead: [],\n ExpressionAttributeNames: _json,\n Key: (_) => se_Key(_, context),\n ProjectionExpression: [],\n ReturnConsumedCapacity: [],\n TableName: [],\n });\n};\nconst se_GlobalSecondaryIndexAutoScalingUpdate = (input, context) => {\n return take(input, {\n IndexName: [],\n ProvisionedWriteCapacityAutoScalingUpdate: (_) => se_AutoScalingSettingsUpdate(_, context),\n });\n};\nconst se_GlobalSecondaryIndexAutoScalingUpdateList = (input, context) => {\n return input\n .filter((e) => e != null)\n .map((entry) => {\n return se_GlobalSecondaryIndexAutoScalingUpdate(entry, context);\n });\n};\nconst se_GlobalTableGlobalSecondaryIndexSettingsUpdate = (input, context) => {\n return take(input, {\n IndexName: [],\n ProvisionedWriteCapacityAutoScalingSettingsUpdate: (_) => se_AutoScalingSettingsUpdate(_, context),\n ProvisionedWriteCapacityUnits: [],\n });\n};\nconst se_GlobalTableGlobalSecondaryIndexSettingsUpdateList = (input, context) => {\n return input\n .filter((e) => e != null)\n .map((entry) => {\n return se_GlobalTableGlobalSecondaryIndexSettingsUpdate(entry, context);\n });\n};\nconst se_ImportTableInput = (input, context) => {\n return take(input, {\n ClientToken: [true, (_) => _ ?? generateIdempotencyToken()],\n InputCompressionType: [],\n InputFormat: [],\n InputFormatOptions: _json,\n S3BucketSource: _json,\n TableCreationParameters: _json,\n });\n};\nconst se_IncrementalExportSpecification = (input, context) => {\n return take(input, {\n ExportFromTime: (_) => _.getTime() / 1000,\n ExportToTime: (_) => _.getTime() / 1000,\n ExportViewType: [],\n });\n};\nconst se_Key = (input, context) => {\n return Object.entries(input).reduce((acc, [key, value]) => {\n if (value === null) {\n return acc;\n }\n acc[key] = se_AttributeValue(value, context);\n return acc;\n }, {});\n};\nconst se_KeyConditions = (input, context) => {\n return Object.entries(input).reduce((acc, [key, value]) => {\n if (value === null) {\n return acc;\n }\n acc[key] = se_Condition(value, context);\n return acc;\n }, {});\n};\nconst se_KeyList = (input, context) => {\n return input\n .filter((e) => e != null)\n .map((entry) => {\n return se_Key(entry, context);\n });\n};\nconst se_KeysAndAttributes = (input, context) => {\n return take(input, {\n AttributesToGet: _json,\n ConsistentRead: [],\n ExpressionAttributeNames: _json,\n Keys: (_) => se_KeyList(_, context),\n ProjectionExpression: [],\n });\n};\nconst se_ListAttributeValue = (input, context) => {\n return input\n .filter((e) => e != null)\n .map((entry) => {\n return se_AttributeValue(entry, context);\n });\n};\nconst se_ListBackupsInput = (input, context) => {\n return take(input, {\n BackupType: [],\n ExclusiveStartBackupArn: [],\n Limit: [],\n TableName: [],\n TimeRangeLowerBound: (_) => _.getTime() / 1000,\n TimeRangeUpperBound: (_) => _.getTime() / 1000,\n });\n};\nconst se_MapAttributeValue = (input, context) => {\n return Object.entries(input).reduce((acc, [key, value]) => {\n if (value === null) {\n return acc;\n }\n acc[key] = se_AttributeValue(value, context);\n return acc;\n }, {});\n};\nconst se_ParameterizedStatement = (input, context) => {\n return take(input, {\n Parameters: (_) => se_PreparedStatementParameters(_, context),\n ReturnValuesOnConditionCheckFailure: [],\n Statement: [],\n });\n};\nconst se_ParameterizedStatements = (input, context) => {\n return input\n .filter((e) => e != null)\n .map((entry) => {\n return se_ParameterizedStatement(entry, context);\n });\n};\nconst se_PartiQLBatchRequest = (input, context) => {\n return input\n .filter((e) => e != null)\n .map((entry) => {\n return se_BatchStatementRequest(entry, context);\n });\n};\nconst se_PreparedStatementParameters = (input, context) => {\n return input\n .filter((e) => e != null)\n .map((entry) => {\n return se_AttributeValue(entry, context);\n });\n};\nconst se_Put = (input, context) => {\n return take(input, {\n ConditionExpression: [],\n ExpressionAttributeNames: _json,\n ExpressionAttributeValues: (_) => se_ExpressionAttributeValueMap(_, context),\n Item: (_) => se_PutItemInputAttributeMap(_, context),\n ReturnValuesOnConditionCheckFailure: [],\n TableName: [],\n });\n};\nconst se_PutItemInput = (input, context) => {\n return take(input, {\n ConditionExpression: [],\n ConditionalOperator: [],\n Expected: (_) => se_ExpectedAttributeMap(_, context),\n ExpressionAttributeNames: _json,\n ExpressionAttributeValues: (_) => se_ExpressionAttributeValueMap(_, context),\n Item: (_) => se_PutItemInputAttributeMap(_, context),\n ReturnConsumedCapacity: [],\n ReturnItemCollectionMetrics: [],\n ReturnValues: [],\n ReturnValuesOnConditionCheckFailure: [],\n TableName: [],\n });\n};\nconst se_PutItemInputAttributeMap = (input, context) => {\n return Object.entries(input).reduce((acc, [key, value]) => {\n if (value === null) {\n return acc;\n }\n acc[key] = se_AttributeValue(value, context);\n return acc;\n }, {});\n};\nconst se_PutRequest = (input, context) => {\n return take(input, {\n Item: (_) => se_PutItemInputAttributeMap(_, context),\n });\n};\nconst se_QueryInput = (input, context) => {\n return take(input, {\n AttributesToGet: _json,\n ConditionalOperator: [],\n ConsistentRead: [],\n ExclusiveStartKey: (_) => se_Key(_, context),\n ExpressionAttributeNames: _json,\n ExpressionAttributeValues: (_) => se_ExpressionAttributeValueMap(_, context),\n FilterExpression: [],\n IndexName: [],\n KeyConditionExpression: [],\n KeyConditions: (_) => se_KeyConditions(_, context),\n Limit: [],\n ProjectionExpression: [],\n QueryFilter: (_) => se_FilterConditionMap(_, context),\n ReturnConsumedCapacity: [],\n ScanIndexForward: [],\n Select: [],\n TableName: [],\n });\n};\nconst se_ReplicaAutoScalingUpdate = (input, context) => {\n return take(input, {\n RegionName: [],\n ReplicaGlobalSecondaryIndexUpdates: (_) => se_ReplicaGlobalSecondaryIndexAutoScalingUpdateList(_, context),\n ReplicaProvisionedReadCapacityAutoScalingUpdate: (_) => se_AutoScalingSettingsUpdate(_, context),\n });\n};\nconst se_ReplicaAutoScalingUpdateList = (input, context) => {\n return input\n .filter((e) => e != null)\n .map((entry) => {\n return se_ReplicaAutoScalingUpdate(entry, context);\n });\n};\nconst se_ReplicaGlobalSecondaryIndexAutoScalingUpdate = (input, context) => {\n return take(input, {\n IndexName: [],\n ProvisionedReadCapacityAutoScalingUpdate: (_) => se_AutoScalingSettingsUpdate(_, context),\n });\n};\nconst se_ReplicaGlobalSecondaryIndexAutoScalingUpdateList = (input, context) => {\n return input\n .filter((e) => e != null)\n .map((entry) => {\n return se_ReplicaGlobalSecondaryIndexAutoScalingUpdate(entry, context);\n });\n};\nconst se_ReplicaGlobalSecondaryIndexSettingsUpdate = (input, context) => {\n return take(input, {\n IndexName: [],\n ProvisionedReadCapacityAutoScalingSettingsUpdate: (_) => se_AutoScalingSettingsUpdate(_, context),\n ProvisionedReadCapacityUnits: [],\n });\n};\nconst se_ReplicaGlobalSecondaryIndexSettingsUpdateList = (input, context) => {\n return input\n .filter((e) => e != null)\n .map((entry) => {\n return se_ReplicaGlobalSecondaryIndexSettingsUpdate(entry, context);\n });\n};\nconst se_ReplicaSettingsUpdate = (input, context) => {\n return take(input, {\n RegionName: [],\n ReplicaGlobalSecondaryIndexSettingsUpdate: (_) => se_ReplicaGlobalSecondaryIndexSettingsUpdateList(_, context),\n ReplicaProvisionedReadCapacityAutoScalingSettingsUpdate: (_) => se_AutoScalingSettingsUpdate(_, context),\n ReplicaProvisionedReadCapacityUnits: [],\n ReplicaTableClass: [],\n });\n};\nconst se_ReplicaSettingsUpdateList = (input, context) => {\n return input\n .filter((e) => e != null)\n .map((entry) => {\n return se_ReplicaSettingsUpdate(entry, context);\n });\n};\nconst se_RestoreTableToPointInTimeInput = (input, context) => {\n return take(input, {\n BillingModeOverride: [],\n GlobalSecondaryIndexOverride: _json,\n LocalSecondaryIndexOverride: _json,\n OnDemandThroughputOverride: _json,\n ProvisionedThroughputOverride: _json,\n RestoreDateTime: (_) => _.getTime() / 1000,\n SSESpecificationOverride: _json,\n SourceTableArn: [],\n SourceTableName: [],\n TargetTableName: [],\n UseLatestRestorableTime: [],\n });\n};\nconst se_ScanInput = (input, context) => {\n return take(input, {\n AttributesToGet: _json,\n ConditionalOperator: [],\n ConsistentRead: [],\n ExclusiveStartKey: (_) => se_Key(_, context),\n ExpressionAttributeNames: _json,\n ExpressionAttributeValues: (_) => se_ExpressionAttributeValueMap(_, context),\n FilterExpression: [],\n IndexName: [],\n Limit: [],\n ProjectionExpression: [],\n ReturnConsumedCapacity: [],\n ScanFilter: (_) => se_FilterConditionMap(_, context),\n Segment: [],\n Select: [],\n TableName: [],\n TotalSegments: [],\n });\n};\nconst se_TransactGetItem = (input, context) => {\n return take(input, {\n Get: (_) => se_Get(_, context),\n });\n};\nconst se_TransactGetItemList = (input, context) => {\n return input\n .filter((e) => e != null)\n .map((entry) => {\n return se_TransactGetItem(entry, context);\n });\n};\nconst se_TransactGetItemsInput = (input, context) => {\n return take(input, {\n ReturnConsumedCapacity: [],\n TransactItems: (_) => se_TransactGetItemList(_, context),\n });\n};\nconst se_TransactWriteItem = (input, context) => {\n return take(input, {\n ConditionCheck: (_) => se_ConditionCheck(_, context),\n Delete: (_) => se_Delete(_, context),\n Put: (_) => se_Put(_, context),\n Update: (_) => se_Update(_, context),\n });\n};\nconst se_TransactWriteItemList = (input, context) => {\n return input\n .filter((e) => e != null)\n .map((entry) => {\n return se_TransactWriteItem(entry, context);\n });\n};\nconst se_TransactWriteItemsInput = (input, context) => {\n return take(input, {\n ClientRequestToken: [true, (_) => _ ?? generateIdempotencyToken()],\n ReturnConsumedCapacity: [],\n ReturnItemCollectionMetrics: [],\n TransactItems: (_) => se_TransactWriteItemList(_, context),\n });\n};\nconst se_Update = (input, context) => {\n return take(input, {\n ConditionExpression: [],\n ExpressionAttributeNames: _json,\n ExpressionAttributeValues: (_) => se_ExpressionAttributeValueMap(_, context),\n Key: (_) => se_Key(_, context),\n ReturnValuesOnConditionCheckFailure: [],\n TableName: [],\n UpdateExpression: [],\n });\n};\nconst se_UpdateGlobalTableSettingsInput = (input, context) => {\n return take(input, {\n GlobalTableBillingMode: [],\n GlobalTableGlobalSecondaryIndexSettingsUpdate: (_) => se_GlobalTableGlobalSecondaryIndexSettingsUpdateList(_, context),\n GlobalTableName: [],\n GlobalTableProvisionedWriteCapacityAutoScalingSettingsUpdate: (_) => se_AutoScalingSettingsUpdate(_, context),\n GlobalTableProvisionedWriteCapacityUnits: [],\n ReplicaSettingsUpdate: (_) => se_ReplicaSettingsUpdateList(_, context),\n });\n};\nconst se_UpdateItemInput = (input, context) => {\n return take(input, {\n AttributeUpdates: (_) => se_AttributeUpdates(_, context),\n ConditionExpression: [],\n ConditionalOperator: [],\n Expected: (_) => se_ExpectedAttributeMap(_, context),\n ExpressionAttributeNames: _json,\n ExpressionAttributeValues: (_) => se_ExpressionAttributeValueMap(_, context),\n Key: (_) => se_Key(_, context),\n ReturnConsumedCapacity: [],\n ReturnItemCollectionMetrics: [],\n ReturnValues: [],\n ReturnValuesOnConditionCheckFailure: [],\n TableName: [],\n UpdateExpression: [],\n });\n};\nconst se_UpdateTableReplicaAutoScalingInput = (input, context) => {\n return take(input, {\n GlobalSecondaryIndexUpdates: (_) => se_GlobalSecondaryIndexAutoScalingUpdateList(_, context),\n ProvisionedWriteCapacityAutoScalingUpdate: (_) => se_AutoScalingSettingsUpdate(_, context),\n ReplicaUpdates: (_) => se_ReplicaAutoScalingUpdateList(_, context),\n TableName: [],\n });\n};\nconst se_WriteRequest = (input, context) => {\n return take(input, {\n DeleteRequest: (_) => se_DeleteRequest(_, context),\n PutRequest: (_) => se_PutRequest(_, context),\n });\n};\nconst se_WriteRequests = (input, context) => {\n return input\n .filter((e) => e != null)\n .map((entry) => {\n return se_WriteRequest(entry, context);\n });\n};\nconst de_ArchivalSummary = (output, context) => {\n return take(output, {\n ArchivalBackupArn: __expectString,\n ArchivalDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n ArchivalReason: __expectString,\n });\n};\nconst de_AttributeMap = (output, context) => {\n return Object.entries(output).reduce((acc, [key, value]) => {\n if (value === null) {\n return acc;\n }\n acc[key] = de_AttributeValue(__expectUnion(value), context);\n return acc;\n }, {});\n};\nconst de_AttributeValue = (output, context) => {\n if (output.B != null) {\n return {\n B: context.base64Decoder(output.B),\n };\n }\n if (__expectBoolean(output.BOOL) !== undefined) {\n return { BOOL: __expectBoolean(output.BOOL) };\n }\n if (output.BS != null) {\n return {\n BS: de_BinarySetAttributeValue(output.BS, context),\n };\n }\n if (output.L != null) {\n return {\n L: de_ListAttributeValue(output.L, context),\n };\n }\n if (output.M != null) {\n return {\n M: de_MapAttributeValue(output.M, context),\n };\n }\n if (__expectString(output.N) !== undefined) {\n return { N: __expectString(output.N) };\n }\n if (output.NS != null) {\n return {\n NS: _json(output.NS),\n };\n }\n if (__expectBoolean(output.NULL) !== undefined) {\n return { NULL: __expectBoolean(output.NULL) };\n }\n if (__expectString(output.S) !== undefined) {\n return { S: __expectString(output.S) };\n }\n if (output.SS != null) {\n return {\n SS: _json(output.SS),\n };\n }\n return { $unknown: Object.entries(output)[0] };\n};\nconst de_AutoScalingPolicyDescription = (output, context) => {\n return take(output, {\n PolicyName: __expectString,\n TargetTrackingScalingPolicyConfiguration: (_) => de_AutoScalingTargetTrackingScalingPolicyConfigurationDescription(_, context),\n });\n};\nconst de_AutoScalingPolicyDescriptionList = (output, context) => {\n const retVal = (output || [])\n .filter((e) => e != null)\n .map((entry) => {\n return de_AutoScalingPolicyDescription(entry, context);\n });\n return retVal;\n};\nconst de_AutoScalingSettingsDescription = (output, context) => {\n return take(output, {\n AutoScalingDisabled: __expectBoolean,\n AutoScalingRoleArn: __expectString,\n MaximumUnits: __expectLong,\n MinimumUnits: __expectLong,\n ScalingPolicies: (_) => de_AutoScalingPolicyDescriptionList(_, context),\n });\n};\nconst de_AutoScalingTargetTrackingScalingPolicyConfigurationDescription = (output, context) => {\n return take(output, {\n DisableScaleIn: __expectBoolean,\n ScaleInCooldown: __expectInt32,\n ScaleOutCooldown: __expectInt32,\n TargetValue: __limitedParseDouble,\n });\n};\nconst de_BackupDescription = (output, context) => {\n return take(output, {\n BackupDetails: (_) => de_BackupDetails(_, context),\n SourceTableDetails: (_) => de_SourceTableDetails(_, context),\n SourceTableFeatureDetails: (_) => de_SourceTableFeatureDetails(_, context),\n });\n};\nconst de_BackupDetails = (output, context) => {\n return take(output, {\n BackupArn: __expectString,\n BackupCreationDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n BackupExpiryDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n BackupName: __expectString,\n BackupSizeBytes: __expectLong,\n BackupStatus: __expectString,\n BackupType: __expectString,\n });\n};\nconst de_BackupSummaries = (output, context) => {\n const retVal = (output || [])\n .filter((e) => e != null)\n .map((entry) => {\n return de_BackupSummary(entry, context);\n });\n return retVal;\n};\nconst de_BackupSummary = (output, context) => {\n return take(output, {\n BackupArn: __expectString,\n BackupCreationDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n BackupExpiryDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n BackupName: __expectString,\n BackupSizeBytes: __expectLong,\n BackupStatus: __expectString,\n BackupType: __expectString,\n TableArn: __expectString,\n TableId: __expectString,\n TableName: __expectString,\n });\n};\nconst de_BatchExecuteStatementOutput = (output, context) => {\n return take(output, {\n ConsumedCapacity: (_) => de_ConsumedCapacityMultiple(_, context),\n Responses: (_) => de_PartiQLBatchResponse(_, context),\n });\n};\nconst de_BatchGetItemOutput = (output, context) => {\n return take(output, {\n ConsumedCapacity: (_) => de_ConsumedCapacityMultiple(_, context),\n Responses: (_) => de_BatchGetResponseMap(_, context),\n UnprocessedKeys: (_) => de_BatchGetRequestMap(_, context),\n });\n};\nconst de_BatchGetRequestMap = (output, context) => {\n return Object.entries(output).reduce((acc, [key, value]) => {\n if (value === null) {\n return acc;\n }\n acc[key] = de_KeysAndAttributes(value, context);\n return acc;\n }, {});\n};\nconst de_BatchGetResponseMap = (output, context) => {\n return Object.entries(output).reduce((acc, [key, value]) => {\n if (value === null) {\n return acc;\n }\n acc[key] = de_ItemList(value, context);\n return acc;\n }, {});\n};\nconst de_BatchStatementError = (output, context) => {\n return take(output, {\n Code: __expectString,\n Item: (_) => de_AttributeMap(_, context),\n Message: __expectString,\n });\n};\nconst de_BatchStatementResponse = (output, context) => {\n return take(output, {\n Error: (_) => de_BatchStatementError(_, context),\n Item: (_) => de_AttributeMap(_, context),\n TableName: __expectString,\n });\n};\nconst de_BatchWriteItemOutput = (output, context) => {\n return take(output, {\n ConsumedCapacity: (_) => de_ConsumedCapacityMultiple(_, context),\n ItemCollectionMetrics: (_) => de_ItemCollectionMetricsPerTable(_, context),\n UnprocessedItems: (_) => de_BatchWriteItemRequestMap(_, context),\n });\n};\nconst de_BatchWriteItemRequestMap = (output, context) => {\n return Object.entries(output).reduce((acc, [key, value]) => {\n if (value === null) {\n return acc;\n }\n acc[key] = de_WriteRequests(value, context);\n return acc;\n }, {});\n};\nconst de_BillingModeSummary = (output, context) => {\n return take(output, {\n BillingMode: __expectString,\n LastUpdateToPayPerRequestDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n });\n};\nconst de_BinarySetAttributeValue = (output, context) => {\n const retVal = (output || [])\n .filter((e) => e != null)\n .map((entry) => {\n return context.base64Decoder(entry);\n });\n return retVal;\n};\nconst de_CancellationReason = (output, context) => {\n return take(output, {\n Code: __expectString,\n Item: (_) => de_AttributeMap(_, context),\n Message: __expectString,\n });\n};\nconst de_CancellationReasonList = (output, context) => {\n const retVal = (output || [])\n .filter((e) => e != null)\n .map((entry) => {\n return de_CancellationReason(entry, context);\n });\n return retVal;\n};\nconst de_Capacity = (output, context) => {\n return take(output, {\n CapacityUnits: __limitedParseDouble,\n ReadCapacityUnits: __limitedParseDouble,\n WriteCapacityUnits: __limitedParseDouble,\n });\n};\nconst de_ConditionalCheckFailedException = (output, context) => {\n return take(output, {\n Item: (_) => de_AttributeMap(_, context),\n message: __expectString,\n });\n};\nconst de_ConsumedCapacity = (output, context) => {\n return take(output, {\n CapacityUnits: __limitedParseDouble,\n GlobalSecondaryIndexes: (_) => de_SecondaryIndexesCapacityMap(_, context),\n LocalSecondaryIndexes: (_) => de_SecondaryIndexesCapacityMap(_, context),\n ReadCapacityUnits: __limitedParseDouble,\n Table: (_) => de_Capacity(_, context),\n TableName: __expectString,\n WriteCapacityUnits: __limitedParseDouble,\n });\n};\nconst de_ConsumedCapacityMultiple = (output, context) => {\n const retVal = (output || [])\n .filter((e) => e != null)\n .map((entry) => {\n return de_ConsumedCapacity(entry, context);\n });\n return retVal;\n};\nconst de_ContinuousBackupsDescription = (output, context) => {\n return take(output, {\n ContinuousBackupsStatus: __expectString,\n PointInTimeRecoveryDescription: (_) => de_PointInTimeRecoveryDescription(_, context),\n });\n};\nconst de_CreateBackupOutput = (output, context) => {\n return take(output, {\n BackupDetails: (_) => de_BackupDetails(_, context),\n });\n};\nconst de_CreateGlobalTableOutput = (output, context) => {\n return take(output, {\n GlobalTableDescription: (_) => de_GlobalTableDescription(_, context),\n });\n};\nconst de_CreateTableOutput = (output, context) => {\n return take(output, {\n TableDescription: (_) => de_TableDescription(_, context),\n });\n};\nconst de_DeleteBackupOutput = (output, context) => {\n return take(output, {\n BackupDescription: (_) => de_BackupDescription(_, context),\n });\n};\nconst de_DeleteItemOutput = (output, context) => {\n return take(output, {\n Attributes: (_) => de_AttributeMap(_, context),\n ConsumedCapacity: (_) => de_ConsumedCapacity(_, context),\n ItemCollectionMetrics: (_) => de_ItemCollectionMetrics(_, context),\n });\n};\nconst de_DeleteRequest = (output, context) => {\n return take(output, {\n Key: (_) => de_Key(_, context),\n });\n};\nconst de_DeleteTableOutput = (output, context) => {\n return take(output, {\n TableDescription: (_) => de_TableDescription(_, context),\n });\n};\nconst de_DescribeBackupOutput = (output, context) => {\n return take(output, {\n BackupDescription: (_) => de_BackupDescription(_, context),\n });\n};\nconst de_DescribeContinuousBackupsOutput = (output, context) => {\n return take(output, {\n ContinuousBackupsDescription: (_) => de_ContinuousBackupsDescription(_, context),\n });\n};\nconst de_DescribeContributorInsightsOutput = (output, context) => {\n return take(output, {\n ContributorInsightsRuleList: _json,\n ContributorInsightsStatus: __expectString,\n FailureException: _json,\n IndexName: __expectString,\n LastUpdateDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n TableName: __expectString,\n });\n};\nconst de_DescribeExportOutput = (output, context) => {\n return take(output, {\n ExportDescription: (_) => de_ExportDescription(_, context),\n });\n};\nconst de_DescribeGlobalTableOutput = (output, context) => {\n return take(output, {\n GlobalTableDescription: (_) => de_GlobalTableDescription(_, context),\n });\n};\nconst de_DescribeGlobalTableSettingsOutput = (output, context) => {\n return take(output, {\n GlobalTableName: __expectString,\n ReplicaSettings: (_) => de_ReplicaSettingsDescriptionList(_, context),\n });\n};\nconst de_DescribeImportOutput = (output, context) => {\n return take(output, {\n ImportTableDescription: (_) => de_ImportTableDescription(_, context),\n });\n};\nconst de_DescribeTableOutput = (output, context) => {\n return take(output, {\n Table: (_) => de_TableDescription(_, context),\n });\n};\nconst de_DescribeTableReplicaAutoScalingOutput = (output, context) => {\n return take(output, {\n TableAutoScalingDescription: (_) => de_TableAutoScalingDescription(_, context),\n });\n};\nconst de_ExecuteStatementOutput = (output, context) => {\n return take(output, {\n ConsumedCapacity: (_) => de_ConsumedCapacity(_, context),\n Items: (_) => de_ItemList(_, context),\n LastEvaluatedKey: (_) => de_Key(_, context),\n NextToken: __expectString,\n });\n};\nconst de_ExecuteTransactionOutput = (output, context) => {\n return take(output, {\n ConsumedCapacity: (_) => de_ConsumedCapacityMultiple(_, context),\n Responses: (_) => de_ItemResponseList(_, context),\n });\n};\nconst de_ExportDescription = (output, context) => {\n return take(output, {\n BilledSizeBytes: __expectLong,\n ClientToken: __expectString,\n EndTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n ExportArn: __expectString,\n ExportFormat: __expectString,\n ExportManifest: __expectString,\n ExportStatus: __expectString,\n ExportTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n ExportType: __expectString,\n FailureCode: __expectString,\n FailureMessage: __expectString,\n IncrementalExportSpecification: (_) => de_IncrementalExportSpecification(_, context),\n ItemCount: __expectLong,\n S3Bucket: __expectString,\n S3BucketOwner: __expectString,\n S3Prefix: __expectString,\n S3SseAlgorithm: __expectString,\n S3SseKmsKeyId: __expectString,\n StartTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n TableArn: __expectString,\n TableId: __expectString,\n });\n};\nconst de_ExportTableToPointInTimeOutput = (output, context) => {\n return take(output, {\n ExportDescription: (_) => de_ExportDescription(_, context),\n });\n};\nconst de_GetItemOutput = (output, context) => {\n return take(output, {\n ConsumedCapacity: (_) => de_ConsumedCapacity(_, context),\n Item: (_) => de_AttributeMap(_, context),\n });\n};\nconst de_GlobalSecondaryIndexDescription = (output, context) => {\n return take(output, {\n Backfilling: __expectBoolean,\n IndexArn: __expectString,\n IndexName: __expectString,\n IndexSizeBytes: __expectLong,\n IndexStatus: __expectString,\n ItemCount: __expectLong,\n KeySchema: _json,\n OnDemandThroughput: _json,\n Projection: _json,\n ProvisionedThroughput: (_) => de_ProvisionedThroughputDescription(_, context),\n });\n};\nconst de_GlobalSecondaryIndexDescriptionList = (output, context) => {\n const retVal = (output || [])\n .filter((e) => e != null)\n .map((entry) => {\n return de_GlobalSecondaryIndexDescription(entry, context);\n });\n return retVal;\n};\nconst de_GlobalTableDescription = (output, context) => {\n return take(output, {\n CreationDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n GlobalTableArn: __expectString,\n GlobalTableName: __expectString,\n GlobalTableStatus: __expectString,\n ReplicationGroup: (_) => de_ReplicaDescriptionList(_, context),\n });\n};\nconst de_ImportSummary = (output, context) => {\n return take(output, {\n CloudWatchLogGroupArn: __expectString,\n EndTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n ImportArn: __expectString,\n ImportStatus: __expectString,\n InputFormat: __expectString,\n S3BucketSource: _json,\n StartTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n TableArn: __expectString,\n });\n};\nconst de_ImportSummaryList = (output, context) => {\n const retVal = (output || [])\n .filter((e) => e != null)\n .map((entry) => {\n return de_ImportSummary(entry, context);\n });\n return retVal;\n};\nconst de_ImportTableDescription = (output, context) => {\n return take(output, {\n ClientToken: __expectString,\n CloudWatchLogGroupArn: __expectString,\n EndTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n ErrorCount: __expectLong,\n FailureCode: __expectString,\n FailureMessage: __expectString,\n ImportArn: __expectString,\n ImportStatus: __expectString,\n ImportedItemCount: __expectLong,\n InputCompressionType: __expectString,\n InputFormat: __expectString,\n InputFormatOptions: _json,\n ProcessedItemCount: __expectLong,\n ProcessedSizeBytes: __expectLong,\n S3BucketSource: _json,\n StartTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n TableArn: __expectString,\n TableCreationParameters: _json,\n TableId: __expectString,\n });\n};\nconst de_ImportTableOutput = (output, context) => {\n return take(output, {\n ImportTableDescription: (_) => de_ImportTableDescription(_, context),\n });\n};\nconst de_IncrementalExportSpecification = (output, context) => {\n return take(output, {\n ExportFromTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n ExportToTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n ExportViewType: __expectString,\n });\n};\nconst de_ItemCollectionKeyAttributeMap = (output, context) => {\n return Object.entries(output).reduce((acc, [key, value]) => {\n if (value === null) {\n return acc;\n }\n acc[key] = de_AttributeValue(__expectUnion(value), context);\n return acc;\n }, {});\n};\nconst de_ItemCollectionMetrics = (output, context) => {\n return take(output, {\n ItemCollectionKey: (_) => de_ItemCollectionKeyAttributeMap(_, context),\n SizeEstimateRangeGB: (_) => de_ItemCollectionSizeEstimateRange(_, context),\n });\n};\nconst de_ItemCollectionMetricsMultiple = (output, context) => {\n const retVal = (output || [])\n .filter((e) => e != null)\n .map((entry) => {\n return de_ItemCollectionMetrics(entry, context);\n });\n return retVal;\n};\nconst de_ItemCollectionMetricsPerTable = (output, context) => {\n return Object.entries(output).reduce((acc, [key, value]) => {\n if (value === null) {\n return acc;\n }\n acc[key] = de_ItemCollectionMetricsMultiple(value, context);\n return acc;\n }, {});\n};\nconst de_ItemCollectionSizeEstimateRange = (output, context) => {\n const retVal = (output || [])\n .filter((e) => e != null)\n .map((entry) => {\n return __limitedParseDouble(entry);\n });\n return retVal;\n};\nconst de_ItemList = (output, context) => {\n const retVal = (output || [])\n .filter((e) => e != null)\n .map((entry) => {\n return de_AttributeMap(entry, context);\n });\n return retVal;\n};\nconst de_ItemResponse = (output, context) => {\n return take(output, {\n Item: (_) => de_AttributeMap(_, context),\n });\n};\nconst de_ItemResponseList = (output, context) => {\n const retVal = (output || [])\n .filter((e) => e != null)\n .map((entry) => {\n return de_ItemResponse(entry, context);\n });\n return retVal;\n};\nconst de_Key = (output, context) => {\n return Object.entries(output).reduce((acc, [key, value]) => {\n if (value === null) {\n return acc;\n }\n acc[key] = de_AttributeValue(__expectUnion(value), context);\n return acc;\n }, {});\n};\nconst de_KeyList = (output, context) => {\n const retVal = (output || [])\n .filter((e) => e != null)\n .map((entry) => {\n return de_Key(entry, context);\n });\n return retVal;\n};\nconst de_KeysAndAttributes = (output, context) => {\n return take(output, {\n AttributesToGet: _json,\n ConsistentRead: __expectBoolean,\n ExpressionAttributeNames: _json,\n Keys: (_) => de_KeyList(_, context),\n ProjectionExpression: __expectString,\n });\n};\nconst de_ListAttributeValue = (output, context) => {\n const retVal = (output || [])\n .filter((e) => e != null)\n .map((entry) => {\n return de_AttributeValue(__expectUnion(entry), context);\n });\n return retVal;\n};\nconst de_ListBackupsOutput = (output, context) => {\n return take(output, {\n BackupSummaries: (_) => de_BackupSummaries(_, context),\n LastEvaluatedBackupArn: __expectString,\n });\n};\nconst de_ListImportsOutput = (output, context) => {\n return take(output, {\n ImportSummaryList: (_) => de_ImportSummaryList(_, context),\n NextToken: __expectString,\n });\n};\nconst de_MapAttributeValue = (output, context) => {\n return Object.entries(output).reduce((acc, [key, value]) => {\n if (value === null) {\n return acc;\n }\n acc[key] = de_AttributeValue(__expectUnion(value), context);\n return acc;\n }, {});\n};\nconst de_PartiQLBatchResponse = (output, context) => {\n const retVal = (output || [])\n .filter((e) => e != null)\n .map((entry) => {\n return de_BatchStatementResponse(entry, context);\n });\n return retVal;\n};\nconst de_PointInTimeRecoveryDescription = (output, context) => {\n return take(output, {\n EarliestRestorableDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n LatestRestorableDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n PointInTimeRecoveryStatus: __expectString,\n });\n};\nconst de_ProvisionedThroughputDescription = (output, context) => {\n return take(output, {\n LastDecreaseDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n LastIncreaseDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n NumberOfDecreasesToday: __expectLong,\n ReadCapacityUnits: __expectLong,\n WriteCapacityUnits: __expectLong,\n });\n};\nconst de_PutItemInputAttributeMap = (output, context) => {\n return Object.entries(output).reduce((acc, [key, value]) => {\n if (value === null) {\n return acc;\n }\n acc[key] = de_AttributeValue(__expectUnion(value), context);\n return acc;\n }, {});\n};\nconst de_PutItemOutput = (output, context) => {\n return take(output, {\n Attributes: (_) => de_AttributeMap(_, context),\n ConsumedCapacity: (_) => de_ConsumedCapacity(_, context),\n ItemCollectionMetrics: (_) => de_ItemCollectionMetrics(_, context),\n });\n};\nconst de_PutRequest = (output, context) => {\n return take(output, {\n Item: (_) => de_PutItemInputAttributeMap(_, context),\n });\n};\nconst de_QueryOutput = (output, context) => {\n return take(output, {\n ConsumedCapacity: (_) => de_ConsumedCapacity(_, context),\n Count: __expectInt32,\n Items: (_) => de_ItemList(_, context),\n LastEvaluatedKey: (_) => de_Key(_, context),\n ScannedCount: __expectInt32,\n });\n};\nconst de_ReplicaAutoScalingDescription = (output, context) => {\n return take(output, {\n GlobalSecondaryIndexes: (_) => de_ReplicaGlobalSecondaryIndexAutoScalingDescriptionList(_, context),\n RegionName: __expectString,\n ReplicaProvisionedReadCapacityAutoScalingSettings: (_) => de_AutoScalingSettingsDescription(_, context),\n ReplicaProvisionedWriteCapacityAutoScalingSettings: (_) => de_AutoScalingSettingsDescription(_, context),\n ReplicaStatus: __expectString,\n });\n};\nconst de_ReplicaAutoScalingDescriptionList = (output, context) => {\n const retVal = (output || [])\n .filter((e) => e != null)\n .map((entry) => {\n return de_ReplicaAutoScalingDescription(entry, context);\n });\n return retVal;\n};\nconst de_ReplicaDescription = (output, context) => {\n return take(output, {\n GlobalSecondaryIndexes: _json,\n KMSMasterKeyId: __expectString,\n OnDemandThroughputOverride: _json,\n ProvisionedThroughputOverride: _json,\n RegionName: __expectString,\n ReplicaInaccessibleDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n ReplicaStatus: __expectString,\n ReplicaStatusDescription: __expectString,\n ReplicaStatusPercentProgress: __expectString,\n ReplicaTableClassSummary: (_) => de_TableClassSummary(_, context),\n });\n};\nconst de_ReplicaDescriptionList = (output, context) => {\n const retVal = (output || [])\n .filter((e) => e != null)\n .map((entry) => {\n return de_ReplicaDescription(entry, context);\n });\n return retVal;\n};\nconst de_ReplicaGlobalSecondaryIndexAutoScalingDescription = (output, context) => {\n return take(output, {\n IndexName: __expectString,\n IndexStatus: __expectString,\n ProvisionedReadCapacityAutoScalingSettings: (_) => de_AutoScalingSettingsDescription(_, context),\n ProvisionedWriteCapacityAutoScalingSettings: (_) => de_AutoScalingSettingsDescription(_, context),\n });\n};\nconst de_ReplicaGlobalSecondaryIndexAutoScalingDescriptionList = (output, context) => {\n const retVal = (output || [])\n .filter((e) => e != null)\n .map((entry) => {\n return de_ReplicaGlobalSecondaryIndexAutoScalingDescription(entry, context);\n });\n return retVal;\n};\nconst de_ReplicaGlobalSecondaryIndexSettingsDescription = (output, context) => {\n return take(output, {\n IndexName: __expectString,\n IndexStatus: __expectString,\n ProvisionedReadCapacityAutoScalingSettings: (_) => de_AutoScalingSettingsDescription(_, context),\n ProvisionedReadCapacityUnits: __expectLong,\n ProvisionedWriteCapacityAutoScalingSettings: (_) => de_AutoScalingSettingsDescription(_, context),\n ProvisionedWriteCapacityUnits: __expectLong,\n });\n};\nconst de_ReplicaGlobalSecondaryIndexSettingsDescriptionList = (output, context) => {\n const retVal = (output || [])\n .filter((e) => e != null)\n .map((entry) => {\n return de_ReplicaGlobalSecondaryIndexSettingsDescription(entry, context);\n });\n return retVal;\n};\nconst de_ReplicaSettingsDescription = (output, context) => {\n return take(output, {\n RegionName: __expectString,\n ReplicaBillingModeSummary: (_) => de_BillingModeSummary(_, context),\n ReplicaGlobalSecondaryIndexSettings: (_) => de_ReplicaGlobalSecondaryIndexSettingsDescriptionList(_, context),\n ReplicaProvisionedReadCapacityAutoScalingSettings: (_) => de_AutoScalingSettingsDescription(_, context),\n ReplicaProvisionedReadCapacityUnits: __expectLong,\n ReplicaProvisionedWriteCapacityAutoScalingSettings: (_) => de_AutoScalingSettingsDescription(_, context),\n ReplicaProvisionedWriteCapacityUnits: __expectLong,\n ReplicaStatus: __expectString,\n ReplicaTableClassSummary: (_) => de_TableClassSummary(_, context),\n });\n};\nconst de_ReplicaSettingsDescriptionList = (output, context) => {\n const retVal = (output || [])\n .filter((e) => e != null)\n .map((entry) => {\n return de_ReplicaSettingsDescription(entry, context);\n });\n return retVal;\n};\nconst de_RestoreSummary = (output, context) => {\n return take(output, {\n RestoreDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n RestoreInProgress: __expectBoolean,\n SourceBackupArn: __expectString,\n SourceTableArn: __expectString,\n });\n};\nconst de_RestoreTableFromBackupOutput = (output, context) => {\n return take(output, {\n TableDescription: (_) => de_TableDescription(_, context),\n });\n};\nconst de_RestoreTableToPointInTimeOutput = (output, context) => {\n return take(output, {\n TableDescription: (_) => de_TableDescription(_, context),\n });\n};\nconst de_ScanOutput = (output, context) => {\n return take(output, {\n ConsumedCapacity: (_) => de_ConsumedCapacity(_, context),\n Count: __expectInt32,\n Items: (_) => de_ItemList(_, context),\n LastEvaluatedKey: (_) => de_Key(_, context),\n ScannedCount: __expectInt32,\n });\n};\nconst de_SecondaryIndexesCapacityMap = (output, context) => {\n return Object.entries(output).reduce((acc, [key, value]) => {\n if (value === null) {\n return acc;\n }\n acc[key] = de_Capacity(value, context);\n return acc;\n }, {});\n};\nconst de_SourceTableDetails = (output, context) => {\n return take(output, {\n BillingMode: __expectString,\n ItemCount: __expectLong,\n KeySchema: _json,\n OnDemandThroughput: _json,\n ProvisionedThroughput: _json,\n TableArn: __expectString,\n TableCreationDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n TableId: __expectString,\n TableName: __expectString,\n TableSizeBytes: __expectLong,\n });\n};\nconst de_SourceTableFeatureDetails = (output, context) => {\n return take(output, {\n GlobalSecondaryIndexes: _json,\n LocalSecondaryIndexes: _json,\n SSEDescription: (_) => de_SSEDescription(_, context),\n StreamDescription: _json,\n TimeToLiveDescription: _json,\n });\n};\nconst de_SSEDescription = (output, context) => {\n return take(output, {\n InaccessibleEncryptionDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n KMSMasterKeyArn: __expectString,\n SSEType: __expectString,\n Status: __expectString,\n });\n};\nconst de_TableAutoScalingDescription = (output, context) => {\n return take(output, {\n Replicas: (_) => de_ReplicaAutoScalingDescriptionList(_, context),\n TableName: __expectString,\n TableStatus: __expectString,\n });\n};\nconst de_TableClassSummary = (output, context) => {\n return take(output, {\n LastUpdateDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n TableClass: __expectString,\n });\n};\nconst de_TableDescription = (output, context) => {\n return take(output, {\n ArchivalSummary: (_) => de_ArchivalSummary(_, context),\n AttributeDefinitions: _json,\n BillingModeSummary: (_) => de_BillingModeSummary(_, context),\n CreationDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n DeletionProtectionEnabled: __expectBoolean,\n GlobalSecondaryIndexes: (_) => de_GlobalSecondaryIndexDescriptionList(_, context),\n GlobalTableVersion: __expectString,\n ItemCount: __expectLong,\n KeySchema: _json,\n LatestStreamArn: __expectString,\n LatestStreamLabel: __expectString,\n LocalSecondaryIndexes: _json,\n OnDemandThroughput: _json,\n ProvisionedThroughput: (_) => de_ProvisionedThroughputDescription(_, context),\n Replicas: (_) => de_ReplicaDescriptionList(_, context),\n RestoreSummary: (_) => de_RestoreSummary(_, context),\n SSEDescription: (_) => de_SSEDescription(_, context),\n StreamSpecification: _json,\n TableArn: __expectString,\n TableClassSummary: (_) => de_TableClassSummary(_, context),\n TableId: __expectString,\n TableName: __expectString,\n TableSizeBytes: __expectLong,\n TableStatus: __expectString,\n });\n};\nconst de_TransactGetItemsOutput = (output, context) => {\n return take(output, {\n ConsumedCapacity: (_) => de_ConsumedCapacityMultiple(_, context),\n Responses: (_) => de_ItemResponseList(_, context),\n });\n};\nconst de_TransactionCanceledException = (output, context) => {\n return take(output, {\n CancellationReasons: (_) => de_CancellationReasonList(_, context),\n Message: __expectString,\n });\n};\nconst de_TransactWriteItemsOutput = (output, context) => {\n return take(output, {\n ConsumedCapacity: (_) => de_ConsumedCapacityMultiple(_, context),\n ItemCollectionMetrics: (_) => de_ItemCollectionMetricsPerTable(_, context),\n });\n};\nconst de_UpdateContinuousBackupsOutput = (output, context) => {\n return take(output, {\n ContinuousBackupsDescription: (_) => de_ContinuousBackupsDescription(_, context),\n });\n};\nconst de_UpdateGlobalTableOutput = (output, context) => {\n return take(output, {\n GlobalTableDescription: (_) => de_GlobalTableDescription(_, context),\n });\n};\nconst de_UpdateGlobalTableSettingsOutput = (output, context) => {\n return take(output, {\n GlobalTableName: __expectString,\n ReplicaSettings: (_) => de_ReplicaSettingsDescriptionList(_, context),\n });\n};\nconst de_UpdateItemOutput = (output, context) => {\n return take(output, {\n Attributes: (_) => de_AttributeMap(_, context),\n ConsumedCapacity: (_) => de_ConsumedCapacity(_, context),\n ItemCollectionMetrics: (_) => de_ItemCollectionMetrics(_, context),\n });\n};\nconst de_UpdateTableOutput = (output, context) => {\n return take(output, {\n TableDescription: (_) => de_TableDescription(_, context),\n });\n};\nconst de_UpdateTableReplicaAutoScalingOutput = (output, context) => {\n return take(output, {\n TableAutoScalingDescription: (_) => de_TableAutoScalingDescription(_, context),\n });\n};\nconst de_WriteRequest = (output, context) => {\n return take(output, {\n DeleteRequest: (_) => de_DeleteRequest(_, context),\n PutRequest: (_) => de_PutRequest(_, context),\n });\n};\nconst de_WriteRequests = (output, context) => {\n const retVal = (output || [])\n .filter((e) => e != null)\n .map((entry) => {\n return de_WriteRequest(entry, context);\n });\n return retVal;\n};\nconst deserializeMetadata = (output) => ({\n httpStatusCode: output.statusCode,\n requestId: output.headers[\"x-amzn-requestid\"] ?? output.headers[\"x-amzn-request-id\"] ?? output.headers[\"x-amz-request-id\"],\n extendedRequestId: output.headers[\"x-amz-id-2\"],\n cfId: output.headers[\"x-amz-cf-id\"],\n});\nconst collectBodyString = (streamBody, context) => collectBody(streamBody, context).then((body) => context.utf8Encoder(body));\nconst throwDefaultError = withBaseException(__BaseException);\nconst buildHttpRpcRequest = async (context, headers, path, resolvedHostname, body) => {\n const { hostname, protocol = \"https\", port, path: basePath } = await context.endpoint();\n const contents = {\n protocol,\n hostname,\n port,\n method: \"POST\",\n path: basePath.endsWith(\"/\") ? basePath.slice(0, -1) + path : basePath + path,\n headers,\n };\n if (resolvedHostname !== undefined) {\n contents.hostname = resolvedHostname;\n }\n if (body !== undefined) {\n contents.body = body;\n }\n return new __HttpRequest(contents);\n};\nfunction sharedHeaders(operation) {\n return {\n \"content-type\": \"application/x-amz-json-1.0\",\n \"x-amz-target\": `DynamoDB_20120810.${operation}`,\n };\n}\n",
|
|
439
|
+
"import { ServiceException as __ServiceException, } from \"@smithy/smithy-client\";\nexport { __ServiceException };\nexport class DynamoDBServiceException extends __ServiceException {\n constructor(options) {\n super(options);\n Object.setPrototypeOf(this, DynamoDBServiceException.prototype);\n }\n}\n",
|
|
440
|
+
"import { DynamoDBServiceException as __BaseException } from \"./DynamoDBServiceException\";\nexport const ApproximateCreationDateTimePrecision = {\n MICROSECOND: \"MICROSECOND\",\n MILLISECOND: \"MILLISECOND\",\n};\nexport const AttributeAction = {\n ADD: \"ADD\",\n DELETE: \"DELETE\",\n PUT: \"PUT\",\n};\nexport const ScalarAttributeType = {\n B: \"B\",\n N: \"N\",\n S: \"S\",\n};\nexport const BackupStatus = {\n AVAILABLE: \"AVAILABLE\",\n CREATING: \"CREATING\",\n DELETED: \"DELETED\",\n};\nexport const BackupType = {\n AWS_BACKUP: \"AWS_BACKUP\",\n SYSTEM: \"SYSTEM\",\n USER: \"USER\",\n};\nexport const BillingMode = {\n PAY_PER_REQUEST: \"PAY_PER_REQUEST\",\n PROVISIONED: \"PROVISIONED\",\n};\nexport const KeyType = {\n HASH: \"HASH\",\n RANGE: \"RANGE\",\n};\nexport const ProjectionType = {\n ALL: \"ALL\",\n INCLUDE: \"INCLUDE\",\n KEYS_ONLY: \"KEYS_ONLY\",\n};\nexport const SSEType = {\n AES256: \"AES256\",\n KMS: \"KMS\",\n};\nexport const SSEStatus = {\n DISABLED: \"DISABLED\",\n DISABLING: \"DISABLING\",\n ENABLED: \"ENABLED\",\n ENABLING: \"ENABLING\",\n UPDATING: \"UPDATING\",\n};\nexport const StreamViewType = {\n KEYS_ONLY: \"KEYS_ONLY\",\n NEW_AND_OLD_IMAGES: \"NEW_AND_OLD_IMAGES\",\n NEW_IMAGE: \"NEW_IMAGE\",\n OLD_IMAGE: \"OLD_IMAGE\",\n};\nexport const TimeToLiveStatus = {\n DISABLED: \"DISABLED\",\n DISABLING: \"DISABLING\",\n ENABLED: \"ENABLED\",\n ENABLING: \"ENABLING\",\n};\nexport class BackupInUseException extends __BaseException {\n constructor(opts) {\n super({\n name: \"BackupInUseException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"BackupInUseException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, BackupInUseException.prototype);\n }\n}\nexport class BackupNotFoundException extends __BaseException {\n constructor(opts) {\n super({\n name: \"BackupNotFoundException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"BackupNotFoundException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, BackupNotFoundException.prototype);\n }\n}\nexport const BackupTypeFilter = {\n ALL: \"ALL\",\n AWS_BACKUP: \"AWS_BACKUP\",\n SYSTEM: \"SYSTEM\",\n USER: \"USER\",\n};\nexport const ReturnConsumedCapacity = {\n INDEXES: \"INDEXES\",\n NONE: \"NONE\",\n TOTAL: \"TOTAL\",\n};\nexport const ReturnValuesOnConditionCheckFailure = {\n ALL_OLD: \"ALL_OLD\",\n NONE: \"NONE\",\n};\nexport const BatchStatementErrorCodeEnum = {\n AccessDenied: \"AccessDenied\",\n ConditionalCheckFailed: \"ConditionalCheckFailed\",\n DuplicateItem: \"DuplicateItem\",\n InternalServerError: \"InternalServerError\",\n ItemCollectionSizeLimitExceeded: \"ItemCollectionSizeLimitExceeded\",\n ProvisionedThroughputExceeded: \"ProvisionedThroughputExceeded\",\n RequestLimitExceeded: \"RequestLimitExceeded\",\n ResourceNotFound: \"ResourceNotFound\",\n ThrottlingError: \"ThrottlingError\",\n TransactionConflict: \"TransactionConflict\",\n ValidationError: \"ValidationError\",\n};\nexport class InternalServerError extends __BaseException {\n constructor(opts) {\n super({\n name: \"InternalServerError\",\n $fault: \"server\",\n ...opts,\n });\n this.name = \"InternalServerError\";\n this.$fault = \"server\";\n Object.setPrototypeOf(this, InternalServerError.prototype);\n }\n}\nexport class RequestLimitExceeded extends __BaseException {\n constructor(opts) {\n super({\n name: \"RequestLimitExceeded\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"RequestLimitExceeded\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, RequestLimitExceeded.prototype);\n }\n}\nexport class InvalidEndpointException extends __BaseException {\n constructor(opts) {\n super({\n name: \"InvalidEndpointException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"InvalidEndpointException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, InvalidEndpointException.prototype);\n this.Message = opts.Message;\n }\n}\nexport class ProvisionedThroughputExceededException extends __BaseException {\n constructor(opts) {\n super({\n name: \"ProvisionedThroughputExceededException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"ProvisionedThroughputExceededException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, ProvisionedThroughputExceededException.prototype);\n }\n}\nexport class ResourceNotFoundException extends __BaseException {\n constructor(opts) {\n super({\n name: \"ResourceNotFoundException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"ResourceNotFoundException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, ResourceNotFoundException.prototype);\n }\n}\nexport const ReturnItemCollectionMetrics = {\n NONE: \"NONE\",\n SIZE: \"SIZE\",\n};\nexport class ItemCollectionSizeLimitExceededException extends __BaseException {\n constructor(opts) {\n super({\n name: \"ItemCollectionSizeLimitExceededException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"ItemCollectionSizeLimitExceededException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, ItemCollectionSizeLimitExceededException.prototype);\n }\n}\nexport const ComparisonOperator = {\n BEGINS_WITH: \"BEGINS_WITH\",\n BETWEEN: \"BETWEEN\",\n CONTAINS: \"CONTAINS\",\n EQ: \"EQ\",\n GE: \"GE\",\n GT: \"GT\",\n IN: \"IN\",\n LE: \"LE\",\n LT: \"LT\",\n NE: \"NE\",\n NOT_CONTAINS: \"NOT_CONTAINS\",\n NOT_NULL: \"NOT_NULL\",\n NULL: \"NULL\",\n};\nexport const ConditionalOperator = {\n AND: \"AND\",\n OR: \"OR\",\n};\nexport const ContinuousBackupsStatus = {\n DISABLED: \"DISABLED\",\n ENABLED: \"ENABLED\",\n};\nexport const PointInTimeRecoveryStatus = {\n DISABLED: \"DISABLED\",\n ENABLED: \"ENABLED\",\n};\nexport class ContinuousBackupsUnavailableException extends __BaseException {\n constructor(opts) {\n super({\n name: \"ContinuousBackupsUnavailableException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"ContinuousBackupsUnavailableException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, ContinuousBackupsUnavailableException.prototype);\n }\n}\nexport const ContributorInsightsAction = {\n DISABLE: \"DISABLE\",\n ENABLE: \"ENABLE\",\n};\nexport const ContributorInsightsStatus = {\n DISABLED: \"DISABLED\",\n DISABLING: \"DISABLING\",\n ENABLED: \"ENABLED\",\n ENABLING: \"ENABLING\",\n FAILED: \"FAILED\",\n};\nexport class LimitExceededException extends __BaseException {\n constructor(opts) {\n super({\n name: \"LimitExceededException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"LimitExceededException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, LimitExceededException.prototype);\n }\n}\nexport class TableInUseException extends __BaseException {\n constructor(opts) {\n super({\n name: \"TableInUseException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"TableInUseException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, TableInUseException.prototype);\n }\n}\nexport class TableNotFoundException extends __BaseException {\n constructor(opts) {\n super({\n name: \"TableNotFoundException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"TableNotFoundException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, TableNotFoundException.prototype);\n }\n}\nexport const GlobalTableStatus = {\n ACTIVE: \"ACTIVE\",\n CREATING: \"CREATING\",\n DELETING: \"DELETING\",\n UPDATING: \"UPDATING\",\n};\nexport const ReplicaStatus = {\n ACTIVE: \"ACTIVE\",\n CREATING: \"CREATING\",\n CREATION_FAILED: \"CREATION_FAILED\",\n DELETING: \"DELETING\",\n INACCESSIBLE_ENCRYPTION_CREDENTIALS: \"INACCESSIBLE_ENCRYPTION_CREDENTIALS\",\n REGION_DISABLED: \"REGION_DISABLED\",\n UPDATING: \"UPDATING\",\n};\nexport const TableClass = {\n STANDARD: \"STANDARD\",\n STANDARD_INFREQUENT_ACCESS: \"STANDARD_INFREQUENT_ACCESS\",\n};\nexport class GlobalTableAlreadyExistsException extends __BaseException {\n constructor(opts) {\n super({\n name: \"GlobalTableAlreadyExistsException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"GlobalTableAlreadyExistsException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, GlobalTableAlreadyExistsException.prototype);\n }\n}\nexport const IndexStatus = {\n ACTIVE: \"ACTIVE\",\n CREATING: \"CREATING\",\n DELETING: \"DELETING\",\n UPDATING: \"UPDATING\",\n};\nexport const TableStatus = {\n ACTIVE: \"ACTIVE\",\n ARCHIVED: \"ARCHIVED\",\n ARCHIVING: \"ARCHIVING\",\n CREATING: \"CREATING\",\n DELETING: \"DELETING\",\n INACCESSIBLE_ENCRYPTION_CREDENTIALS: \"INACCESSIBLE_ENCRYPTION_CREDENTIALS\",\n UPDATING: \"UPDATING\",\n};\nexport class ResourceInUseException extends __BaseException {\n constructor(opts) {\n super({\n name: \"ResourceInUseException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"ResourceInUseException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, ResourceInUseException.prototype);\n }\n}\nexport const ReturnValue = {\n ALL_NEW: \"ALL_NEW\",\n ALL_OLD: \"ALL_OLD\",\n NONE: \"NONE\",\n UPDATED_NEW: \"UPDATED_NEW\",\n UPDATED_OLD: \"UPDATED_OLD\",\n};\nexport class TransactionConflictException extends __BaseException {\n constructor(opts) {\n super({\n name: \"TransactionConflictException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"TransactionConflictException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, TransactionConflictException.prototype);\n }\n}\nexport class PolicyNotFoundException extends __BaseException {\n constructor(opts) {\n super({\n name: \"PolicyNotFoundException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"PolicyNotFoundException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, PolicyNotFoundException.prototype);\n }\n}\nexport const ExportFormat = {\n DYNAMODB_JSON: \"DYNAMODB_JSON\",\n ION: \"ION\",\n};\nexport const ExportStatus = {\n COMPLETED: \"COMPLETED\",\n FAILED: \"FAILED\",\n IN_PROGRESS: \"IN_PROGRESS\",\n};\nexport const ExportType = {\n FULL_EXPORT: \"FULL_EXPORT\",\n INCREMENTAL_EXPORT: \"INCREMENTAL_EXPORT\",\n};\nexport const ExportViewType = {\n NEW_AND_OLD_IMAGES: \"NEW_AND_OLD_IMAGES\",\n NEW_IMAGE: \"NEW_IMAGE\",\n};\nexport const S3SseAlgorithm = {\n AES256: \"AES256\",\n KMS: \"KMS\",\n};\nexport class ExportNotFoundException extends __BaseException {\n constructor(opts) {\n super({\n name: \"ExportNotFoundException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"ExportNotFoundException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, ExportNotFoundException.prototype);\n }\n}\nexport class GlobalTableNotFoundException extends __BaseException {\n constructor(opts) {\n super({\n name: \"GlobalTableNotFoundException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"GlobalTableNotFoundException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, GlobalTableNotFoundException.prototype);\n }\n}\nexport const ImportStatus = {\n CANCELLED: \"CANCELLED\",\n CANCELLING: \"CANCELLING\",\n COMPLETED: \"COMPLETED\",\n FAILED: \"FAILED\",\n IN_PROGRESS: \"IN_PROGRESS\",\n};\nexport const InputCompressionType = {\n GZIP: \"GZIP\",\n NONE: \"NONE\",\n ZSTD: \"ZSTD\",\n};\nexport const InputFormat = {\n CSV: \"CSV\",\n DYNAMODB_JSON: \"DYNAMODB_JSON\",\n ION: \"ION\",\n};\nexport class ImportNotFoundException extends __BaseException {\n constructor(opts) {\n super({\n name: \"ImportNotFoundException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"ImportNotFoundException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, ImportNotFoundException.prototype);\n }\n}\nexport const DestinationStatus = {\n ACTIVE: \"ACTIVE\",\n DISABLED: \"DISABLED\",\n DISABLING: \"DISABLING\",\n ENABLE_FAILED: \"ENABLE_FAILED\",\n ENABLING: \"ENABLING\",\n UPDATING: \"UPDATING\",\n};\nexport class DuplicateItemException extends __BaseException {\n constructor(opts) {\n super({\n name: \"DuplicateItemException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"DuplicateItemException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, DuplicateItemException.prototype);\n }\n}\nexport class IdempotentParameterMismatchException extends __BaseException {\n constructor(opts) {\n super({\n name: \"IdempotentParameterMismatchException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"IdempotentParameterMismatchException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, IdempotentParameterMismatchException.prototype);\n this.Message = opts.Message;\n }\n}\nexport class TransactionInProgressException extends __BaseException {\n constructor(opts) {\n super({\n name: \"TransactionInProgressException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"TransactionInProgressException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, TransactionInProgressException.prototype);\n this.Message = opts.Message;\n }\n}\nexport class ExportConflictException extends __BaseException {\n constructor(opts) {\n super({\n name: \"ExportConflictException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"ExportConflictException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, ExportConflictException.prototype);\n }\n}\nexport class InvalidExportTimeException extends __BaseException {\n constructor(opts) {\n super({\n name: \"InvalidExportTimeException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"InvalidExportTimeException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, InvalidExportTimeException.prototype);\n }\n}\nexport class PointInTimeRecoveryUnavailableException extends __BaseException {\n constructor(opts) {\n super({\n name: \"PointInTimeRecoveryUnavailableException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"PointInTimeRecoveryUnavailableException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, PointInTimeRecoveryUnavailableException.prototype);\n }\n}\nexport class ImportConflictException extends __BaseException {\n constructor(opts) {\n super({\n name: \"ImportConflictException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"ImportConflictException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, ImportConflictException.prototype);\n }\n}\nexport const Select = {\n ALL_ATTRIBUTES: \"ALL_ATTRIBUTES\",\n ALL_PROJECTED_ATTRIBUTES: \"ALL_PROJECTED_ATTRIBUTES\",\n COUNT: \"COUNT\",\n SPECIFIC_ATTRIBUTES: \"SPECIFIC_ATTRIBUTES\",\n};\nexport class TableAlreadyExistsException extends __BaseException {\n constructor(opts) {\n super({\n name: \"TableAlreadyExistsException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"TableAlreadyExistsException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, TableAlreadyExistsException.prototype);\n }\n}\nexport class InvalidRestoreTimeException extends __BaseException {\n constructor(opts) {\n super({\n name: \"InvalidRestoreTimeException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"InvalidRestoreTimeException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, InvalidRestoreTimeException.prototype);\n }\n}\nexport class ReplicaAlreadyExistsException extends __BaseException {\n constructor(opts) {\n super({\n name: \"ReplicaAlreadyExistsException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"ReplicaAlreadyExistsException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, ReplicaAlreadyExistsException.prototype);\n }\n}\nexport class ReplicaNotFoundException extends __BaseException {\n constructor(opts) {\n super({\n name: \"ReplicaNotFoundException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"ReplicaNotFoundException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, ReplicaNotFoundException.prototype);\n }\n}\nexport class IndexNotFoundException extends __BaseException {\n constructor(opts) {\n super({\n name: \"IndexNotFoundException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"IndexNotFoundException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, IndexNotFoundException.prototype);\n }\n}\nexport var AttributeValue;\n(function (AttributeValue) {\n AttributeValue.visit = (value, visitor) => {\n if (value.S !== undefined)\n return visitor.S(value.S);\n if (value.N !== undefined)\n return visitor.N(value.N);\n if (value.B !== undefined)\n return visitor.B(value.B);\n if (value.SS !== undefined)\n return visitor.SS(value.SS);\n if (value.NS !== undefined)\n return visitor.NS(value.NS);\n if (value.BS !== undefined)\n return visitor.BS(value.BS);\n if (value.M !== undefined)\n return visitor.M(value.M);\n if (value.L !== undefined)\n return visitor.L(value.L);\n if (value.NULL !== undefined)\n return visitor.NULL(value.NULL);\n if (value.BOOL !== undefined)\n return visitor.BOOL(value.BOOL);\n return visitor._(value.$unknown[0], value.$unknown[1]);\n };\n})(AttributeValue || (AttributeValue = {}));\nexport class ConditionalCheckFailedException extends __BaseException {\n constructor(opts) {\n super({\n name: \"ConditionalCheckFailedException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"ConditionalCheckFailedException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, ConditionalCheckFailedException.prototype);\n this.Item = opts.Item;\n }\n}\nexport class TransactionCanceledException extends __BaseException {\n constructor(opts) {\n super({\n name: \"TransactionCanceledException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"TransactionCanceledException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, TransactionCanceledException.prototype);\n this.Message = opts.Message;\n this.CancellationReasons = opts.CancellationReasons;\n }\n}\n",
|
|
441
|
+
"import packageInfo from \"../package.json\";\nimport { emitWarningIfUnsupportedVersion as awsCheckVersion } from \"@aws-sdk/core\";\nimport { defaultProvider as credentialDefaultProvider } from \"@aws-sdk/credential-provider-node\";\nimport { NODE_ENDPOINT_DISCOVERY_CONFIG_OPTIONS } from \"@aws-sdk/middleware-endpoint-discovery\";\nimport { defaultUserAgent } from \"@aws-sdk/util-user-agent-node\";\nimport { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS, NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, } from \"@smithy/config-resolver\";\nimport { Hash } from \"@smithy/hash-node\";\nimport { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from \"@smithy/middleware-retry\";\nimport { loadConfig as loadNodeConfig } from \"@smithy/node-config-provider\";\nimport { NodeHttpHandler as RequestHandler, streamCollector } from \"@smithy/node-http-handler\";\nimport { calculateBodyLength } from \"@smithy/util-body-length-node\";\nimport { DEFAULT_RETRY_MODE } from \"@smithy/util-retry\";\nimport { getRuntimeConfig as getSharedRuntimeConfig } from \"./runtimeConfig.shared\";\nimport { loadConfigsForDefaultMode } from \"@smithy/smithy-client\";\nimport { resolveDefaultsModeConfig } from \"@smithy/util-defaults-mode-node\";\nimport { emitWarningIfUnsupportedVersion } from \"@smithy/smithy-client\";\nexport const getRuntimeConfig = (config) => {\n emitWarningIfUnsupportedVersion(process.version);\n const defaultsMode = resolveDefaultsModeConfig(config);\n const defaultConfigProvider = () => defaultsMode().then(loadConfigsForDefaultMode);\n const clientSharedValues = getSharedRuntimeConfig(config);\n awsCheckVersion(process.version);\n return {\n ...clientSharedValues,\n ...config,\n runtime: \"node\",\n defaultsMode,\n bodyLengthChecker: config?.bodyLengthChecker ?? calculateBodyLength,\n credentialDefaultProvider: config?.credentialDefaultProvider ?? credentialDefaultProvider,\n defaultUserAgentProvider: config?.defaultUserAgentProvider ??\n defaultUserAgent({ serviceId: clientSharedValues.serviceId, clientVersion: packageInfo.version }),\n endpointDiscoveryEnabledProvider: config?.endpointDiscoveryEnabledProvider ?? loadNodeConfig(NODE_ENDPOINT_DISCOVERY_CONFIG_OPTIONS),\n maxAttempts: config?.maxAttempts ?? loadNodeConfig(NODE_MAX_ATTEMPT_CONFIG_OPTIONS),\n region: config?.region ?? loadNodeConfig(NODE_REGION_CONFIG_OPTIONS, NODE_REGION_CONFIG_FILE_OPTIONS),\n requestHandler: RequestHandler.create(config?.requestHandler ?? defaultConfigProvider),\n retryMode: config?.retryMode ??\n loadNodeConfig({\n ...NODE_RETRY_MODE_CONFIG_OPTIONS,\n default: async () => (await defaultConfigProvider()).retryMode || DEFAULT_RETRY_MODE,\n }),\n sha256: config?.sha256 ?? Hash.bind(null, \"sha256\"),\n streamCollector: config?.streamCollector ?? streamCollector,\n useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS),\n useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS),\n };\n};\n",
|
|
442
|
+
"import { AwsSdkSigV4Signer } from \"@aws-sdk/core\";\nimport { NoOpLogger } from \"@smithy/smithy-client\";\nimport { parseUrl } from \"@smithy/url-parser\";\nimport { fromBase64, toBase64 } from \"@smithy/util-base64\";\nimport { fromUtf8, toUtf8 } from \"@smithy/util-utf8\";\nimport { defaultDynamoDBHttpAuthSchemeProvider } from \"./auth/httpAuthSchemeProvider\";\nimport { defaultEndpointResolver } from \"./endpoint/endpointResolver\";\nexport const getRuntimeConfig = (config) => {\n return {\n apiVersion: \"2012-08-10\",\n base64Decoder: config?.base64Decoder ?? fromBase64,\n base64Encoder: config?.base64Encoder ?? toBase64,\n disableHostPrefix: config?.disableHostPrefix ?? false,\n endpointProvider: config?.endpointProvider ?? defaultEndpointResolver,\n extensions: config?.extensions ?? [],\n httpAuthSchemeProvider: config?.httpAuthSchemeProvider ?? defaultDynamoDBHttpAuthSchemeProvider,\n httpAuthSchemes: config?.httpAuthSchemes ?? [\n {\n schemeId: \"aws.auth#sigv4\",\n identityProvider: (ipc) => ipc.getIdentityProvider(\"aws.auth#sigv4\"),\n signer: new AwsSdkSigV4Signer(),\n },\n ],\n logger: config?.logger ?? new NoOpLogger(),\n serviceId: config?.serviceId ?? \"DynamoDB\",\n urlParser: config?.urlParser ?? parseUrl,\n utf8Decoder: config?.utf8Decoder ?? fromUtf8,\n utf8Encoder: config?.utf8Encoder ?? toUtf8,\n };\n};\n",
|
|
443
|
+
"import { awsEndpointFunctions } from \"@aws-sdk/util-endpoints\";\nimport { customEndpointFunctions, resolveEndpoint } from \"@smithy/util-endpoints\";\nimport { ruleSet } from \"./ruleset\";\nexport const defaultEndpointResolver = (endpointParams, context = {}) => {\n return resolveEndpoint(ruleSet, {\n endpointParams: endpointParams,\n logger: context.logger,\n });\n};\ncustomEndpointFunctions.aws = awsEndpointFunctions;\n",
|
|
444
|
+
"const w = \"required\", x = \"fn\", y = \"argv\", z = \"ref\";\nconst a = true, b = \"isSet\", c = \"booleanEquals\", d = \"error\", e = \"endpoint\", f = \"tree\", g = \"PartitionResult\", h = \"getAttr\", i = \"stringEquals\", j = { [w]: false, \"type\": \"String\" }, k = { [w]: true, \"default\": false, \"type\": \"Boolean\" }, l = { [z]: \"Endpoint\" }, m = { [x]: c, [y]: [{ [z]: \"UseFIPS\" }, true] }, n = { [x]: c, [y]: [{ [z]: \"UseDualStack\" }, true] }, o = {}, p = { [z]: \"Region\" }, q = { [x]: h, [y]: [{ [z]: g }, \"supportsFIPS\"] }, r = { [z]: g }, s = { [x]: c, [y]: [true, { [x]: h, [y]: [r, \"supportsDualStack\"] }] }, t = [m], u = [n], v = [p];\nconst _data = { version: \"1.0\", parameters: { Region: j, UseDualStack: k, UseFIPS: k, Endpoint: j }, rules: [{ conditions: [{ [x]: b, [y]: [l] }], rules: [{ conditions: t, error: \"Invalid Configuration: FIPS and custom endpoint are not supported\", type: d }, { conditions: u, error: \"Invalid Configuration: Dualstack and custom endpoint are not supported\", type: d }, { endpoint: { url: l, properties: o, headers: o }, type: e }], type: f }, { conditions: [{ [x]: b, [y]: v }], rules: [{ conditions: [{ [x]: \"aws.partition\", [y]: v, assign: g }], rules: [{ conditions: [m, n], rules: [{ conditions: [{ [x]: c, [y]: [a, q] }, s], rules: [{ endpoint: { url: \"https://dynamodb-fips.{Region}.{PartitionResult#dualStackDnsSuffix}\", properties: o, headers: o }, type: e }], type: f }, { error: \"FIPS and DualStack are enabled, but this partition does not support one or both\", type: d }], type: f }, { conditions: t, rules: [{ conditions: [{ [x]: c, [y]: [q, a] }], rules: [{ conditions: [{ [x]: i, [y]: [{ [x]: h, [y]: [r, \"name\"] }, \"aws-us-gov\"] }], endpoint: { url: \"https://dynamodb.{Region}.amazonaws.com\", properties: o, headers: o }, type: e }, { endpoint: { url: \"https://dynamodb-fips.{Region}.{PartitionResult#dnsSuffix}\", properties: o, headers: o }, type: e }], type: f }, { error: \"FIPS is enabled but this partition does not support FIPS\", type: d }], type: f }, { conditions: u, rules: [{ conditions: [s], rules: [{ endpoint: { url: \"https://dynamodb.{Region}.{PartitionResult#dualStackDnsSuffix}\", properties: o, headers: o }, type: e }], type: f }, { error: \"DualStack is enabled but this partition does not support DualStack\", type: d }], type: f }, { conditions: [{ [x]: i, [y]: [p, \"local\"] }], endpoint: { url: \"http://localhost:8000\", properties: { authSchemes: [{ name: \"sigv4\", signingName: \"dynamodb\", signingRegion: \"us-east-1\" }] }, headers: o }, type: e }, { endpoint: { url: \"https://dynamodb.{Region}.{PartitionResult#dnsSuffix}\", properties: o, headers: o }, type: e }], type: f }], type: f }, { error: \"Invalid Configuration: Missing Region\", type: d }] };\nexport const ruleSet = _data;\n",
|
|
445
|
+
"import { getAwsRegionExtensionConfiguration, resolveAwsRegionExtensionConfiguration, } from \"@aws-sdk/region-config-resolver\";\nimport { getHttpHandlerExtensionConfiguration, resolveHttpHandlerRuntimeConfig } from \"@smithy/protocol-http\";\nimport { getDefaultExtensionConfiguration, resolveDefaultRuntimeConfig } from \"@smithy/smithy-client\";\nimport { getHttpAuthExtensionConfiguration, resolveHttpAuthRuntimeConfig } from \"./auth/httpAuthExtensionConfiguration\";\nconst asPartial = (t) => t;\nexport const resolveRuntimeExtensions = (runtimeConfig, extensions) => {\n const extensionConfiguration = {\n ...asPartial(getAwsRegionExtensionConfiguration(runtimeConfig)),\n ...asPartial(getDefaultExtensionConfiguration(runtimeConfig)),\n ...asPartial(getHttpHandlerExtensionConfiguration(runtimeConfig)),\n ...asPartial(getHttpAuthExtensionConfiguration(runtimeConfig)),\n };\n extensions.forEach((extension) => extension.configure(extensionConfiguration));\n return {\n ...runtimeConfig,\n ...resolveAwsRegionExtensionConfiguration(extensionConfiguration),\n ...resolveDefaultRuntimeConfig(extensionConfiguration),\n ...resolveHttpHandlerRuntimeConfig(extensionConfiguration),\n ...resolveHttpAuthRuntimeConfig(extensionConfiguration),\n };\n};\n",
|
|
446
|
+
"export const getHttpAuthExtensionConfiguration = (runtimeConfig) => {\n const _httpAuthSchemes = runtimeConfig.httpAuthSchemes;\n let _httpAuthSchemeProvider = runtimeConfig.httpAuthSchemeProvider;\n let _credentials = runtimeConfig.credentials;\n return {\n setHttpAuthScheme(httpAuthScheme) {\n const index = _httpAuthSchemes.findIndex((scheme) => scheme.schemeId === httpAuthScheme.schemeId);\n if (index === -1) {\n _httpAuthSchemes.push(httpAuthScheme);\n }\n else {\n _httpAuthSchemes.splice(index, 1, httpAuthScheme);\n }\n },\n httpAuthSchemes() {\n return _httpAuthSchemes;\n },\n setHttpAuthSchemeProvider(httpAuthSchemeProvider) {\n _httpAuthSchemeProvider = httpAuthSchemeProvider;\n },\n httpAuthSchemeProvider() {\n return _httpAuthSchemeProvider;\n },\n setCredentials(credentials) {\n _credentials = credentials;\n },\n credentials() {\n return _credentials;\n },\n };\n};\nexport const resolveHttpAuthRuntimeConfig = (config) => {\n return {\n httpAuthSchemes: config.httpAuthSchemes(),\n httpAuthSchemeProvider: config.httpAuthSchemeProvider(),\n credentials: config.credentials(),\n };\n};\n",
|
|
447
|
+
"import { createAggregatedClient } from \"@smithy/smithy-client\";\nimport { BatchExecuteStatementCommand, } from \"./commands/BatchExecuteStatementCommand\";\nimport { BatchGetItemCommand, } from \"./commands/BatchGetItemCommand\";\nimport { BatchWriteItemCommand, } from \"./commands/BatchWriteItemCommand\";\nimport { CreateBackupCommand, } from \"./commands/CreateBackupCommand\";\nimport { CreateGlobalTableCommand, } from \"./commands/CreateGlobalTableCommand\";\nimport { CreateTableCommand } from \"./commands/CreateTableCommand\";\nimport { DeleteBackupCommand, } from \"./commands/DeleteBackupCommand\";\nimport { DeleteItemCommand } from \"./commands/DeleteItemCommand\";\nimport { DeleteResourcePolicyCommand, } from \"./commands/DeleteResourcePolicyCommand\";\nimport { DeleteTableCommand } from \"./commands/DeleteTableCommand\";\nimport { DescribeBackupCommand, } from \"./commands/DescribeBackupCommand\";\nimport { DescribeContinuousBackupsCommand, } from \"./commands/DescribeContinuousBackupsCommand\";\nimport { DescribeContributorInsightsCommand, } from \"./commands/DescribeContributorInsightsCommand\";\nimport { DescribeEndpointsCommand, } from \"./commands/DescribeEndpointsCommand\";\nimport { DescribeExportCommand, } from \"./commands/DescribeExportCommand\";\nimport { DescribeGlobalTableCommand, } from \"./commands/DescribeGlobalTableCommand\";\nimport { DescribeGlobalTableSettingsCommand, } from \"./commands/DescribeGlobalTableSettingsCommand\";\nimport { DescribeImportCommand, } from \"./commands/DescribeImportCommand\";\nimport { DescribeKinesisStreamingDestinationCommand, } from \"./commands/DescribeKinesisStreamingDestinationCommand\";\nimport { DescribeLimitsCommand, } from \"./commands/DescribeLimitsCommand\";\nimport { DescribeTableCommand, } from \"./commands/DescribeTableCommand\";\nimport { DescribeTableReplicaAutoScalingCommand, } from \"./commands/DescribeTableReplicaAutoScalingCommand\";\nimport { DescribeTimeToLiveCommand, } from \"./commands/DescribeTimeToLiveCommand\";\nimport { DisableKinesisStreamingDestinationCommand, } from \"./commands/DisableKinesisStreamingDestinationCommand\";\nimport { EnableKinesisStreamingDestinationCommand, } from \"./commands/EnableKinesisStreamingDestinationCommand\";\nimport { ExecuteStatementCommand, } from \"./commands/ExecuteStatementCommand\";\nimport { ExecuteTransactionCommand, } from \"./commands/ExecuteTransactionCommand\";\nimport { ExportTableToPointInTimeCommand, } from \"./commands/ExportTableToPointInTimeCommand\";\nimport { GetItemCommand } from \"./commands/GetItemCommand\";\nimport { GetResourcePolicyCommand, } from \"./commands/GetResourcePolicyCommand\";\nimport { ImportTableCommand } from \"./commands/ImportTableCommand\";\nimport { ListBackupsCommand } from \"./commands/ListBackupsCommand\";\nimport { ListContributorInsightsCommand, } from \"./commands/ListContributorInsightsCommand\";\nimport { ListExportsCommand } from \"./commands/ListExportsCommand\";\nimport { ListGlobalTablesCommand, } from \"./commands/ListGlobalTablesCommand\";\nimport { ListImportsCommand } from \"./commands/ListImportsCommand\";\nimport { ListTablesCommand } from \"./commands/ListTablesCommand\";\nimport { ListTagsOfResourceCommand, } from \"./commands/ListTagsOfResourceCommand\";\nimport { PutItemCommand } from \"./commands/PutItemCommand\";\nimport { PutResourcePolicyCommand, } from \"./commands/PutResourcePolicyCommand\";\nimport { QueryCommand } from \"./commands/QueryCommand\";\nimport { RestoreTableFromBackupCommand, } from \"./commands/RestoreTableFromBackupCommand\";\nimport { RestoreTableToPointInTimeCommand, } from \"./commands/RestoreTableToPointInTimeCommand\";\nimport { ScanCommand } from \"./commands/ScanCommand\";\nimport { TagResourceCommand } from \"./commands/TagResourceCommand\";\nimport { TransactGetItemsCommand, } from \"./commands/TransactGetItemsCommand\";\nimport { TransactWriteItemsCommand, } from \"./commands/TransactWriteItemsCommand\";\nimport { UntagResourceCommand, } from \"./commands/UntagResourceCommand\";\nimport { UpdateContinuousBackupsCommand, } from \"./commands/UpdateContinuousBackupsCommand\";\nimport { UpdateContributorInsightsCommand, } from \"./commands/UpdateContributorInsightsCommand\";\nimport { UpdateGlobalTableCommand, } from \"./commands/UpdateGlobalTableCommand\";\nimport { UpdateGlobalTableSettingsCommand, } from \"./commands/UpdateGlobalTableSettingsCommand\";\nimport { UpdateItemCommand } from \"./commands/UpdateItemCommand\";\nimport { UpdateKinesisStreamingDestinationCommand, } from \"./commands/UpdateKinesisStreamingDestinationCommand\";\nimport { UpdateTableCommand } from \"./commands/UpdateTableCommand\";\nimport { UpdateTableReplicaAutoScalingCommand, } from \"./commands/UpdateTableReplicaAutoScalingCommand\";\nimport { UpdateTimeToLiveCommand, } from \"./commands/UpdateTimeToLiveCommand\";\nimport { DynamoDBClient } from \"./DynamoDBClient\";\nconst commands = {\n BatchExecuteStatementCommand,\n BatchGetItemCommand,\n BatchWriteItemCommand,\n CreateBackupCommand,\n CreateGlobalTableCommand,\n CreateTableCommand,\n DeleteBackupCommand,\n DeleteItemCommand,\n DeleteResourcePolicyCommand,\n DeleteTableCommand,\n DescribeBackupCommand,\n DescribeContinuousBackupsCommand,\n DescribeContributorInsightsCommand,\n DescribeEndpointsCommand,\n DescribeExportCommand,\n DescribeGlobalTableCommand,\n DescribeGlobalTableSettingsCommand,\n DescribeImportCommand,\n DescribeKinesisStreamingDestinationCommand,\n DescribeLimitsCommand,\n DescribeTableCommand,\n DescribeTableReplicaAutoScalingCommand,\n DescribeTimeToLiveCommand,\n DisableKinesisStreamingDestinationCommand,\n EnableKinesisStreamingDestinationCommand,\n ExecuteStatementCommand,\n ExecuteTransactionCommand,\n ExportTableToPointInTimeCommand,\n GetItemCommand,\n GetResourcePolicyCommand,\n ImportTableCommand,\n ListBackupsCommand,\n ListContributorInsightsCommand,\n ListExportsCommand,\n ListGlobalTablesCommand,\n ListImportsCommand,\n ListTablesCommand,\n ListTagsOfResourceCommand,\n PutItemCommand,\n PutResourcePolicyCommand,\n QueryCommand,\n RestoreTableFromBackupCommand,\n RestoreTableToPointInTimeCommand,\n ScanCommand,\n TagResourceCommand,\n TransactGetItemsCommand,\n TransactWriteItemsCommand,\n UntagResourceCommand,\n UpdateContinuousBackupsCommand,\n UpdateContributorInsightsCommand,\n UpdateGlobalTableCommand,\n UpdateGlobalTableSettingsCommand,\n UpdateItemCommand,\n UpdateKinesisStreamingDestinationCommand,\n UpdateTableCommand,\n UpdateTableReplicaAutoScalingCommand,\n UpdateTimeToLiveCommand,\n};\nexport class DynamoDB extends DynamoDBClient {\n}\ncreateAggregatedClient(commands, DynamoDB);\n",
|
|
448
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_BatchExecuteStatementCommand, se_BatchExecuteStatementCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class BatchExecuteStatementCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"BatchExecuteStatement\", {})\n .n(\"DynamoDBClient\", \"BatchExecuteStatementCommand\")\n .f(void 0, void 0)\n .ser(se_BatchExecuteStatementCommand)\n .de(de_BatchExecuteStatementCommand)\n .build() {\n}\n",
|
|
449
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_BatchGetItemCommand, se_BatchGetItemCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class BatchGetItemCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"BatchGetItem\", {})\n .n(\"DynamoDBClient\", \"BatchGetItemCommand\")\n .f(void 0, void 0)\n .ser(se_BatchGetItemCommand)\n .de(de_BatchGetItemCommand)\n .build() {\n}\n",
|
|
450
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_BatchWriteItemCommand, se_BatchWriteItemCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class BatchWriteItemCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"BatchWriteItem\", {})\n .n(\"DynamoDBClient\", \"BatchWriteItemCommand\")\n .f(void 0, void 0)\n .ser(se_BatchWriteItemCommand)\n .de(de_BatchWriteItemCommand)\n .build() {\n}\n",
|
|
451
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_CreateBackupCommand, se_CreateBackupCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class CreateBackupCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"CreateBackup\", {})\n .n(\"DynamoDBClient\", \"CreateBackupCommand\")\n .f(void 0, void 0)\n .ser(se_CreateBackupCommand)\n .de(de_CreateBackupCommand)\n .build() {\n}\n",
|
|
452
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_CreateGlobalTableCommand, se_CreateGlobalTableCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class CreateGlobalTableCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"CreateGlobalTable\", {})\n .n(\"DynamoDBClient\", \"CreateGlobalTableCommand\")\n .f(void 0, void 0)\n .ser(se_CreateGlobalTableCommand)\n .de(de_CreateGlobalTableCommand)\n .build() {\n}\n",
|
|
453
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_CreateTableCommand, se_CreateTableCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class CreateTableCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"CreateTable\", {})\n .n(\"DynamoDBClient\", \"CreateTableCommand\")\n .f(void 0, void 0)\n .ser(se_CreateTableCommand)\n .de(de_CreateTableCommand)\n .build() {\n}\n",
|
|
454
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_DeleteBackupCommand, se_DeleteBackupCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class DeleteBackupCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"DeleteBackup\", {})\n .n(\"DynamoDBClient\", \"DeleteBackupCommand\")\n .f(void 0, void 0)\n .ser(se_DeleteBackupCommand)\n .de(de_DeleteBackupCommand)\n .build() {\n}\n",
|
|
455
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_DeleteItemCommand, se_DeleteItemCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class DeleteItemCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"DeleteItem\", {})\n .n(\"DynamoDBClient\", \"DeleteItemCommand\")\n .f(void 0, void 0)\n .ser(se_DeleteItemCommand)\n .de(de_DeleteItemCommand)\n .build() {\n}\n",
|
|
456
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_DeleteResourcePolicyCommand, se_DeleteResourcePolicyCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class DeleteResourcePolicyCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"DeleteResourcePolicy\", {})\n .n(\"DynamoDBClient\", \"DeleteResourcePolicyCommand\")\n .f(void 0, void 0)\n .ser(se_DeleteResourcePolicyCommand)\n .de(de_DeleteResourcePolicyCommand)\n .build() {\n}\n",
|
|
457
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_DeleteTableCommand, se_DeleteTableCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class DeleteTableCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"DeleteTable\", {})\n .n(\"DynamoDBClient\", \"DeleteTableCommand\")\n .f(void 0, void 0)\n .ser(se_DeleteTableCommand)\n .de(de_DeleteTableCommand)\n .build() {\n}\n",
|
|
458
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_DescribeBackupCommand, se_DescribeBackupCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class DescribeBackupCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"DescribeBackup\", {})\n .n(\"DynamoDBClient\", \"DescribeBackupCommand\")\n .f(void 0, void 0)\n .ser(se_DescribeBackupCommand)\n .de(de_DescribeBackupCommand)\n .build() {\n}\n",
|
|
459
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_DescribeContinuousBackupsCommand, se_DescribeContinuousBackupsCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class DescribeContinuousBackupsCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"DescribeContinuousBackups\", {})\n .n(\"DynamoDBClient\", \"DescribeContinuousBackupsCommand\")\n .f(void 0, void 0)\n .ser(se_DescribeContinuousBackupsCommand)\n .de(de_DescribeContinuousBackupsCommand)\n .build() {\n}\n",
|
|
460
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_DescribeContributorInsightsCommand, se_DescribeContributorInsightsCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class DescribeContributorInsightsCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"DescribeContributorInsights\", {})\n .n(\"DynamoDBClient\", \"DescribeContributorInsightsCommand\")\n .f(void 0, void 0)\n .ser(se_DescribeContributorInsightsCommand)\n .de(de_DescribeContributorInsightsCommand)\n .build() {\n}\n",
|
|
461
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_DescribeExportCommand, se_DescribeExportCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class DescribeExportCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"DescribeExport\", {})\n .n(\"DynamoDBClient\", \"DescribeExportCommand\")\n .f(void 0, void 0)\n .ser(se_DescribeExportCommand)\n .de(de_DescribeExportCommand)\n .build() {\n}\n",
|
|
462
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_DescribeGlobalTableCommand, se_DescribeGlobalTableCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class DescribeGlobalTableCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"DescribeGlobalTable\", {})\n .n(\"DynamoDBClient\", \"DescribeGlobalTableCommand\")\n .f(void 0, void 0)\n .ser(se_DescribeGlobalTableCommand)\n .de(de_DescribeGlobalTableCommand)\n .build() {\n}\n",
|
|
463
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_DescribeGlobalTableSettingsCommand, se_DescribeGlobalTableSettingsCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class DescribeGlobalTableSettingsCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"DescribeGlobalTableSettings\", {})\n .n(\"DynamoDBClient\", \"DescribeGlobalTableSettingsCommand\")\n .f(void 0, void 0)\n .ser(se_DescribeGlobalTableSettingsCommand)\n .de(de_DescribeGlobalTableSettingsCommand)\n .build() {\n}\n",
|
|
464
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_DescribeImportCommand, se_DescribeImportCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class DescribeImportCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"DescribeImport\", {})\n .n(\"DynamoDBClient\", \"DescribeImportCommand\")\n .f(void 0, void 0)\n .ser(se_DescribeImportCommand)\n .de(de_DescribeImportCommand)\n .build() {\n}\n",
|
|
465
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_DescribeKinesisStreamingDestinationCommand, se_DescribeKinesisStreamingDestinationCommand, } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class DescribeKinesisStreamingDestinationCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"DescribeKinesisStreamingDestination\", {})\n .n(\"DynamoDBClient\", \"DescribeKinesisStreamingDestinationCommand\")\n .f(void 0, void 0)\n .ser(se_DescribeKinesisStreamingDestinationCommand)\n .de(de_DescribeKinesisStreamingDestinationCommand)\n .build() {\n}\n",
|
|
466
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_DescribeLimitsCommand, se_DescribeLimitsCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class DescribeLimitsCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"DescribeLimits\", {})\n .n(\"DynamoDBClient\", \"DescribeLimitsCommand\")\n .f(void 0, void 0)\n .ser(se_DescribeLimitsCommand)\n .de(de_DescribeLimitsCommand)\n .build() {\n}\n",
|
|
467
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_DescribeTableCommand, se_DescribeTableCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class DescribeTableCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"DescribeTable\", {})\n .n(\"DynamoDBClient\", \"DescribeTableCommand\")\n .f(void 0, void 0)\n .ser(se_DescribeTableCommand)\n .de(de_DescribeTableCommand)\n .build() {\n}\n",
|
|
468
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_DescribeTableReplicaAutoScalingCommand, se_DescribeTableReplicaAutoScalingCommand, } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class DescribeTableReplicaAutoScalingCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"DescribeTableReplicaAutoScaling\", {})\n .n(\"DynamoDBClient\", \"DescribeTableReplicaAutoScalingCommand\")\n .f(void 0, void 0)\n .ser(se_DescribeTableReplicaAutoScalingCommand)\n .de(de_DescribeTableReplicaAutoScalingCommand)\n .build() {\n}\n",
|
|
469
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_DescribeTimeToLiveCommand, se_DescribeTimeToLiveCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class DescribeTimeToLiveCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"DescribeTimeToLive\", {})\n .n(\"DynamoDBClient\", \"DescribeTimeToLiveCommand\")\n .f(void 0, void 0)\n .ser(se_DescribeTimeToLiveCommand)\n .de(de_DescribeTimeToLiveCommand)\n .build() {\n}\n",
|
|
470
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_DisableKinesisStreamingDestinationCommand, se_DisableKinesisStreamingDestinationCommand, } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class DisableKinesisStreamingDestinationCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"DisableKinesisStreamingDestination\", {})\n .n(\"DynamoDBClient\", \"DisableKinesisStreamingDestinationCommand\")\n .f(void 0, void 0)\n .ser(se_DisableKinesisStreamingDestinationCommand)\n .de(de_DisableKinesisStreamingDestinationCommand)\n .build() {\n}\n",
|
|
471
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_EnableKinesisStreamingDestinationCommand, se_EnableKinesisStreamingDestinationCommand, } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class EnableKinesisStreamingDestinationCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"EnableKinesisStreamingDestination\", {})\n .n(\"DynamoDBClient\", \"EnableKinesisStreamingDestinationCommand\")\n .f(void 0, void 0)\n .ser(se_EnableKinesisStreamingDestinationCommand)\n .de(de_EnableKinesisStreamingDestinationCommand)\n .build() {\n}\n",
|
|
472
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_ExecuteStatementCommand, se_ExecuteStatementCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class ExecuteStatementCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"ExecuteStatement\", {})\n .n(\"DynamoDBClient\", \"ExecuteStatementCommand\")\n .f(void 0, void 0)\n .ser(se_ExecuteStatementCommand)\n .de(de_ExecuteStatementCommand)\n .build() {\n}\n",
|
|
473
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_ExecuteTransactionCommand, se_ExecuteTransactionCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class ExecuteTransactionCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"ExecuteTransaction\", {})\n .n(\"DynamoDBClient\", \"ExecuteTransactionCommand\")\n .f(void 0, void 0)\n .ser(se_ExecuteTransactionCommand)\n .de(de_ExecuteTransactionCommand)\n .build() {\n}\n",
|
|
474
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_ExportTableToPointInTimeCommand, se_ExportTableToPointInTimeCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class ExportTableToPointInTimeCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"ExportTableToPointInTime\", {})\n .n(\"DynamoDBClient\", \"ExportTableToPointInTimeCommand\")\n .f(void 0, void 0)\n .ser(se_ExportTableToPointInTimeCommand)\n .de(de_ExportTableToPointInTimeCommand)\n .build() {\n}\n",
|
|
475
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_GetItemCommand, se_GetItemCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class GetItemCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"GetItem\", {})\n .n(\"DynamoDBClient\", \"GetItemCommand\")\n .f(void 0, void 0)\n .ser(se_GetItemCommand)\n .de(de_GetItemCommand)\n .build() {\n}\n",
|
|
476
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_GetResourcePolicyCommand, se_GetResourcePolicyCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class GetResourcePolicyCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"GetResourcePolicy\", {})\n .n(\"DynamoDBClient\", \"GetResourcePolicyCommand\")\n .f(void 0, void 0)\n .ser(se_GetResourcePolicyCommand)\n .de(de_GetResourcePolicyCommand)\n .build() {\n}\n",
|
|
477
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_ImportTableCommand, se_ImportTableCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class ImportTableCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"ImportTable\", {})\n .n(\"DynamoDBClient\", \"ImportTableCommand\")\n .f(void 0, void 0)\n .ser(se_ImportTableCommand)\n .de(de_ImportTableCommand)\n .build() {\n}\n",
|
|
478
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_ListBackupsCommand, se_ListBackupsCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class ListBackupsCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"ListBackups\", {})\n .n(\"DynamoDBClient\", \"ListBackupsCommand\")\n .f(void 0, void 0)\n .ser(se_ListBackupsCommand)\n .de(de_ListBackupsCommand)\n .build() {\n}\n",
|
|
479
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_ListContributorInsightsCommand, se_ListContributorInsightsCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class ListContributorInsightsCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"ListContributorInsights\", {})\n .n(\"DynamoDBClient\", \"ListContributorInsightsCommand\")\n .f(void 0, void 0)\n .ser(se_ListContributorInsightsCommand)\n .de(de_ListContributorInsightsCommand)\n .build() {\n}\n",
|
|
480
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_ListExportsCommand, se_ListExportsCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class ListExportsCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"ListExports\", {})\n .n(\"DynamoDBClient\", \"ListExportsCommand\")\n .f(void 0, void 0)\n .ser(se_ListExportsCommand)\n .de(de_ListExportsCommand)\n .build() {\n}\n",
|
|
481
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_ListGlobalTablesCommand, se_ListGlobalTablesCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class ListGlobalTablesCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"ListGlobalTables\", {})\n .n(\"DynamoDBClient\", \"ListGlobalTablesCommand\")\n .f(void 0, void 0)\n .ser(se_ListGlobalTablesCommand)\n .de(de_ListGlobalTablesCommand)\n .build() {\n}\n",
|
|
482
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_ListImportsCommand, se_ListImportsCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class ListImportsCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"ListImports\", {})\n .n(\"DynamoDBClient\", \"ListImportsCommand\")\n .f(void 0, void 0)\n .ser(se_ListImportsCommand)\n .de(de_ListImportsCommand)\n .build() {\n}\n",
|
|
483
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_ListTablesCommand, se_ListTablesCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class ListTablesCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"ListTables\", {})\n .n(\"DynamoDBClient\", \"ListTablesCommand\")\n .f(void 0, void 0)\n .ser(se_ListTablesCommand)\n .de(de_ListTablesCommand)\n .build() {\n}\n",
|
|
484
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_ListTagsOfResourceCommand, se_ListTagsOfResourceCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class ListTagsOfResourceCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"ListTagsOfResource\", {})\n .n(\"DynamoDBClient\", \"ListTagsOfResourceCommand\")\n .f(void 0, void 0)\n .ser(se_ListTagsOfResourceCommand)\n .de(de_ListTagsOfResourceCommand)\n .build() {\n}\n",
|
|
485
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_PutItemCommand, se_PutItemCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class PutItemCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"PutItem\", {})\n .n(\"DynamoDBClient\", \"PutItemCommand\")\n .f(void 0, void 0)\n .ser(se_PutItemCommand)\n .de(de_PutItemCommand)\n .build() {\n}\n",
|
|
486
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_PutResourcePolicyCommand, se_PutResourcePolicyCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class PutResourcePolicyCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"PutResourcePolicy\", {})\n .n(\"DynamoDBClient\", \"PutResourcePolicyCommand\")\n .f(void 0, void 0)\n .ser(se_PutResourcePolicyCommand)\n .de(de_PutResourcePolicyCommand)\n .build() {\n}\n",
|
|
487
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_QueryCommand, se_QueryCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class QueryCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"Query\", {})\n .n(\"DynamoDBClient\", \"QueryCommand\")\n .f(void 0, void 0)\n .ser(se_QueryCommand)\n .de(de_QueryCommand)\n .build() {\n}\n",
|
|
488
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_RestoreTableFromBackupCommand, se_RestoreTableFromBackupCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class RestoreTableFromBackupCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"RestoreTableFromBackup\", {})\n .n(\"DynamoDBClient\", \"RestoreTableFromBackupCommand\")\n .f(void 0, void 0)\n .ser(se_RestoreTableFromBackupCommand)\n .de(de_RestoreTableFromBackupCommand)\n .build() {\n}\n",
|
|
489
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_RestoreTableToPointInTimeCommand, se_RestoreTableToPointInTimeCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class RestoreTableToPointInTimeCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"RestoreTableToPointInTime\", {})\n .n(\"DynamoDBClient\", \"RestoreTableToPointInTimeCommand\")\n .f(void 0, void 0)\n .ser(se_RestoreTableToPointInTimeCommand)\n .de(de_RestoreTableToPointInTimeCommand)\n .build() {\n}\n",
|
|
490
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_ScanCommand, se_ScanCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class ScanCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"Scan\", {})\n .n(\"DynamoDBClient\", \"ScanCommand\")\n .f(void 0, void 0)\n .ser(se_ScanCommand)\n .de(de_ScanCommand)\n .build() {\n}\n",
|
|
491
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_TagResourceCommand, se_TagResourceCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class TagResourceCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"TagResource\", {})\n .n(\"DynamoDBClient\", \"TagResourceCommand\")\n .f(void 0, void 0)\n .ser(se_TagResourceCommand)\n .de(de_TagResourceCommand)\n .build() {\n}\n",
|
|
492
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_TransactGetItemsCommand, se_TransactGetItemsCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class TransactGetItemsCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"TransactGetItems\", {})\n .n(\"DynamoDBClient\", \"TransactGetItemsCommand\")\n .f(void 0, void 0)\n .ser(se_TransactGetItemsCommand)\n .de(de_TransactGetItemsCommand)\n .build() {\n}\n",
|
|
493
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_TransactWriteItemsCommand, se_TransactWriteItemsCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class TransactWriteItemsCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"TransactWriteItems\", {})\n .n(\"DynamoDBClient\", \"TransactWriteItemsCommand\")\n .f(void 0, void 0)\n .ser(se_TransactWriteItemsCommand)\n .de(de_TransactWriteItemsCommand)\n .build() {\n}\n",
|
|
494
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_UntagResourceCommand, se_UntagResourceCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class UntagResourceCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"UntagResource\", {})\n .n(\"DynamoDBClient\", \"UntagResourceCommand\")\n .f(void 0, void 0)\n .ser(se_UntagResourceCommand)\n .de(de_UntagResourceCommand)\n .build() {\n}\n",
|
|
495
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_UpdateContinuousBackupsCommand, se_UpdateContinuousBackupsCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class UpdateContinuousBackupsCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"UpdateContinuousBackups\", {})\n .n(\"DynamoDBClient\", \"UpdateContinuousBackupsCommand\")\n .f(void 0, void 0)\n .ser(se_UpdateContinuousBackupsCommand)\n .de(de_UpdateContinuousBackupsCommand)\n .build() {\n}\n",
|
|
496
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_UpdateContributorInsightsCommand, se_UpdateContributorInsightsCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class UpdateContributorInsightsCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"UpdateContributorInsights\", {})\n .n(\"DynamoDBClient\", \"UpdateContributorInsightsCommand\")\n .f(void 0, void 0)\n .ser(se_UpdateContributorInsightsCommand)\n .de(de_UpdateContributorInsightsCommand)\n .build() {\n}\n",
|
|
497
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_UpdateGlobalTableCommand, se_UpdateGlobalTableCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class UpdateGlobalTableCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"UpdateGlobalTable\", {})\n .n(\"DynamoDBClient\", \"UpdateGlobalTableCommand\")\n .f(void 0, void 0)\n .ser(se_UpdateGlobalTableCommand)\n .de(de_UpdateGlobalTableCommand)\n .build() {\n}\n",
|
|
498
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_UpdateGlobalTableSettingsCommand, se_UpdateGlobalTableSettingsCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class UpdateGlobalTableSettingsCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"UpdateGlobalTableSettings\", {})\n .n(\"DynamoDBClient\", \"UpdateGlobalTableSettingsCommand\")\n .f(void 0, void 0)\n .ser(se_UpdateGlobalTableSettingsCommand)\n .de(de_UpdateGlobalTableSettingsCommand)\n .build() {\n}\n",
|
|
499
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_UpdateItemCommand, se_UpdateItemCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class UpdateItemCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"UpdateItem\", {})\n .n(\"DynamoDBClient\", \"UpdateItemCommand\")\n .f(void 0, void 0)\n .ser(se_UpdateItemCommand)\n .de(de_UpdateItemCommand)\n .build() {\n}\n",
|
|
500
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_UpdateKinesisStreamingDestinationCommand, se_UpdateKinesisStreamingDestinationCommand, } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class UpdateKinesisStreamingDestinationCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"UpdateKinesisStreamingDestination\", {})\n .n(\"DynamoDBClient\", \"UpdateKinesisStreamingDestinationCommand\")\n .f(void 0, void 0)\n .ser(se_UpdateKinesisStreamingDestinationCommand)\n .de(de_UpdateKinesisStreamingDestinationCommand)\n .build() {\n}\n",
|
|
501
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_UpdateTableCommand, se_UpdateTableCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class UpdateTableCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"UpdateTable\", {})\n .n(\"DynamoDBClient\", \"UpdateTableCommand\")\n .f(void 0, void 0)\n .ser(se_UpdateTableCommand)\n .de(de_UpdateTableCommand)\n .build() {\n}\n",
|
|
502
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_UpdateTableReplicaAutoScalingCommand, se_UpdateTableReplicaAutoScalingCommand, } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class UpdateTableReplicaAutoScalingCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"UpdateTableReplicaAutoScaling\", {})\n .n(\"DynamoDBClient\", \"UpdateTableReplicaAutoScalingCommand\")\n .f(void 0, void 0)\n .ser(se_UpdateTableReplicaAutoScalingCommand)\n .de(de_UpdateTableReplicaAutoScalingCommand)\n .build() {\n}\n",
|
|
503
|
+
"import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_UpdateTimeToLiveCommand, se_UpdateTimeToLiveCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class UpdateTimeToLiveCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"DynamoDB_20120810\", \"UpdateTimeToLive\", {})\n .n(\"DynamoDBClient\", \"UpdateTimeToLiveCommand\")\n .f(void 0, void 0)\n .ser(se_UpdateTimeToLiveCommand)\n .de(de_UpdateTimeToLiveCommand)\n .build() {\n}\n",
|
|
504
|
+
"import type { PutItemCommandInput } from '@aws-sdk/client-dynamodb'\nimport { DynamoDB, ListTablesCommand } from '@aws-sdk/client-dynamodb'\nimport { cache } from '@stacksjs/config'\nimport type { CacheDriver } from './type'\n\nconst valueAttribute = 'value'\nconst keyAttribute = 'key'\nconst tableName = cache.drivers?.dynamodb?.table\n\nconst client = new DynamoDB({ region: cache.drivers?.dynamodb?.region })\n\nfunction getValueType(value: string | number) {\n if (typeof value === 'string') return 'S'\n if (typeof value === 'number') return 'N'\n return 'S'\n}\n\nfunction serialize(value: string | number) {\n return String(value)\n}\n\nexport const dynamodb: CacheDriver = {\n async createTable() {\n const tables = await client.send(new ListTablesCommand({}))\n\n const tableExists = tables.TableNames?.includes('cache')\n\n if (tableExists) return\n\n const params = {\n AttributeDefinitions: [\n {\n AttributeName: 'key',\n AttributeType: 'S',\n },\n ],\n KeySchema: [\n {\n AttributeName: 'key',\n KeyType: 'HASH',\n },\n ],\n ProvisionedThroughput: {\n ReadCapacityUnits: 5,\n WriteCapacityUnits: 5,\n },\n TableName: tableName,\n }\n\n client.createTable(params)\n },\n\n async set(key: string, value: string | number): Promise<void> {\n const params: PutItemCommandInput = {\n TableName: tableName,\n Item: {\n [keyAttribute]: {\n S: key,\n },\n [valueAttribute]: {\n [getValueType(value)]: serialize(value),\n },\n },\n }\n\n await client.putItem(params)\n },\n\n async get(key: string): Promise<string | undefined | null> {\n const params = {\n TableName: tableName,\n Key: {\n [keyAttribute]: {\n S: key,\n },\n },\n }\n\n const response = await client.getItem(params)\n\n if (!response.Item) return null\n\n return response.Item[valueAttribute].S ?? response.Item[valueAttribute].N\n },\n\n async remove(key: string): Promise<void> {\n const params = {\n TableName: tableName,\n Key: {\n [keyAttribute]: {\n S: key,\n },\n },\n }\n\n await client.deleteItem(params)\n },\n\n del(key: string): Promise<void> {\n return this.remove(key)\n },\n\n client,\n}\n"
|
|
5
505
|
],
|
|
6
|
-
"mappings": "",
|
|
7
|
-
"debugId": "
|
|
506
|
+
"mappings": "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",
|
|
507
|
+
"debugId": "3646DAF4EC9A9C5364756E2164756E21",
|
|
8
508
|
"names": []
|
|
9
509
|
}
|