{"version":3,"file":"static/js/vendors-e3767e07.1133967b.js","mappings":"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","sources":["../node_modules/@aws-sdk/core/dist-es/submodules/client/setFeature.js","../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getDateHeader.js","../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getSkewCorrectedDate.js","../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getUpdatedSystemClockOffset.js","../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/isClockSkewed.js","../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4Signer.js","../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4ASigner.js","../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4AConfig.js","../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4Config.js","../node_modules/@aws-sdk/core/dist-es/submodules/client/setCredentialFeature.js","../node_modules/@aws-sdk/core/dist-es/submodules/protocols/xml/parseXmlBody.js","../node_modules/@aws-sdk/core/dist-es/submodules/protocols/common.js","../node_modules/@aws-sdk/middleware-expect-continue/dist-es/index.js","../node_modules/@aws-sdk/middleware-flexible-checksums/dist-es/constants.js","../node_modules/@aws-sdk/middleware-flexible-checksums/dist-es/stringUnionSelector.js","../node_modules/@aws-sdk/middleware-flexible-checksums/dist-es/crc64-nvme-crt-container.js","../node_modules/@aws-sdk/middleware-flexible-checksums/dist-es/types.js","../node_modules/@aws-sdk/middleware-flexible-checksums/dist-es/getChecksumLocationName.js","../node_modules/@aws-sdk/middleware-flexible-checksums/dist-es/isStreaming.js","../node_modules/@aws-sdk/middleware-flexible-checksums/dist-es/getCrc32ChecksumAlgorithmFunction.browser.js","../node_modules/@aws-sdk/middleware-flexible-checksums/dist-es/selectChecksumAlgorithmFunction.js","../node_modules/@aws-sdk/middleware-flexible-checksums/dist-es/stringHasher.js","../node_modules/@aws-sdk/middleware-flexible-checksums/dist-es/flexibleChecksumsMiddleware.js","../node_modules/@aws-sdk/middleware-flexible-checksums/dist-es/hasHeaderWithPrefix.js","../node_modules/@aws-sdk/middleware-flexible-checksums/dist-es/getChecksumAlgorithmForRequest.js","../node_modules/@aws-sdk/middleware-flexible-checksums/dist-es/hasHeader.js","../node_modules/@aws-sdk/middleware-flexible-checksums/dist-es/flexibleChecksumsInputMiddleware.js","../node_modules/@aws-sdk/middleware-flexible-checksums/dist-es/getChecksumAlgorithmListForResponse.js","../node_modules/@aws-sdk/middleware-flexible-checksums/dist-es/getChecksum.js","../node_modules/@aws-sdk/middleware-flexible-checksums/dist-es/flexibleChecksumsResponseMiddleware.js","../node_modules/@aws-sdk/middleware-flexible-checksums/dist-es/isChecksumWithPartNumber.js","../node_modules/@aws-sdk/middleware-flexible-checksums/dist-es/validateChecksumFromResponse.js","../node_modules/@aws-sdk/middleware-flexible-checksums/dist-es/getFlexibleChecksumsPlugin.js","../node_modules/@aws-sdk/middleware-flexible-checksums/dist-es/resolveFlexibleChecksumsConfig.js","../node_modules/@aws-sdk/middleware-host-header/dist-es/index.js","../node_modules/@aws-sdk/middleware-location-constraint/dist-es/index.js","../node_modules/@aws-sdk/middleware-logger/dist-es/loggerMiddleware.js","../node_modules/@aws-sdk/middleware-recursion-detection/dist-es/index.js","../node_modules/@aws-sdk/middleware-sdk-s3/dist-es/check-content-length-header.js","../node_modules/@aws-sdk/middleware-sdk-s3/dist-es/region-redirect-endpoint-middleware.js","../node_modules/@aws-sdk/middleware-sdk-s3/dist-es/region-redirect-middleware.js","../node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-expires-middleware.js","../node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/classes/S3ExpressIdentityCache.js","../node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/classes/S3ExpressIdentityCacheEntry.js","../node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/classes/S3ExpressIdentityProviderImpl.js","../node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/constants.js","../node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/classes/SignatureV4S3Express.js","../node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/functions/s3ExpressMiddleware.js","../node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/functions/signS3Express.js","../node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/functions/s3ExpressHttpSigningMiddleware.js","../node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3Configuration.js","../node_modules/@aws-sdk/middleware-sdk-s3/dist-es/throw-200-exceptions.js","../node_modules/@aws-sdk/middleware-sdk-s3/dist-es/bucket-endpoint-middleware.js","../node_modules/@aws-sdk/middleware-sdk-s3/dist-es/validate-bucket-name.js","../node_modules/@aws-sdk/util-arn-parser/dist-es/index.js","../node_modules/@aws-sdk/middleware-ssec/dist-es/index.js","../node_modules/@aws-sdk/middleware-user-agent/dist-es/configurations.js","../node_modules/@aws-sdk/middleware-user-agent/dist-es/check-features.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/encode-features.js","../node_modules/@aws-sdk/region-config-resolver/dist-es/extensions/index.js","../node_modules/@aws-sdk/signature-v4-multi-region/dist-es/signature-v4-crt-container.js","../node_modules/@aws-sdk/signature-v4-multi-region/dist-es/SignatureV4MultiRegion.js","../node_modules/@aws-sdk/util-endpoints/dist-es/lib/aws/isVirtualHostableS3Bucket.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/lib/aws/parseArn.js","../node_modules/@aws-sdk/util-locate-window/dist-es/index.js","../node_modules/@aws-sdk/util-user-agent-browser/dist-es/index.js","../node_modules/@aws-sdk/xml-builder/dist-es/XmlText.js","../node_modules/@aws-sdk/xml-builder/dist-es/escape-element.js","../node_modules/@aws-sdk/xml-builder/dist-es/XmlNode.js","../node_modules/@aws-sdk/xml-builder/dist-es/escape-attribute.js"],"sourcesContent":["export function setFeature(context, feature, value) {\n if (!context.__aws_sdk_context) {\n context.__aws_sdk_context = {\n features: {},\n };\n }\n else if (!context.__aws_sdk_context.features) {\n context.__aws_sdk_context.features = {};\n }\n context.__aws_sdk_context.features[feature] = value;\n}\n","import { HttpResponse } from \"@smithy/protocol-http\";\nexport const getDateHeader = (response) => HttpResponse.isInstance(response) ? response.headers?.date ?? response.headers?.Date : undefined;\n","export const getSkewCorrectedDate = (systemClockOffset) => new Date(Date.now() + systemClockOffset);\n","import { isClockSkewed } from \"./isClockSkewed\";\nexport const getUpdatedSystemClockOffset = (clockTime, currentSystemClockOffset) => {\n const clockTimeInMs = Date.parse(clockTime);\n if (isClockSkewed(clockTimeInMs, currentSystemClockOffset)) {\n return clockTimeInMs - Date.now();\n }\n return currentSystemClockOffset;\n};\n","import { getSkewCorrectedDate } from \"./getSkewCorrectedDate\";\nexport const isClockSkewed = (clockTime, systemClockOffset) => Math.abs(getSkewCorrectedDate(systemClockOffset).getTime() - clockTime) >= 300000;\n","import { HttpRequest } from \"@smithy/protocol-http\";\nimport { getDateHeader, getSkewCorrectedDate, getUpdatedSystemClockOffset } from \"../utils\";\nconst throwSigningPropertyError = (name, property) => {\n if (!property) {\n throw new Error(`Property \\`${name}\\` is not resolved for AWS SDK SigV4Auth`);\n }\n return property;\n};\nexport const validateSigningProperties = async (signingProperties) => {\n const context = throwSigningPropertyError(\"context\", signingProperties.context);\n const config = throwSigningPropertyError(\"config\", signingProperties.config);\n const authScheme = context.endpointV2?.properties?.authSchemes?.[0];\n const signerFunction = throwSigningPropertyError(\"signer\", config.signer);\n const signer = await signerFunction(authScheme);\n const signingRegion = signingProperties?.signingRegion;\n const signingRegionSet = signingProperties?.signingRegionSet;\n const signingName = signingProperties?.signingName;\n return {\n config,\n signer,\n signingRegion,\n signingRegionSet,\n signingName,\n };\n};\nexport class AwsSdkSigV4Signer {\n async sign(httpRequest, identity, signingProperties) {\n if (!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 (handlerExecutionContext?.authSchemes?.length ?? 0 > 1) {\n const [first, second] = handlerExecutionContext.authSchemes;\n if (first?.name === \"sigv4a\" && second?.name === \"sigv4\") {\n signingRegion = second?.signingRegion ?? signingRegion;\n signingName = second?.signingName ?? signingName;\n }\n }\n const signedRequest = await signer.sign(httpRequest, {\n signingDate: getSkewCorrectedDate(config.systemClockOffset),\n signingRegion: 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}\nexport const AWSSDKSigV4Signer = AwsSdkSigV4Signer;\n","import { HttpRequest } from \"@smithy/protocol-http\";\nimport { getSkewCorrectedDate } from \"../utils\";\nimport { AwsSdkSigV4Signer, validateSigningProperties } from \"./AwsSdkSigV4Signer\";\nexport class AwsSdkSigV4ASigner extends AwsSdkSigV4Signer {\n async sign(httpRequest, identity, signingProperties) {\n if (!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(signingProperties);\n const configResolvedSigningRegionSet = await config.sigv4aSigningRegionSet?.();\n const multiRegionOverride = (configResolvedSigningRegionSet ??\n 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","import { normalizeProvider } from \"@smithy/core\";\nimport { ProviderError } from \"@smithy/property-provider\";\nexport const resolveAwsSdkSigV4AConfig = (config) => {\n config.sigv4aSigningRegionSet = normalizeProvider(config.sigv4aSigningRegionSet);\n return config;\n};\nexport const 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 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 ProviderError(\"sigv4a_signing_region_set not set in profile.\", {\n tryNextLink: true,\n });\n },\n default: undefined,\n};\n","import { setCredentialFeature } from \"@aws-sdk/core/client\";\nimport { doesIdentityRequireRefresh, isIdentityExpired, memoizeIdentityProvider, normalizeProvider, } from \"@smithy/core\";\nimport { SignatureV4 } from \"@smithy/signature-v4\";\nexport const resolveAwsSdkSigV4Config = (config) => {\n let isUserSupplied = false;\n let credentialsProvider;\n if (config.credentials) {\n isUserSupplied = true;\n credentialsProvider = memoizeIdentityProvider(config.credentials, isIdentityExpired, doesIdentityRequireRefresh);\n }\n if (!credentialsProvider) {\n if (config.credentialDefaultProvider) {\n credentialsProvider = normalizeProvider(config.credentialDefaultProvider(Object.assign({}, config, {\n parentClientConfig: config,\n })));\n }\n else {\n credentialsProvider = async () => {\n throw new Error(\"`credentials` is missing\");\n };\n }\n }\n const boundCredentialsProvider = async () => credentialsProvider({ callerClientConfig: config });\n const { signingEscapePath = true, systemClockOffset = config.systemClockOffset || 0, sha256, } = config;\n let signer;\n if (config.signer) {\n signer = normalizeProvider(config.signer);\n }\n else if (config.regionInfoProvider) {\n signer = () => normalizeProvider(config.region)()\n .then(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: boundCredentialsProvider,\n region: config.signingRegion,\n service: config.signingName,\n sha256,\n uriEscapePath: signingEscapePath,\n };\n const SignerCtor = config.signerConstructor || SignatureV4;\n return new SignerCtor(params);\n });\n }\n else {\n signer = async (authScheme) => {\n authScheme = Object.assign({}, {\n name: \"sigv4\",\n signingName: config.signingName || config.defaultSigningName,\n signingRegion: await normalizeProvider(config.region)(),\n properties: {},\n }, authScheme);\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: boundCredentialsProvider,\n region: config.signingRegion,\n service: config.signingName,\n sha256,\n uriEscapePath: signingEscapePath,\n };\n const SignerCtor = config.signerConstructor || SignatureV4;\n return new SignerCtor(params);\n };\n }\n return {\n ...config,\n systemClockOffset,\n signingEscapePath,\n credentials: isUserSupplied\n ? async () => boundCredentialsProvider().then((creds) => setCredentialFeature(creds, \"CREDENTIALS_CODE\", \"e\"))\n : boundCredentialsProvider,\n signer,\n };\n};\nexport const resolveAWSSDKSigV4Config = resolveAwsSdkSigV4Config;\n","export function setCredentialFeature(credentials, feature, value) {\n if (!credentials.$source) {\n credentials.$source = {};\n }\n credentials.$source[feature] = value;\n return credentials;\n}\n","import { getValueFromTextNode } from \"@smithy/smithy-client\";\nimport { XMLParser } from \"fast-xml-parser\";\nimport { collectBodyString } from \"../common\";\nexport const parseXmlBody = (streamBody, context) => collectBodyString(streamBody, context).then((encoded) => {\n if (encoded.length) {\n const parser = new 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\") ? \"\" : undefined),\n });\n parser.addEntity(\"#xD\", \"\\r\");\n parser.addEntity(\"#10\", \"\\n\");\n let parsedObj;\n try {\n parsedObj = parser.parse(encoded, true);\n }\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 getValueFromTextNode(parsedObjToReturn);\n }\n return {};\n});\nexport const parseXmlErrorBody = 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};\nexport const loadRestXmlErrorCode = (output, data) => {\n if (data?.Error?.Code !== undefined) {\n return data.Error.Code;\n }\n if (data?.Code !== undefined) {\n return data.Code;\n }\n if (output.statusCode == 404) {\n return \"NotFound\";\n }\n};\n","import { collectBody } from \"@smithy/smithy-client\";\nexport const collectBodyString = (streamBody, context) => collectBody(streamBody, context).then((body) => context.utf8Encoder(body));\n","import { HttpRequest } from \"@smithy/protocol-http\";\nexport function addExpectContinueMiddleware(options) {\n return (next) => async (args) => {\n const { request } = args;\n if (HttpRequest.isInstance(request) && request.body && options.runtime === \"node\") {\n if (options.requestHandler?.constructor?.name !== \"FetchHttpHandler\") {\n request.headers = {\n ...request.headers,\n Expect: \"100-continue\",\n };\n }\n }\n return next({\n ...args,\n request,\n });\n };\n}\nexport const addExpectContinueMiddlewareOptions = {\n step: \"build\",\n tags: [\"SET_EXPECT_HEADER\", \"EXPECT_HEADER\"],\n name: \"addExpectContinueMiddleware\",\n override: true,\n};\nexport const getAddExpectContinuePlugin = (options) => ({\n applyToStack: (clientStack) => {\n clientStack.add(addExpectContinueMiddleware(options), addExpectContinueMiddlewareOptions);\n },\n});\n","export const RequestChecksumCalculation = {\n WHEN_SUPPORTED: \"WHEN_SUPPORTED\",\n WHEN_REQUIRED: \"WHEN_REQUIRED\",\n};\nexport const DEFAULT_REQUEST_CHECKSUM_CALCULATION = RequestChecksumCalculation.WHEN_SUPPORTED;\nexport const ResponseChecksumValidation = {\n WHEN_SUPPORTED: \"WHEN_SUPPORTED\",\n WHEN_REQUIRED: \"WHEN_REQUIRED\",\n};\nexport const DEFAULT_RESPONSE_CHECKSUM_VALIDATION = RequestChecksumCalculation.WHEN_SUPPORTED;\nexport var ChecksumAlgorithm;\n(function (ChecksumAlgorithm) {\n ChecksumAlgorithm[\"MD5\"] = \"MD5\";\n ChecksumAlgorithm[\"CRC32\"] = \"CRC32\";\n ChecksumAlgorithm[\"CRC32C\"] = \"CRC32C\";\n ChecksumAlgorithm[\"CRC64NVME\"] = \"CRC64NVME\";\n ChecksumAlgorithm[\"SHA1\"] = \"SHA1\";\n ChecksumAlgorithm[\"SHA256\"] = \"SHA256\";\n})(ChecksumAlgorithm || (ChecksumAlgorithm = {}));\nexport var ChecksumLocation;\n(function (ChecksumLocation) {\n ChecksumLocation[\"HEADER\"] = \"header\";\n ChecksumLocation[\"TRAILER\"] = \"trailer\";\n})(ChecksumLocation || (ChecksumLocation = {}));\nexport const DEFAULT_CHECKSUM_ALGORITHM = ChecksumAlgorithm.CRC32;\n","export var SelectorType;\n(function (SelectorType) {\n SelectorType[\"ENV\"] = \"env\";\n SelectorType[\"CONFIG\"] = \"shared config entry\";\n})(SelectorType || (SelectorType = {}));\nexport const stringUnionSelector = (obj, key, union, type) => {\n if (!(key in obj))\n return undefined;\n const value = obj[key].toUpperCase();\n if (!Object.values(union).includes(value)) {\n throw new TypeError(`Cannot load ${type} '${key}'. Expected one of ${Object.values(union)}, got '${obj[key]}'.`);\n }\n return value;\n};\n","export const crc64NvmeCrtContainer = {\n CrtCrc64Nvme: null,\n};\n","import { ChecksumAlgorithm } from \"./constants\";\nexport const CLIENT_SUPPORTED_ALGORITHMS = [\n ChecksumAlgorithm.CRC32,\n ChecksumAlgorithm.CRC32C,\n ChecksumAlgorithm.CRC64NVME,\n ChecksumAlgorithm.SHA1,\n ChecksumAlgorithm.SHA256,\n];\nexport const PRIORITY_ORDER_ALGORITHMS = [\n ChecksumAlgorithm.SHA256,\n ChecksumAlgorithm.SHA1,\n ChecksumAlgorithm.CRC32,\n ChecksumAlgorithm.CRC32C,\n ChecksumAlgorithm.CRC64NVME,\n];\n","import { ChecksumAlgorithm } from \"./constants\";\nexport const getChecksumLocationName = (algorithm) => algorithm === ChecksumAlgorithm.MD5 ? \"content-md5\" : `x-amz-checksum-${algorithm.toLowerCase()}`;\n","import { isArrayBuffer } from \"@smithy/is-array-buffer\";\nexport const isStreaming = (body) => body !== undefined && typeof body !== \"string\" && !ArrayBuffer.isView(body) && !isArrayBuffer(body);\n","import { AwsCrc32 } from \"@aws-crypto/crc32\";\nexport const getCrc32ChecksumAlgorithmFunction = () => AwsCrc32;\n","import { AwsCrc32c } from \"@aws-crypto/crc32c\";\nimport { ChecksumAlgorithm } from \"./constants\";\nimport { crc64NvmeCrtContainer } from \"./crc64-nvme-crt-container\";\nimport { getCrc32ChecksumAlgorithmFunction } from \"./getCrc32ChecksumAlgorithmFunction\";\nexport const selectChecksumAlgorithmFunction = (checksumAlgorithm, config) => {\n switch (checksumAlgorithm) {\n case ChecksumAlgorithm.MD5:\n return config.md5;\n case ChecksumAlgorithm.CRC32:\n return getCrc32ChecksumAlgorithmFunction();\n case ChecksumAlgorithm.CRC32C:\n return AwsCrc32c;\n case ChecksumAlgorithm.CRC64NVME:\n if (typeof crc64NvmeCrtContainer.CrtCrc64Nvme !== \"function\") {\n throw new Error(`Please check whether you have installed the \"@aws-sdk/crc64-nvme-crt\" package explicitly. \\n` +\n `You must also register the package by calling [require(\"@aws-sdk/crc64-nvme-crt\");] ` +\n `or an ESM equivalent such as [import \"@aws-sdk/crc64-nvme-crt\";]. \\n` +\n \"For more information please go to \" +\n \"https://github.com/aws/aws-sdk-js-v3#functionality-requiring-aws-common-runtime-crt\");\n }\n return crc64NvmeCrtContainer.CrtCrc64Nvme;\n case ChecksumAlgorithm.SHA1:\n return config.sha1;\n case ChecksumAlgorithm.SHA256:\n return config.sha256;\n default:\n throw new Error(`Unsupported checksum algorithm: ${checksumAlgorithm}`);\n }\n};\n","import { toUint8Array } from \"@smithy/util-utf8\";\nexport const stringHasher = (checksumAlgorithmFn, body) => {\n const hash = new checksumAlgorithmFn();\n hash.update(toUint8Array(body || \"\"));\n return hash.digest();\n};\n","import { setFeature } from \"@aws-sdk/core\";\nimport { HttpRequest } from \"@smithy/protocol-http\";\nimport { ChecksumAlgorithm, DEFAULT_CHECKSUM_ALGORITHM, RequestChecksumCalculation } from \"./constants\";\nimport { getChecksumAlgorithmForRequest } from \"./getChecksumAlgorithmForRequest\";\nimport { getChecksumLocationName } from \"./getChecksumLocationName\";\nimport { hasHeader } from \"./hasHeader\";\nimport { hasHeaderWithPrefix } from \"./hasHeaderWithPrefix\";\nimport { isStreaming } from \"./isStreaming\";\nimport { selectChecksumAlgorithmFunction } from \"./selectChecksumAlgorithmFunction\";\nimport { stringHasher } from \"./stringHasher\";\nexport const flexibleChecksumsMiddlewareOptions = {\n name: \"flexibleChecksumsMiddleware\",\n step: \"build\",\n tags: [\"BODY_CHECKSUM\"],\n override: true,\n};\nexport const flexibleChecksumsMiddleware = (config, middlewareConfig) => (next, context) => async (args) => {\n if (!HttpRequest.isInstance(args.request)) {\n return next(args);\n }\n if (hasHeaderWithPrefix(\"x-amz-checksum-\", args.request.headers)) {\n return next(args);\n }\n const { request, input } = args;\n const { body: requestBody, headers } = request;\n const { base64Encoder, streamHasher } = config;\n const { requestChecksumRequired, requestAlgorithmMember } = middlewareConfig;\n const requestChecksumCalculation = await config.requestChecksumCalculation();\n const requestAlgorithmMemberName = requestAlgorithmMember?.name;\n const requestAlgorithmMemberHttpHeader = requestAlgorithmMember?.httpHeader;\n if (requestAlgorithmMemberName && !input[requestAlgorithmMemberName]) {\n if (requestChecksumCalculation === RequestChecksumCalculation.WHEN_SUPPORTED || requestChecksumRequired) {\n input[requestAlgorithmMemberName] = DEFAULT_CHECKSUM_ALGORITHM;\n if (requestAlgorithmMemberHttpHeader) {\n headers[requestAlgorithmMemberHttpHeader] = DEFAULT_CHECKSUM_ALGORITHM;\n }\n }\n }\n const checksumAlgorithm = getChecksumAlgorithmForRequest(input, {\n requestChecksumRequired,\n requestAlgorithmMember: requestAlgorithmMember?.name,\n requestChecksumCalculation,\n });\n let updatedBody = requestBody;\n let updatedHeaders = headers;\n if (checksumAlgorithm) {\n switch (checksumAlgorithm) {\n case ChecksumAlgorithm.CRC32:\n setFeature(context, \"FLEXIBLE_CHECKSUMS_REQ_CRC32\", \"U\");\n break;\n case ChecksumAlgorithm.CRC32C:\n setFeature(context, \"FLEXIBLE_CHECKSUMS_REQ_CRC32C\", \"V\");\n break;\n case ChecksumAlgorithm.CRC64NVME:\n setFeature(context, \"FLEXIBLE_CHECKSUMS_REQ_CRC64\", \"W\");\n break;\n case ChecksumAlgorithm.SHA1:\n setFeature(context, \"FLEXIBLE_CHECKSUMS_REQ_SHA1\", \"X\");\n break;\n case ChecksumAlgorithm.SHA256:\n setFeature(context, \"FLEXIBLE_CHECKSUMS_REQ_SHA256\", \"Y\");\n break;\n }\n const checksumLocationName = getChecksumLocationName(checksumAlgorithm);\n const checksumAlgorithmFn = selectChecksumAlgorithmFunction(checksumAlgorithm, config);\n if (isStreaming(requestBody)) {\n const { getAwsChunkedEncodingStream, bodyLengthChecker } = config;\n updatedBody = getAwsChunkedEncodingStream(requestBody, {\n base64Encoder,\n bodyLengthChecker,\n checksumLocationName,\n checksumAlgorithmFn,\n streamHasher,\n });\n updatedHeaders = {\n ...headers,\n \"content-encoding\": headers[\"content-encoding\"]\n ? `${headers[\"content-encoding\"]},aws-chunked`\n : \"aws-chunked\",\n \"transfer-encoding\": \"chunked\",\n \"x-amz-decoded-content-length\": headers[\"content-length\"],\n \"x-amz-content-sha256\": \"STREAMING-UNSIGNED-PAYLOAD-TRAILER\",\n \"x-amz-trailer\": checksumLocationName,\n };\n delete updatedHeaders[\"content-length\"];\n }\n else if (!hasHeader(checksumLocationName, headers)) {\n const rawChecksum = await stringHasher(checksumAlgorithmFn, requestBody);\n updatedHeaders = {\n ...headers,\n [checksumLocationName]: base64Encoder(rawChecksum),\n };\n }\n }\n const result = await next({\n ...args,\n request: {\n ...request,\n headers: updatedHeaders,\n body: updatedBody,\n },\n });\n return result;\n};\n","export const hasHeaderWithPrefix = (headerPrefix, headers) => {\n const soughtHeaderPrefix = headerPrefix.toLowerCase();\n for (const headerName of Object.keys(headers)) {\n if (headerName.toLowerCase().startsWith(soughtHeaderPrefix)) {\n return true;\n }\n }\n return false;\n};\n","import { DEFAULT_CHECKSUM_ALGORITHM, RequestChecksumCalculation } from \"./constants\";\nimport { CLIENT_SUPPORTED_ALGORITHMS } from \"./types\";\nexport const getChecksumAlgorithmForRequest = (input, { requestChecksumRequired, requestAlgorithmMember, requestChecksumCalculation }) => {\n if (!requestAlgorithmMember) {\n return requestChecksumCalculation === RequestChecksumCalculation.WHEN_SUPPORTED || requestChecksumRequired\n ? DEFAULT_CHECKSUM_ALGORITHM\n : undefined;\n }\n if (!input[requestAlgorithmMember]) {\n return undefined;\n }\n const checksumAlgorithm = input[requestAlgorithmMember];\n if (!CLIENT_SUPPORTED_ALGORITHMS.includes(checksumAlgorithm)) {\n throw new Error(`The checksum algorithm \"${checksumAlgorithm}\" is not supported by the client.` +\n ` Select one of ${CLIENT_SUPPORTED_ALGORITHMS}.`);\n }\n return checksumAlgorithm;\n};\n","export const hasHeader = (header, headers) => {\n const soughtHeader = header.toLowerCase();\n for (const headerName of Object.keys(headers)) {\n if (soughtHeader === headerName.toLowerCase()) {\n return true;\n }\n }\n return false;\n};\n","import { setFeature } from \"@aws-sdk/core\";\nimport { RequestChecksumCalculation, ResponseChecksumValidation } from \"./constants\";\nexport const flexibleChecksumsInputMiddlewareOptions = {\n name: \"flexibleChecksumsInputMiddleware\",\n toMiddleware: \"serializerMiddleware\",\n relation: \"before\",\n tags: [\"BODY_CHECKSUM\"],\n override: true,\n};\nexport const flexibleChecksumsInputMiddleware = (config, middlewareConfig) => (next, context) => async (args) => {\n const input = args.input;\n const { requestValidationModeMember } = middlewareConfig;\n const requestChecksumCalculation = await config.requestChecksumCalculation();\n const responseChecksumValidation = await config.responseChecksumValidation();\n switch (requestChecksumCalculation) {\n case RequestChecksumCalculation.WHEN_REQUIRED:\n setFeature(context, \"FLEXIBLE_CHECKSUMS_REQ_WHEN_REQUIRED\", \"a\");\n break;\n case RequestChecksumCalculation.WHEN_SUPPORTED:\n setFeature(context, \"FLEXIBLE_CHECKSUMS_REQ_WHEN_SUPPORTED\", \"Z\");\n break;\n }\n switch (responseChecksumValidation) {\n case ResponseChecksumValidation.WHEN_REQUIRED:\n setFeature(context, \"FLEXIBLE_CHECKSUMS_RES_WHEN_REQUIRED\", \"c\");\n break;\n case ResponseChecksumValidation.WHEN_SUPPORTED:\n setFeature(context, \"FLEXIBLE_CHECKSUMS_RES_WHEN_SUPPORTED\", \"b\");\n break;\n }\n if (requestValidationModeMember && !input[requestValidationModeMember]) {\n if (responseChecksumValidation === ResponseChecksumValidation.WHEN_SUPPORTED) {\n input[requestValidationModeMember] = \"ENABLED\";\n }\n }\n return next(args);\n};\n","import { CLIENT_SUPPORTED_ALGORITHMS, PRIORITY_ORDER_ALGORITHMS } from \"./types\";\nexport const getChecksumAlgorithmListForResponse = (responseAlgorithms = []) => {\n const validChecksumAlgorithms = [];\n for (const algorithm of PRIORITY_ORDER_ALGORITHMS) {\n if (!responseAlgorithms.includes(algorithm) || !CLIENT_SUPPORTED_ALGORITHMS.includes(algorithm)) {\n continue;\n }\n validChecksumAlgorithms.push(algorithm);\n }\n return validChecksumAlgorithms;\n};\n","import { stringHasher } from \"./stringHasher\";\nexport const getChecksum = async (body, { checksumAlgorithmFn, base64Encoder }) => base64Encoder(await stringHasher(checksumAlgorithmFn, body));\n","import { HttpRequest } from \"@smithy/protocol-http\";\nimport { getChecksumAlgorithmListForResponse } from \"./getChecksumAlgorithmListForResponse\";\nimport { getChecksumLocationName } from \"./getChecksumLocationName\";\nimport { isChecksumWithPartNumber } from \"./isChecksumWithPartNumber\";\nimport { validateChecksumFromResponse } from \"./validateChecksumFromResponse\";\nexport const flexibleChecksumsResponseMiddlewareOptions = {\n name: \"flexibleChecksumsResponseMiddleware\",\n toMiddleware: \"deserializerMiddleware\",\n relation: \"after\",\n tags: [\"BODY_CHECKSUM\"],\n override: true,\n};\nexport const flexibleChecksumsResponseMiddleware = (config, middlewareConfig) => (next, context) => async (args) => {\n if (!HttpRequest.isInstance(args.request)) {\n return next(args);\n }\n const input = args.input;\n const result = await next(args);\n const response = result.response;\n const { requestValidationModeMember, responseAlgorithms } = middlewareConfig;\n if (requestValidationModeMember && input[requestValidationModeMember] === \"ENABLED\") {\n const { clientName, commandName } = context;\n const isS3WholeObjectMultipartGetResponseChecksum = clientName === \"S3Client\" &&\n commandName === \"GetObjectCommand\" &&\n getChecksumAlgorithmListForResponse(responseAlgorithms).every((algorithm) => {\n const responseHeader = getChecksumLocationName(algorithm);\n const checksumFromResponse = response.headers[responseHeader];\n return !checksumFromResponse || isChecksumWithPartNumber(checksumFromResponse);\n });\n if (isS3WholeObjectMultipartGetResponseChecksum) {\n return result;\n }\n await validateChecksumFromResponse(response, {\n config,\n responseAlgorithms,\n logger: context.logger,\n });\n }\n return result;\n};\n","export const isChecksumWithPartNumber = (checksum) => {\n const lastHyphenIndex = checksum.lastIndexOf(\"-\");\n if (lastHyphenIndex !== -1) {\n const numberPart = checksum.slice(lastHyphenIndex + 1);\n if (!numberPart.startsWith(\"0\")) {\n const number = parseInt(numberPart, 10);\n if (!isNaN(number) && number >= 1 && number <= 10000) {\n return true;\n }\n }\n }\n return false;\n};\n","import { createChecksumStream } from \"@smithy/util-stream\";\nimport { ChecksumAlgorithm } from \"./constants\";\nimport { getChecksum } from \"./getChecksum\";\nimport { getChecksumAlgorithmListForResponse } from \"./getChecksumAlgorithmListForResponse\";\nimport { getChecksumLocationName } from \"./getChecksumLocationName\";\nimport { isStreaming } from \"./isStreaming\";\nimport { selectChecksumAlgorithmFunction } from \"./selectChecksumAlgorithmFunction\";\nexport const validateChecksumFromResponse = async (response, { config, responseAlgorithms, logger }) => {\n const checksumAlgorithms = getChecksumAlgorithmListForResponse(responseAlgorithms);\n const { body: responseBody, headers: responseHeaders } = response;\n for (const algorithm of checksumAlgorithms) {\n const responseHeader = getChecksumLocationName(algorithm);\n const checksumFromResponse = responseHeaders[responseHeader];\n if (checksumFromResponse) {\n let checksumAlgorithmFn;\n try {\n checksumAlgorithmFn = selectChecksumAlgorithmFunction(algorithm, config);\n }\n catch (error) {\n if (algorithm === ChecksumAlgorithm.CRC64NVME) {\n logger?.warn(`Skipping ${ChecksumAlgorithm.CRC64NVME} checksum validation: ${error.message}`);\n continue;\n }\n throw error;\n }\n const { base64Encoder } = config;\n if (isStreaming(responseBody)) {\n response.body = createChecksumStream({\n expectedChecksum: checksumFromResponse,\n checksumSourceLocation: responseHeader,\n checksum: new checksumAlgorithmFn(),\n source: responseBody,\n base64Encoder,\n });\n return;\n }\n const checksum = await getChecksum(responseBody, { checksumAlgorithmFn, base64Encoder });\n if (checksum === checksumFromResponse) {\n break;\n }\n throw new Error(`Checksum mismatch: expected \"${checksum}\" but received \"${checksumFromResponse}\"` +\n ` in response header \"${responseHeader}\".`);\n }\n }\n};\n","import { flexibleChecksumsInputMiddleware, flexibleChecksumsInputMiddlewareOptions, } from \"./flexibleChecksumsInputMiddleware\";\nimport { flexibleChecksumsMiddleware, flexibleChecksumsMiddlewareOptions, } from \"./flexibleChecksumsMiddleware\";\nimport { flexibleChecksumsResponseMiddleware, flexibleChecksumsResponseMiddlewareOptions, } from \"./flexibleChecksumsResponseMiddleware\";\nexport const getFlexibleChecksumsPlugin = (config, middlewareConfig) => ({\n applyToStack: (clientStack) => {\n clientStack.add(flexibleChecksumsMiddleware(config, middlewareConfig), flexibleChecksumsMiddlewareOptions);\n clientStack.addRelativeTo(flexibleChecksumsInputMiddleware(config, middlewareConfig), flexibleChecksumsInputMiddlewareOptions);\n clientStack.addRelativeTo(flexibleChecksumsResponseMiddleware(config, middlewareConfig), flexibleChecksumsResponseMiddlewareOptions);\n },\n});\n","import { normalizeProvider } from \"@smithy/util-middleware\";\nimport { DEFAULT_REQUEST_CHECKSUM_CALCULATION, DEFAULT_RESPONSE_CHECKSUM_VALIDATION, } from \"./constants\";\nexport const resolveFlexibleChecksumsConfig = (input) => ({\n ...input,\n requestChecksumCalculation: normalizeProvider(input.requestChecksumCalculation ?? DEFAULT_REQUEST_CHECKSUM_CALCULATION),\n responseChecksumValidation: normalizeProvider(input.responseChecksumValidation ?? DEFAULT_RESPONSE_CHECKSUM_VALIDATION),\n});\n","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","export function locationConstraintMiddleware(options) {\n return (next) => async (args) => {\n const { CreateBucketConfiguration } = args.input;\n const region = await options.region();\n if (!CreateBucketConfiguration?.LocationConstraint && !CreateBucketConfiguration?.Location) {\n args = {\n ...args,\n input: {\n ...args.input,\n CreateBucketConfiguration: region === \"us-east-1\" ? undefined : { LocationConstraint: region },\n },\n };\n }\n return next(args);\n };\n}\nexport const locationConstraintMiddlewareOptions = {\n step: \"initialize\",\n tags: [\"LOCATION_CONSTRAINT\", \"CREATE_BUCKET_CONFIGURATION\"],\n name: \"locationConstraintMiddleware\",\n override: true,\n};\nexport const getLocationConstraintPlugin = (config) => ({\n applyToStack: (clientStack) => {\n clientStack.add(locationConstraintMiddleware(config), locationConstraintMiddlewareOptions);\n },\n});\n","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","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","import { HttpRequest } from \"@smithy/protocol-http\";\nimport { NoOpLogger } from \"@smithy/smithy-client\";\nconst CONTENT_LENGTH_HEADER = \"content-length\";\nexport function checkContentLengthHeader() {\n return (next, context) => async (args) => {\n const { request } = args;\n if (HttpRequest.isInstance(request)) {\n if (!(CONTENT_LENGTH_HEADER in request.headers)) {\n const message = `Are you using a Stream of unknown length as the Body of a PutObject request? Consider using Upload instead from @aws-sdk/lib-storage.`;\n if (typeof context?.logger?.warn === \"function\" && !(context.logger instanceof NoOpLogger)) {\n context.logger.warn(message);\n }\n else {\n console.warn(message);\n }\n }\n }\n return next({ ...args });\n };\n}\nexport const checkContentLengthHeaderMiddlewareOptions = {\n step: \"finalizeRequest\",\n tags: [\"CHECK_CONTENT_LENGTH_HEADER\"],\n name: \"getCheckContentLengthHeaderPlugin\",\n override: true,\n};\nexport const getCheckContentLengthHeaderPlugin = (unused) => ({\n applyToStack: (clientStack) => {\n clientStack.add(checkContentLengthHeader(), checkContentLengthHeaderMiddlewareOptions);\n },\n});\n","export const regionRedirectEndpointMiddleware = (config) => {\n return (next, context) => async (args) => {\n const originalRegion = await config.region();\n const regionProviderRef = config.region;\n let unlock = () => { };\n if (context.__s3RegionRedirect) {\n Object.defineProperty(config, \"region\", {\n writable: false,\n value: async () => {\n return context.__s3RegionRedirect;\n },\n });\n unlock = () => Object.defineProperty(config, \"region\", {\n writable: true,\n value: regionProviderRef,\n });\n }\n try {\n const result = await next(args);\n if (context.__s3RegionRedirect) {\n unlock();\n const region = await config.region();\n if (originalRegion !== region) {\n throw new Error(\"Region was not restored following S3 region redirect.\");\n }\n }\n return result;\n }\n catch (e) {\n unlock();\n throw e;\n }\n };\n};\nexport const regionRedirectEndpointMiddlewareOptions = {\n tags: [\"REGION_REDIRECT\", \"S3\"],\n name: \"regionRedirectEndpointMiddleware\",\n override: true,\n relation: \"before\",\n toMiddleware: \"endpointV2Middleware\",\n};\n","import { regionRedirectEndpointMiddleware, regionRedirectEndpointMiddlewareOptions, } from \"./region-redirect-endpoint-middleware\";\nexport function regionRedirectMiddleware(clientConfig) {\n return (next, context) => async (args) => {\n try {\n return await next(args);\n }\n catch (err) {\n if (clientConfig.followRegionRedirects) {\n if (err?.$metadata?.httpStatusCode === 301 ||\n (err?.$metadata?.httpStatusCode === 400 && err?.name === \"IllegalLocationConstraintException\")) {\n try {\n const actualRegion = err.$response.headers[\"x-amz-bucket-region\"];\n context.logger?.debug(`Redirecting from ${await clientConfig.region()} to ${actualRegion}`);\n context.__s3RegionRedirect = actualRegion;\n }\n catch (e) {\n throw new Error(\"Region redirect failed: \" + e);\n }\n return next(args);\n }\n }\n throw err;\n }\n };\n}\nexport const regionRedirectMiddlewareOptions = {\n step: \"initialize\",\n tags: [\"REGION_REDIRECT\", \"S3\"],\n name: \"regionRedirectMiddleware\",\n override: true,\n};\nexport const getRegionRedirectMiddlewarePlugin = (clientConfig) => ({\n applyToStack: (clientStack) => {\n clientStack.add(regionRedirectMiddleware(clientConfig), regionRedirectMiddlewareOptions);\n clientStack.addRelativeTo(regionRedirectEndpointMiddleware(clientConfig), regionRedirectEndpointMiddlewareOptions);\n },\n});\n","import { HttpResponse } from \"@smithy/protocol-http\";\nimport { parseRfc7231DateTime } from \"@smithy/smithy-client\";\nexport const s3ExpiresMiddleware = (config) => {\n return (next, context) => async (args) => {\n const result = await next(args);\n const { response } = result;\n if (HttpResponse.isInstance(response)) {\n if (response.headers.expires) {\n response.headers.expiresstring = response.headers.expires;\n try {\n parseRfc7231DateTime(response.headers.expires);\n }\n catch (e) {\n context.logger?.warn(`AWS SDK Warning for ${context.clientName}::${context.commandName} response parsing (${response.headers.expires}): ${e}`);\n delete response.headers.expires;\n }\n }\n }\n return result;\n };\n};\nexport const s3ExpiresMiddlewareOptions = {\n tags: [\"S3\"],\n name: \"s3ExpiresMiddleware\",\n override: true,\n relation: \"after\",\n toMiddleware: \"deserializerMiddleware\",\n};\nexport const getS3ExpiresMiddlewarePlugin = (clientConfig) => ({\n applyToStack: (clientStack) => {\n clientStack.addRelativeTo(s3ExpiresMiddleware(clientConfig), s3ExpiresMiddlewareOptions);\n },\n});\n","export class S3ExpressIdentityCache {\n data;\n lastPurgeTime = Date.now();\n static EXPIRED_CREDENTIAL_PURGE_INTERVAL_MS = 30000;\n constructor(data = {}) {\n this.data = data;\n }\n get(key) {\n const entry = this.data[key];\n if (!entry) {\n return;\n }\n return entry;\n }\n set(key, entry) {\n this.data[key] = entry;\n return entry;\n }\n delete(key) {\n delete this.data[key];\n }\n async purgeExpired() {\n const now = Date.now();\n if (this.lastPurgeTime + S3ExpressIdentityCache.EXPIRED_CREDENTIAL_PURGE_INTERVAL_MS > now) {\n return;\n }\n for (const key in this.data) {\n const entry = this.data[key];\n if (!entry.isRefreshing) {\n const credential = await entry.identity;\n if (credential.expiration) {\n if (credential.expiration.getTime() < now) {\n delete this.data[key];\n }\n }\n }\n }\n }\n}\n","export class S3ExpressIdentityCacheEntry {\n _identity;\n isRefreshing;\n accessed;\n constructor(_identity, isRefreshing = false, accessed = Date.now()) {\n this._identity = _identity;\n this.isRefreshing = isRefreshing;\n this.accessed = accessed;\n }\n get identity() {\n this.accessed = Date.now();\n return this._identity;\n }\n}\n","import { S3ExpressIdentityCache } from \"./S3ExpressIdentityCache\";\nimport { S3ExpressIdentityCacheEntry } from \"./S3ExpressIdentityCacheEntry\";\nexport class S3ExpressIdentityProviderImpl {\n createSessionFn;\n cache;\n static REFRESH_WINDOW_MS = 60000;\n constructor(createSessionFn, cache = new S3ExpressIdentityCache()) {\n this.createSessionFn = createSessionFn;\n this.cache = cache;\n }\n async getS3ExpressIdentity(awsIdentity, identityProperties) {\n const key = identityProperties.Bucket;\n const { cache } = this;\n const entry = cache.get(key);\n if (entry) {\n return entry.identity.then((identity) => {\n const isExpired = (identity.expiration?.getTime() ?? 0) < Date.now();\n if (isExpired) {\n return cache.set(key, new S3ExpressIdentityCacheEntry(this.getIdentity(key))).identity;\n }\n const isExpiringSoon = (identity.expiration?.getTime() ?? 0) < Date.now() + S3ExpressIdentityProviderImpl.REFRESH_WINDOW_MS;\n if (isExpiringSoon && !entry.isRefreshing) {\n entry.isRefreshing = true;\n this.getIdentity(key).then((id) => {\n cache.set(key, new S3ExpressIdentityCacheEntry(Promise.resolve(id)));\n });\n }\n return identity;\n });\n }\n return cache.set(key, new S3ExpressIdentityCacheEntry(this.getIdentity(key))).identity;\n }\n async getIdentity(key) {\n await this.cache.purgeExpired().catch((error) => {\n console.warn(\"Error while clearing expired entries in S3ExpressIdentityCache: \\n\" + error);\n });\n const session = await this.createSessionFn(key);\n if (!session.Credentials?.AccessKeyId || !session.Credentials?.SecretAccessKey) {\n throw new Error(\"s3#createSession response credential missing AccessKeyId or SecretAccessKey.\");\n }\n const identity = {\n accessKeyId: session.Credentials.AccessKeyId,\n secretAccessKey: session.Credentials.SecretAccessKey,\n sessionToken: session.Credentials.SessionToken,\n expiration: session.Credentials.Expiration ? new Date(session.Credentials.Expiration) : undefined,\n };\n return identity;\n }\n}\n","import { booleanSelector, SelectorType } from \"@smithy/util-config-provider\";\nexport const S3_EXPRESS_BUCKET_TYPE = \"Directory\";\nexport const S3_EXPRESS_BACKEND = \"S3Express\";\nexport const S3_EXPRESS_AUTH_SCHEME = \"sigv4-s3express\";\nexport const SESSION_TOKEN_QUERY_PARAM = \"X-Amz-S3session-Token\";\nexport const SESSION_TOKEN_HEADER = SESSION_TOKEN_QUERY_PARAM.toLowerCase();\nexport const NODE_DISABLE_S3_EXPRESS_SESSION_AUTH_ENV_NAME = \"AWS_S3_DISABLE_EXPRESS_SESSION_AUTH\";\nexport const NODE_DISABLE_S3_EXPRESS_SESSION_AUTH_INI_NAME = \"s3_disable_express_session_auth\";\nexport const NODE_DISABLE_S3_EXPRESS_SESSION_AUTH_OPTIONS = {\n environmentVariableSelector: (env) => booleanSelector(env, NODE_DISABLE_S3_EXPRESS_SESSION_AUTH_ENV_NAME, SelectorType.ENV),\n configFileSelector: (profile) => booleanSelector(profile, NODE_DISABLE_S3_EXPRESS_SESSION_AUTH_INI_NAME, SelectorType.CONFIG),\n default: false,\n};\n","import { SignatureV4 } from \"@smithy/signature-v4\";\nimport { SESSION_TOKEN_HEADER, SESSION_TOKEN_QUERY_PARAM } from \"../constants\";\nexport class SignatureV4S3Express extends SignatureV4 {\n async signWithCredentials(requestToSign, credentials, options) {\n const credentialsWithoutSessionToken = getCredentialsWithoutSessionToken(credentials);\n requestToSign.headers[SESSION_TOKEN_HEADER] = credentials.sessionToken;\n const privateAccess = this;\n setSingleOverride(privateAccess, credentialsWithoutSessionToken);\n return privateAccess.signRequest(requestToSign, options ?? {});\n }\n async presignWithCredentials(requestToSign, credentials, options) {\n const credentialsWithoutSessionToken = getCredentialsWithoutSessionToken(credentials);\n delete requestToSign.headers[SESSION_TOKEN_HEADER];\n requestToSign.headers[SESSION_TOKEN_QUERY_PARAM] = credentials.sessionToken;\n requestToSign.query = requestToSign.query ?? {};\n requestToSign.query[SESSION_TOKEN_QUERY_PARAM] = credentials.sessionToken;\n const privateAccess = this;\n setSingleOverride(privateAccess, credentialsWithoutSessionToken);\n return this.presign(requestToSign, options);\n }\n}\nfunction getCredentialsWithoutSessionToken(credentials) {\n const credentialsWithoutSessionToken = {\n accessKeyId: credentials.accessKeyId,\n secretAccessKey: credentials.secretAccessKey,\n expiration: credentials.expiration,\n };\n return credentialsWithoutSessionToken;\n}\nfunction setSingleOverride(privateAccess, credentialsWithoutSessionToken) {\n const id = setTimeout(() => {\n throw new Error(\"SignatureV4S3Express credential override was created but not called.\");\n }, 10);\n const currentCredentialProvider = privateAccess.credentialProvider;\n const overrideCredentialsProviderOnce = () => {\n clearTimeout(id);\n privateAccess.credentialProvider = currentCredentialProvider;\n return Promise.resolve(credentialsWithoutSessionToken);\n };\n privateAccess.credentialProvider = overrideCredentialsProviderOnce;\n}\n","import { setFeature } from \"@aws-sdk/core\";\nimport { HttpRequest } from \"@smithy/protocol-http\";\nimport { S3_EXPRESS_AUTH_SCHEME, S3_EXPRESS_BACKEND, S3_EXPRESS_BUCKET_TYPE, SESSION_TOKEN_HEADER } from \"../constants\";\nexport const s3ExpressMiddleware = (options) => {\n return (next, context) => async (args) => {\n if (context.endpointV2) {\n const endpoint = context.endpointV2;\n const isS3ExpressAuth = endpoint.properties?.authSchemes?.[0]?.name === S3_EXPRESS_AUTH_SCHEME;\n const isS3ExpressBucket = endpoint.properties?.backend === S3_EXPRESS_BACKEND ||\n endpoint.properties?.bucketType === S3_EXPRESS_BUCKET_TYPE;\n if (isS3ExpressBucket) {\n setFeature(context, \"S3_EXPRESS_BUCKET\", \"J\");\n context.isS3ExpressBucket = true;\n }\n if (isS3ExpressAuth) {\n const requestBucket = args.input.Bucket;\n if (requestBucket) {\n const s3ExpressIdentity = await options.s3ExpressIdentityProvider.getS3ExpressIdentity(await options.credentials(), {\n Bucket: requestBucket,\n });\n context.s3ExpressIdentity = s3ExpressIdentity;\n if (HttpRequest.isInstance(args.request) && s3ExpressIdentity.sessionToken) {\n args.request.headers[SESSION_TOKEN_HEADER] = s3ExpressIdentity.sessionToken;\n }\n }\n }\n }\n return next(args);\n };\n};\nexport const s3ExpressMiddlewareOptions = {\n name: \"s3ExpressMiddleware\",\n step: \"build\",\n tags: [\"S3\", \"S3_EXPRESS\"],\n override: true,\n};\nexport const getS3ExpressPlugin = (options) => ({\n applyToStack: (clientStack) => {\n clientStack.add(s3ExpressMiddleware(options), s3ExpressMiddlewareOptions);\n },\n});\n","export const signS3Express = async (s3ExpressIdentity, signingOptions, request, sigV4MultiRegionSigner) => {\n const signedRequest = await sigV4MultiRegionSigner.signWithCredentials(request, s3ExpressIdentity, {});\n if (signedRequest.headers[\"X-Amz-Security-Token\"] || signedRequest.headers[\"x-amz-security-token\"]) {\n throw new Error(\"X-Amz-Security-Token must not be set for s3-express requests.\");\n }\n return signedRequest;\n};\n","import { httpSigningMiddlewareOptions } from \"@smithy/core\";\nimport { HttpRequest } from \"@smithy/protocol-http\";\nimport { SMITHY_CONTEXT_KEY, } from \"@smithy/types\";\nimport { getSmithyContext } from \"@smithy/util-middleware\";\nimport { signS3Express } from \"./signS3Express\";\nconst defaultErrorHandler = (signingProperties) => (error) => {\n throw error;\n};\nconst defaultSuccessHandler = (httpResponse, signingProperties) => { };\nexport const s3ExpressHttpSigningMiddlewareOptions = httpSigningMiddlewareOptions;\nexport const s3ExpressHttpSigningMiddleware = (config) => (next, context) => async (args) => {\n if (!HttpRequest.isInstance(args.request)) {\n return next(args);\n }\n const smithyContext = 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 { httpAuthOption: { signingProperties = {} }, identity, signer, } = scheme;\n let request;\n if (context.s3ExpressIdentity) {\n request = await signS3Express(context.s3ExpressIdentity, signingProperties, args.request, await config.signer());\n }\n else {\n request = await signer.sign(args.request, identity, signingProperties);\n }\n const output = await next({\n ...args,\n request,\n }).catch((signer.errorHandler || defaultErrorHandler)(signingProperties));\n (signer.successHandler || defaultSuccessHandler)(output.response, signingProperties);\n return output;\n};\nexport const getS3ExpressHttpSigningPlugin = (config) => ({\n applyToStack: (clientStack) => {\n clientStack.addRelativeTo(s3ExpressHttpSigningMiddleware(config), httpSigningMiddlewareOptions);\n },\n});\n","import { S3ExpressIdentityProviderImpl } from \"./s3-express\";\nexport const resolveS3Config = (input, { session, }) => {\n const [s3ClientProvider, CreateSessionCommandCtor] = session;\n return {\n ...input,\n forcePathStyle: input.forcePathStyle ?? false,\n useAccelerateEndpoint: input.useAccelerateEndpoint ?? false,\n disableMultiregionAccessPoints: input.disableMultiregionAccessPoints ?? false,\n followRegionRedirects: input.followRegionRedirects ?? false,\n s3ExpressIdentityProvider: input.s3ExpressIdentityProvider ??\n new S3ExpressIdentityProviderImpl(async (key) => s3ClientProvider().send(new CreateSessionCommandCtor({\n Bucket: key,\n }))),\n bucketEndpoint: input.bucketEndpoint ?? false,\n };\n};\n","import { HttpResponse } from \"@smithy/protocol-http\";\nimport { headStream, splitStream } from \"@smithy/util-stream\";\nconst THROW_IF_EMPTY_BODY = {\n CopyObjectCommand: true,\n UploadPartCopyCommand: true,\n CompleteMultipartUploadCommand: true,\n};\nconst MAX_BYTES_TO_INSPECT = 3000;\nexport const throw200ExceptionsMiddleware = (config) => (next, context) => async (args) => {\n const result = await next(args);\n const { response } = result;\n if (!HttpResponse.isInstance(response)) {\n return result;\n }\n const { statusCode, body: sourceBody } = response;\n if (statusCode < 200 || statusCode >= 300) {\n return result;\n }\n const isSplittableStream = typeof sourceBody?.stream === \"function\" ||\n typeof sourceBody?.pipe === \"function\" ||\n typeof sourceBody?.tee === \"function\";\n if (!isSplittableStream) {\n return result;\n }\n let bodyCopy = sourceBody;\n let body = sourceBody;\n if (sourceBody && typeof sourceBody === \"object\" && !(sourceBody instanceof Uint8Array)) {\n [bodyCopy, body] = await splitStream(sourceBody);\n }\n response.body = body;\n const bodyBytes = await collectBody(bodyCopy, {\n streamCollector: async (stream) => {\n return headStream(stream, MAX_BYTES_TO_INSPECT);\n },\n });\n if (typeof bodyCopy?.destroy === \"function\") {\n bodyCopy.destroy();\n }\n const bodyStringTail = config.utf8Encoder(bodyBytes.subarray(bodyBytes.length - 16));\n if (bodyBytes.length === 0 && THROW_IF_EMPTY_BODY[context.commandName]) {\n const err = new Error(\"S3 aborted request\");\n err.name = \"InternalError\";\n throw err;\n }\n if (bodyStringTail && bodyStringTail.endsWith(\"\")) {\n response.statusCode = 400;\n }\n return result;\n};\nconst collectBody = (streamBody = new Uint8Array(), context) => {\n if (streamBody instanceof Uint8Array) {\n return Promise.resolve(streamBody);\n }\n return context.streamCollector(streamBody) || Promise.resolve(new Uint8Array());\n};\nexport const throw200ExceptionsMiddlewareOptions = {\n relation: \"after\",\n toMiddleware: \"deserializerMiddleware\",\n tags: [\"THROW_200_EXCEPTIONS\", \"S3\"],\n name: \"throw200ExceptionsMiddleware\",\n override: true,\n};\nexport const getThrow200ExceptionsPlugin = (config) => ({\n applyToStack: (clientStack) => {\n clientStack.addRelativeTo(throw200ExceptionsMiddleware(config), throw200ExceptionsMiddlewareOptions);\n },\n});\n","export function bucketEndpointMiddleware(options) {\n return (next, context) => async (args) => {\n if (options.bucketEndpoint) {\n const endpoint = context.endpointV2;\n if (endpoint) {\n const bucket = args.input.Bucket;\n if (typeof bucket === \"string\") {\n try {\n const bucketEndpointUrl = new URL(bucket);\n context.endpointV2 = {\n ...endpoint,\n url: bucketEndpointUrl,\n };\n }\n catch (e) {\n const warning = `@aws-sdk/middleware-sdk-s3: bucketEndpoint=true was set but Bucket=${bucket} could not be parsed as URL.`;\n if (context.logger?.constructor?.name === \"NoOpLogger\") {\n console.warn(warning);\n }\n else {\n context.logger?.warn?.(warning);\n }\n throw e;\n }\n }\n }\n }\n return next(args);\n };\n}\nexport const bucketEndpointMiddlewareOptions = {\n name: \"bucketEndpointMiddleware\",\n override: true,\n relation: \"after\",\n toMiddleware: \"endpointV2Middleware\",\n};\n","import { validate as validateArn } from \"@aws-sdk/util-arn-parser\";\nimport { bucketEndpointMiddleware, bucketEndpointMiddlewareOptions } from \"./bucket-endpoint-middleware\";\nexport function validateBucketNameMiddleware({ bucketEndpoint }) {\n return (next) => async (args) => {\n const { input: { Bucket }, } = args;\n if (!bucketEndpoint && typeof Bucket === \"string\" && !validateArn(Bucket) && Bucket.indexOf(\"/\") >= 0) {\n const err = new Error(`Bucket name shouldn't contain '/', received '${Bucket}'`);\n err.name = \"InvalidBucketName\";\n throw err;\n }\n return next({ ...args });\n };\n}\nexport const validateBucketNameMiddlewareOptions = {\n step: \"initialize\",\n tags: [\"VALIDATE_BUCKET_NAME\"],\n name: \"validateBucketNameMiddleware\",\n override: true,\n};\nexport const getValidateBucketNamePlugin = (options) => ({\n applyToStack: (clientStack) => {\n clientStack.add(validateBucketNameMiddleware(options), validateBucketNameMiddlewareOptions);\n clientStack.addRelativeTo(bucketEndpointMiddleware(options), bucketEndpointMiddlewareOptions);\n },\n});\n","export const validate = (str) => typeof str === \"string\" && str.indexOf(\"arn:\") === 0 && str.split(\":\").length >= 6;\nexport const parse = (arn) => {\n const segments = arn.split(\":\");\n if (segments.length < 6 || segments[0] !== \"arn\")\n throw new Error(\"Malformed ARN\");\n const [, partition, service, region, accountId, ...resource] = segments;\n return {\n partition,\n service,\n region,\n accountId,\n resource: resource.join(\":\"),\n };\n};\nexport const build = (arnObject) => {\n const { partition = \"aws\", service, region, accountId, resource } = arnObject;\n if ([service, region, accountId, resource].some((segment) => typeof segment !== \"string\")) {\n throw new Error(\"Input ARN object is invalid\");\n }\n return `arn:${partition}:${service}:${region}:${accountId}:${resource}`;\n};\n","export function ssecMiddleware(options) {\n return (next) => async (args) => {\n const input = { ...args.input };\n const properties = [\n {\n target: \"SSECustomerKey\",\n hash: \"SSECustomerKeyMD5\",\n },\n {\n target: \"CopySourceSSECustomerKey\",\n hash: \"CopySourceSSECustomerKeyMD5\",\n },\n ];\n for (const prop of properties) {\n const value = input[prop.target];\n if (value) {\n let valueForHash;\n if (typeof value === \"string\") {\n if (isValidBase64EncodedSSECustomerKey(value, options)) {\n valueForHash = options.base64Decoder(value);\n }\n else {\n valueForHash = options.utf8Decoder(value);\n input[prop.target] = options.base64Encoder(valueForHash);\n }\n }\n else {\n valueForHash = ArrayBuffer.isView(value)\n ? new Uint8Array(value.buffer, value.byteOffset, value.byteLength)\n : new Uint8Array(value);\n input[prop.target] = options.base64Encoder(valueForHash);\n }\n const hash = new options.md5();\n hash.update(valueForHash);\n input[prop.hash] = options.base64Encoder(await hash.digest());\n }\n }\n return next({\n ...args,\n input,\n });\n };\n}\nexport const ssecMiddlewareOptions = {\n name: \"ssecMiddleware\",\n step: \"initialize\",\n tags: [\"SSE\"],\n override: true,\n};\nexport const getSsecPlugin = (config) => ({\n applyToStack: (clientStack) => {\n clientStack.add(ssecMiddleware(config), ssecMiddlewareOptions);\n },\n});\nexport function isValidBase64EncodedSSECustomerKey(str, options) {\n const base64Regex = /^(?:[A-Za-z0-9+/]{4})*([A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/;\n if (!base64Regex.test(str))\n return false;\n try {\n const decodedBytes = options.base64Decoder(str);\n return decodedBytes.length === 32;\n }\n catch {\n return false;\n }\n}\n","import { normalizeProvider } from \"@smithy/core\";\nexport const DEFAULT_UA_APP_ID = undefined;\nfunction isValidUserAgentAppId(appId) {\n if (appId === undefined) {\n return true;\n }\n return typeof appId === \"string\" && appId.length <= 50;\n}\nexport function resolveUserAgentConfig(input) {\n const normalizedAppIdProvider = normalizeProvider(input.userAgentAppId ?? DEFAULT_UA_APP_ID);\n return {\n ...input,\n customUserAgent: typeof input.customUserAgent === \"string\" ? [[input.customUserAgent]] : input.customUserAgent,\n userAgentAppId: async () => {\n const appId = await normalizedAppIdProvider();\n if (!isValidUserAgentAppId(appId)) {\n const logger = input.logger?.constructor?.name === \"NoOpLogger\" || !input.logger ? console : input.logger;\n if (typeof appId !== \"string\") {\n logger?.warn(\"userAgentAppId must be a string or undefined.\");\n }\n else if (appId.length > 50) {\n logger?.warn(\"The provided userAgentAppId exceeds the maximum length of 50 characters.\");\n }\n }\n return appId;\n },\n };\n}\n","import { setFeature } from \"@aws-sdk/core\";\nconst ACCOUNT_ID_ENDPOINT_REGEX = /\\d{12}\\.ddb/;\nexport async function checkFeatures(context, config, args) {\n const request = args.request;\n if (request?.headers?.[\"smithy-protocol\"] === \"rpc-v2-cbor\") {\n setFeature(context, \"PROTOCOL_RPC_V2_CBOR\", \"M\");\n }\n if (typeof config.retryStrategy === \"function\") {\n const retryStrategy = await config.retryStrategy();\n if (typeof retryStrategy.acquireInitialRetryToken === \"function\") {\n if (retryStrategy.constructor?.name?.includes(\"Adaptive\")) {\n setFeature(context, \"RETRY_MODE_ADAPTIVE\", \"F\");\n }\n else {\n setFeature(context, \"RETRY_MODE_STANDARD\", \"E\");\n }\n }\n else {\n setFeature(context, \"RETRY_MODE_LEGACY\", \"D\");\n }\n }\n if (typeof config.accountIdEndpointMode === \"function\") {\n const endpointV2 = context.endpointV2;\n if (String(endpointV2?.url?.hostname).match(ACCOUNT_ID_ENDPOINT_REGEX)) {\n setFeature(context, \"ACCOUNT_ID_ENDPOINT\", \"O\");\n }\n switch (await config.accountIdEndpointMode?.()) {\n case \"disabled\":\n setFeature(context, \"ACCOUNT_ID_MODE_DISABLED\", \"Q\");\n break;\n case \"preferred\":\n setFeature(context, \"ACCOUNT_ID_MODE_PREFERRED\", \"P\");\n break;\n case \"required\":\n setFeature(context, \"ACCOUNT_ID_MODE_REQUIRED\", \"R\");\n break;\n }\n }\n const identity = context.__smithy_context?.selectedHttpAuthScheme?.identity;\n if (identity?.$source) {\n const credentials = identity;\n if (credentials.accountId) {\n setFeature(context, \"RESOLVED_ACCOUNT_ID\", \"T\");\n }\n for (const [key, value] of Object.entries(credentials.$source ?? {})) {\n setFeature(context, key, value);\n }\n }\n}\n","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","import { getUserAgentPrefix } from \"@aws-sdk/util-endpoints\";\nimport { HttpRequest } from \"@smithy/protocol-http\";\nimport { checkFeatures } from \"./check-features\";\nimport { SPACE, UA_ESCAPE_CHAR, UA_NAME_ESCAPE_REGEX, UA_NAME_SEPARATOR, UA_VALUE_ESCAPE_REGEX, USER_AGENT, X_AMZ_USER_AGENT, } from \"./constants\";\nimport { encodeFeatures } from \"./encode-features\";\nexport const userAgentMiddleware = (options) => (next, context) => async (args) => {\n const { request } = args;\n if (!HttpRequest.isInstance(request)) {\n return next(args);\n }\n const { headers } = request;\n const userAgent = context?.userAgent?.map(escapeUserAgent) || [];\n const defaultUserAgent = (await options.defaultUserAgentProvider()).map(escapeUserAgent);\n await checkFeatures(context, options, args);\n const awsContext = context;\n defaultUserAgent.push(`m/${encodeFeatures(Object.assign({}, context.__smithy_context?.features, awsContext.__aws_sdk_context?.features))}`);\n const customUserAgent = options?.customUserAgent?.map(escapeUserAgent) || [];\n const appId = await options.userAgentAppId();\n if (appId) {\n defaultUserAgent.push(escapeUserAgent([`app/${appId}`]));\n }\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","const BYTE_LIMIT = 1024;\nexport function encodeFeatures(features) {\n let buffer = \"\";\n for (const key in features) {\n const val = features[key];\n if (buffer.length + val.length + 1 <= BYTE_LIMIT) {\n if (buffer.length) {\n buffer += \",\" + val;\n }\n else {\n buffer += val;\n }\n continue;\n }\n break;\n }\n return buffer;\n}\n","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","export const signatureV4CrtContainer = {\n CrtSignerV4: null,\n};\n","import { SignatureV4S3Express } from \"@aws-sdk/middleware-sdk-s3\";\nimport { signatureV4CrtContainer } from \"./signature-v4-crt-container\";\nexport class SignatureV4MultiRegion {\n sigv4aSigner;\n sigv4Signer;\n signerOptions;\n constructor(options) {\n this.sigv4Signer = new SignatureV4S3Express(options);\n this.signerOptions = options;\n }\n async sign(requestToSign, options = {}) {\n if (options.signingRegion === \"*\") {\n if (this.signerOptions.runtime !== \"node\")\n throw new Error(\"This request requires signing with SigV4Asymmetric algorithm. It's only available in Node.js\");\n return this.getSigv4aSigner().sign(requestToSign, options);\n }\n return this.sigv4Signer.sign(requestToSign, options);\n }\n async signWithCredentials(requestToSign, credentials, options = {}) {\n if (options.signingRegion === \"*\") {\n if (this.signerOptions.runtime !== \"node\")\n throw new Error(\"This request requires signing with SigV4Asymmetric algorithm. It's only available in Node.js\");\n return this.getSigv4aSigner().signWithCredentials(requestToSign, credentials, options);\n }\n return this.sigv4Signer.signWithCredentials(requestToSign, credentials, options);\n }\n async presign(originalRequest, options = {}) {\n if (options.signingRegion === \"*\") {\n if (this.signerOptions.runtime !== \"node\")\n throw new Error(\"This request requires signing with SigV4Asymmetric algorithm. It's only available in Node.js\");\n return this.getSigv4aSigner().presign(originalRequest, options);\n }\n return this.sigv4Signer.presign(originalRequest, options);\n }\n async presignWithCredentials(originalRequest, credentials, options = {}) {\n if (options.signingRegion === \"*\") {\n throw new Error(\"Method presignWithCredentials is not supported for [signingRegion=*].\");\n }\n return this.sigv4Signer.presignWithCredentials(originalRequest, credentials, options);\n }\n getSigv4aSigner() {\n if (!this.sigv4aSigner) {\n let CrtSignerV4 = null;\n try {\n CrtSignerV4 = signatureV4CrtContainer.CrtSignerV4;\n if (typeof CrtSignerV4 !== \"function\")\n throw new Error();\n }\n catch (e) {\n e.message =\n `${e.message}\\n` +\n `Please check whether you have installed the \"@aws-sdk/signature-v4-crt\" package explicitly. \\n` +\n `You must also register the package by calling [require(\"@aws-sdk/signature-v4-crt\");] ` +\n `or an ESM equivalent such as [import \"@aws-sdk/signature-v4-crt\";]. \\n` +\n \"For more information please go to \" +\n \"https://github.com/aws/aws-sdk-js-v3#functionality-requiring-aws-common-runtime-crt\";\n throw e;\n }\n this.sigv4aSigner = new CrtSignerV4({\n ...this.signerOptions,\n signingAlgorithm: 1,\n });\n }\n return this.sigv4aSigner;\n }\n}\n","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","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","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","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","const fallbackWindow = {};\nexport function locateWindow() {\n if (typeof window !== \"undefined\") {\n return window;\n }\n else if (typeof self !== \"undefined\") {\n return self;\n }\n return fallbackWindow;\n}\n","import bowser from \"bowser\";\nexport const createDefaultUserAgentProvider = ({ serviceId, clientVersion }) => async (config) => {\n const parsedUA = typeof window !== \"undefined\" && window?.navigator?.userAgent\n ? bowser.parse(window.navigator.userAgent)\n : undefined;\n const sections = [\n [\"aws-sdk-js\", clientVersion],\n [\"ua\", \"2.1\"],\n [`os/${parsedUA?.os?.name || \"other\"}`, parsedUA?.os?.version],\n [\"lang/js\"],\n [\"md/browser\", `${parsedUA?.browser?.name ?? \"unknown\"}_${parsedUA?.browser?.version ?? \"unknown\"}`],\n ];\n if (serviceId) {\n sections.push([`api/${serviceId}`, clientVersion]);\n }\n const appId = await config?.userAgentAppId?.();\n if (appId) {\n sections.push([`app/${appId}`]);\n }\n return sections;\n};\nexport const defaultUserAgent = createDefaultUserAgentProvider;\n","import { escapeElement } from \"./escape-element\";\nexport class XmlText {\n value;\n constructor(value) {\n this.value = value;\n }\n toString() {\n return escapeElement(\"\" + this.value);\n }\n}\n","export function escapeElement(value) {\n return value\n .replace(/&/g, \"&\")\n .replace(/\"/g, \""\")\n .replace(/'/g, \"'\")\n .replace(//g, \">\")\n .replace(/\\r/g, \" \")\n .replace(/\\n/g, \" \")\n .replace(/\\u0085/g, \"…\")\n .replace(/\\u2028/, \"
\");\n}\n","import { escapeAttribute } from \"./escape-attribute\";\nimport { XmlText } from \"./XmlText\";\nexport class XmlNode {\n name;\n children;\n attributes = {};\n static of(name, childText, withName) {\n const node = new XmlNode(name);\n if (childText !== undefined) {\n node.addChildNode(new XmlText(childText));\n }\n if (withName !== undefined) {\n node.withName(withName);\n }\n return node;\n }\n constructor(name, children = []) {\n this.name = name;\n this.children = children;\n }\n withName(name) {\n this.name = name;\n return this;\n }\n addAttribute(name, value) {\n this.attributes[name] = value;\n return this;\n }\n addChildNode(child) {\n this.children.push(child);\n return this;\n }\n removeAttribute(name) {\n delete this.attributes[name];\n return this;\n }\n n(name) {\n this.name = name;\n return this;\n }\n c(child) {\n this.children.push(child);\n return this;\n }\n a(name, value) {\n if (value != null) {\n this.attributes[name] = value;\n }\n return this;\n }\n cc(input, field, withName = field) {\n if (input[field] != null) {\n const node = XmlNode.of(field, input[field]).withName(withName);\n this.c(node);\n }\n }\n l(input, listName, memberName, valueProvider) {\n if (input[listName] != null) {\n const nodes = valueProvider();\n nodes.map((node) => {\n node.withName(memberName);\n this.c(node);\n });\n }\n }\n lc(input, listName, memberName, valueProvider) {\n if (input[listName] != null) {\n const nodes = valueProvider();\n const containerNode = new XmlNode(memberName);\n nodes.map((node) => {\n containerNode.c(node);\n });\n this.c(containerNode);\n }\n }\n toString() {\n const hasChildren = Boolean(this.children.length);\n let xmlText = `<${this.name}`;\n const attributes = this.attributes;\n for (const attributeName of Object.keys(attributes)) {\n const attribute = attributes[attributeName];\n if (attribute != null) {\n xmlText += ` ${attributeName}=\"${escapeAttribute(\"\" + attribute)}\"`;\n }\n }\n return (xmlText += !hasChildren ? \"/>\" : `>${this.children.map((c) => c.toString()).join(\"\")}`);\n }\n}\n","export function escapeAttribute(value) {\n return value.replace(/&/g, \"&\").replace(//g, \">\").replace(/\"/g, \""\");\n}\n"],"names":["setFeature","context","feature","value","__aws_sdk_context","features","getDateHeader","response","_response$headers$dat","_response$headers","_response$headers2","HttpResponse","isInstance","headers","date","Date","undefined","getSkewCorrectedDate","systemClockOffset","now","getUpdatedSystemClockOffset","clockTime","currentSystemClockOffset","clockTimeInMs","parse","isClockSkewed","Math","abs","getTime","throwSigningPropertyError","name","property","Error","concat","validateSigningProperties","async","_context$endpointV","signingProperties","config","authScheme","endpointV2","properties","authSchemes","signerFunction","signer","signingRegion","signingRegionSet","signingName","AwsSdkSigV4Signer","sign","httpRequest","identity","_handlerExecutionCont","_handlerExecutionCont2","HttpRequest","validatedProps","handlerExecutionContext","length","first","second","_second$signingRegion","_second$signingName","signingDate","signingService","errorHandler","error","_error$ServerTime","serverTime","ServerTime","$response","initialSystemClockOffset","$metadata","clockSkewCorrected","successHandler","httpResponse","dateHeader","AwsSdkSigV4ASigner","_config$sigv4aSigning","_ref","configResolvedSigningRegionSet","sigv4aSigningRegionSet","call","multiRegionOverride","join","resolveAwsSdkSigV4AConfig","normalizeProvider","resolveAwsSdkSigV4Config","credentialsProvider","isUserSupplied","credentials","memoizeIdentityProvider","isIdentityExpired","doesIdentityRequireRefresh","credentialDefaultProvider","Object","assign","parentClientConfig","boundCredentialsProvider","callerClientConfig","signingEscapePath","sha256","regionInfoProvider","region","then","useFipsEndpoint","useDualstackEndpoint","regionInfo","serviceId","params","_objectSpread","service","uriEscapePath","signerConstructor","SignatureV4","defaultSigningName","creds","setCredentialFeature","$source","parseXmlBody","streamBody","collectBodyString","collectBody","body","utf8Encoder","encoded","parser","XMLParser","attributeNamePrefix","htmlEntities","ignoreAttributes","ignoreDeclaration","parseTagValue","trimValues","tagValueProcessor","_","val","trim","includes","parsedObj","addEntity","e","defineProperty","textNodeName","key","keys","parsedObjToReturn","getValueFromTextNode","parseXmlErrorBody","errorBody","_value$Error$message","message","Message","loadRestXmlErrorCode","output","data","_data$Error","Code","statusCode","addExpectContinueMiddlewareOptions","step","tags","override","getAddExpectContinuePlugin","options","applyToStack","clientStack","add","next","request","args","_options$requestHandl","runtime","requestHandler","constructor","Expect","addExpectContinueMiddleware","RequestChecksumCalculation","WHEN_SUPPORTED","WHEN_REQUIRED","DEFAULT_REQUEST_CHECKSUM_CALCULATION","ResponseChecksumValidation","DEFAULT_RESPONSE_CHECKSUM_VALIDATION","ChecksumAlgorithm","ChecksumLocation","DEFAULT_CHECKSUM_ALGORITHM","CRC32","SelectorType","crc64NvmeCrtContainer","CLIENT_SUPPORTED_ALGORITHMS","CRC32C","CRC64NVME","SHA1","SHA256","PRIORITY_ORDER_ALGORITHMS","getChecksumLocationName","algorithm","MD5","toLowerCase","isStreaming","ArrayBuffer","isView","isArrayBuffer","selectChecksumAlgorithmFunction","checksumAlgorithm","md5","AwsCrc32","AwsCrc32c","sha1","stringHasher","checksumAlgorithmFn","hash","update","toUint8Array","digest","flexibleChecksumsMiddlewareOptions","flexibleChecksumsMiddleware","middlewareConfig","hasHeaderWithPrefix","headerPrefix","soughtHeaderPrefix","headerName","startsWith","input","requestBody","base64Encoder","streamHasher","requestChecksumRequired","requestAlgorithmMember","requestChecksumCalculation","requestAlgorithmMemberName","requestAlgorithmMemberHttpHeader","httpHeader","getChecksumAlgorithmForRequest","updatedBody","updatedHeaders","checksumLocationName","getAwsChunkedEncodingStream","bodyLengthChecker","hasHeader","header","soughtHeader","rawChecksum","flexibleChecksumsInputMiddlewareOptions","toMiddleware","relation","getChecksumAlgorithmListForResponse","responseAlgorithms","arguments","validChecksumAlgorithms","push","getChecksum","flexibleChecksumsResponseMiddlewareOptions","flexibleChecksumsResponseMiddleware","result","requestValidationModeMember","clientName","commandName","every","responseHeader","checksumFromResponse","checksum","lastHyphenIndex","lastIndexOf","numberPart","slice","number","parseInt","isNaN","isChecksumWithPartNumber","logger","checksumAlgorithms","responseBody","responseHeaders","warn","createChecksumStream","expectedChecksum","checksumSourceLocation","source","validateChecksumFromResponse","getFlexibleChecksumsPlugin","addRelativeTo","flexibleChecksumsInputMiddleware","responseChecksumValidation","resolveFlexibleChecksumsConfig","_input$requestChecksu","_input$responseChecks","resolveHostHeaderConfig","hostHeaderMiddlewareOptions","priority","getHostHeaderPlugin","handlerProtocol","metadata","indexOf","hostname","port","host","hostHeaderMiddleware","locationConstraintMiddlewareOptions","getLocationConstraintPlugin","CreateBucketConfiguration","LocationConstraint","Location","loggerMiddlewareOptions","getLoggerPlugin","_logger$info","dynamoDbDocumentClientOptions","overrideInputFilterSensitiveLog","overrideOutputFilterSensitiveLog","inputFilterSensitiveLog","outputFilterSensitiveLog","_response$output","outputWithoutMetadata","_objectWithoutProperties","_excluded","info","_logger$error","TRACE_ID_HEADER_NAME","addRecursionDetectionMiddlewareOptions","getRecursionDetectionPlugin","hasOwnProperty","traceId","process","nonEmptyString","str","recursionDetectionMiddleware","checkContentLengthHeaderMiddlewareOptions","getCheckContentLengthHeaderPlugin","unused","_context$logger","NoOpLogger","regionRedirectEndpointMiddlewareOptions","regionRedirectMiddlewareOptions","getRegionRedirectMiddlewarePlugin","clientConfig","err","_err$$metadata","_err$$metadata2","followRegionRedirects","httpStatusCode","actualRegion","debug","__s3RegionRedirect","regionRedirectMiddleware","originalRegion","regionProviderRef","unlock","writable","s3ExpiresMiddlewareOptions","getS3ExpiresMiddlewarePlugin","expires","expiresstring","parseRfc7231DateTime","S3ExpressIdentityCache","_defineProperty","this","get","entry","set","delete","purgeExpired","lastPurgeTime","EXPIRED_CREDENTIAL_PURGE_INTERVAL_MS","isRefreshing","credential","expiration","S3ExpressIdentityCacheEntry","_identity","accessed","S3ExpressIdentityProviderImpl","createSessionFn","cache","getS3ExpressIdentity","awsIdentity","identityProperties","Bucket","_identity$expiration$","_identity$expiration","_identity$expiration$2","_identity$expiration2","getIdentity","REFRESH_WINDOW_MS","id","Promise","resolve","_session$Credentials","_session$Credentials2","catch","session","Credentials","AccessKeyId","SecretAccessKey","accessKeyId","secretAccessKey","sessionToken","SessionToken","Expiration","SESSION_TOKEN_QUERY_PARAM","SESSION_TOKEN_HEADER","SignatureV4S3Express","signWithCredentials","requestToSign","credentialsWithoutSessionToken","getCredentialsWithoutSessionToken","setSingleOverride","signRequest","presignWithCredentials","_requestToSign$query","query","presign","privateAccess","setTimeout","currentCredentialProvider","credentialProvider","overrideCredentialsProviderOnce","clearTimeout","s3ExpressMiddlewareOptions","getS3ExpressPlugin","_endpoint$properties","_endpoint$properties2","_endpoint$properties3","endpoint","isS3ExpressAuth","backend","bucketType","isS3ExpressBucket","requestBucket","s3ExpressIdentity","s3ExpressIdentityProvider","s3ExpressMiddleware","defaultErrorHandler","defaultSuccessHandler","s3ExpressHttpSigningMiddleware","scheme","getSmithyContext","selectedHttpAuthScheme","httpAuthOption","signingOptions","sigV4MultiRegionSigner","signedRequest","signS3Express","getS3ExpressHttpSigningPlugin","httpSigningMiddlewareOptions","resolveS3Config","_input$forcePathStyle","_input$useAccelerateE","_input$disableMultire","_input$followRegionRe","_input$s3ExpressIdent","_input$bucketEndpoint","s3ClientProvider","CreateSessionCommandCtor","forcePathStyle","useAccelerateEndpoint","disableMultiregionAccessPoints","send","bucketEndpoint","THROW_IF_EMPTY_BODY","CopyObjectCommand","UploadPartCopyCommand","CompleteMultipartUploadCommand","Uint8Array","streamCollector","throw200ExceptionsMiddlewareOptions","getThrow200ExceptionsPlugin","_bodyCopy","sourceBody","stream","pipe","tee","bodyCopy","splitStream","bodyBytes","headStream","destroy","bodyStringTail","subarray","endsWith","throw200ExceptionsMiddleware","bucketEndpointMiddlewareOptions","validateBucketNameMiddlewareOptions","getValidateBucketNamePlugin","split","validateBucketNameMiddleware","bucket","bucketEndpointUrl","URL","url","warning","_context$logger2","_context$logger2$warn","bucketEndpointMiddleware","ssecMiddlewareOptions","getSsecPlugin","target","prop","valueForHash","isValidBase64EncodedSSECustomerKey","base64Decoder","utf8Decoder","buffer","byteOffset","byteLength","test","_unused","DEFAULT_UA_APP_ID","resolveUserAgentConfig","_input$userAgentAppId","normalizedAppIdProvider","userAgentAppId","customUserAgent","appId","isValidUserAgentAppId","_input$logger","console","ACCOUNT_ID_ENDPOINT_REGEX","USER_AGENT","X_AMZ_USER_AGENT","UA_NAME_ESCAPE_REGEX","UA_VALUE_ESCAPE_REGEX","userAgentMiddleware","_context$userAgent","_context$__smithy_con","_awsContext$__aws_sdk","_options$customUserAg","userAgent","map","escapeUserAgent","defaultUserAgent","defaultUserAgentProvider","_request$headers","retryStrategy","_retryStrategy$constr","acquireInitialRetryToken","accountIdEndpointMode","_endpointV2$url","_config$accountIdEndp","String","match","__smithy_context","accountId","entries","_credentials$$source","checkFeatures","awsContext","encodeFeatures","prefix","getUserAgentPrefix","sdkUserAgentValue","normalUAValue","filter","section","userAgentPair","_userAgentPair$","part","replace","version","prefixSeparatorIndex","substring","uaName","item","reduce","acc","index","getUserAgentMiddlewareOptions","getUserAgentPlugin","getAwsRegionExtensionConfiguration","runtimeConfig","runtimeConfigRegion","setRegion","resolveAwsRegionExtensionConfiguration","awsRegionExtensionConfiguration","signatureV4CrtContainer","CrtSignerV4","SignatureV4MultiRegion","sigv4Signer","signerOptions","getSigv4aSigner","originalRequest","sigv4aSigner","signingAlgorithm","isVirtualHostableS3Bucket","label","isValidHostLabel","isIpAddress","selectedPartitionsInfo","selectedUserAgentPrefix","awsEndpointFunctions","parseArn","segments","arn","partition","resourcePath","resourceId","resource","flat","partitions","regions","outputs","regionData","regionRegex","RegExp","DEFAULT_PARTITION","find","customEndpointFunctions","aws","fallbackWindow","locateWindow","window","self","createDefaultUserAgentProvider","clientVersion","_window","_parsedUA$os","_parsedUA$os2","_parsedUA$browser$nam","_parsedUA$browser","_parsedUA$browser$ver","_parsedUA$browser2","_config$userAgentAppI","parsedUA","navigator","bowser","sections","os","browser","XmlText","toString","XmlNode","of","childText","withName","node","addChildNode","children","addAttribute","attributes","child","removeAttribute","n","c","a","cc","field","l","listName","memberName","valueProvider","lc","nodes","containerNode","hasChildren","Boolean","xmlText","attributeName","attribute"],"sourceRoot":""}