diff --git a/README.md b/README.md index 378af267..dda7c0ae 100644 --- a/README.md +++ b/README.md @@ -228,7 +228,7 @@ Running a service requires the following minimum set of permissions: ] } ``` - + Running a one-off/stand-alone task requires the following minimum set of permissions: ```json { @@ -342,7 +342,7 @@ In the following example, the service would not be updated until the ad-hoc task wait-for-task-stopped: true ``` -Overrides and VPC networking options are available as well. See [action.yml](action.yml) for more details. The `FARGATE` +Overrides and VPC networking options are available as well. See [action.yml](action.yml) for more details. The `FARGATE` launch type requires `awsvpc` network mode in your task definition and you must specify a network configuration. ### Tags @@ -366,6 +366,21 @@ To tag your tasks: wait-for-task-stopped: true ``` +### Retries + +To retry a deployment of a task definition use `max-retries`. The default value is `3`. + +```yaml + - name: Deploy to Amazon ECS + uses: aws-actions/amazon-ecs-deploy-task-definition@v2 + with: + task-definition: task-definition.json + service: my-service + cluster: my-cluster + max-retries: 5 + wait-for-service-stability: true +``` + ## Troubleshooting This action emits debug logs to help troubleshoot deployment failures. To see the debug logs, create a secret named `ACTIONS_STEP_DEBUG` with value `true` in your repository. diff --git a/action.yml b/action.yml index e9cdfc22..0b42ed2c 100644 --- a/action.yml +++ b/action.yml @@ -88,6 +88,9 @@ inputs: propagate-tags: description: "Determines to propagate the tags from the 'SERVICE' to the task." required: false + max-retries: + description: 'The maximum number of retry attempts for AWS API calls. Defaults to 3.' + required: false outputs: task-definition-arn: description: 'The ARN of the registered ECS task definition.' diff --git a/dist/index.js b/dist/index.js index b850f289..963e55f1 100644 --- a/dist/index.js +++ b/dist/index.js @@ -460,17 +460,11 @@ async function createCodeDeployDeployment(codedeploy, clusterName, service, task async function run() { try { - const ecs = new ECS({ - customUserAgent: 'amazon-ecs-deploy-task-definition-for-github-actions' - }); - const codedeploy = new CodeDeploy({ - customUserAgent: 'amazon-ecs-deploy-task-definition-for-github-actions' - }); - // Get inputs const taskDefinitionFile = core.getInput('task-definition', { required: true }); const service = core.getInput('service', { required: false }); const cluster = core.getInput('cluster', { required: false }); + const maxRetries = parseInt(core.getInput('max-retries', { required: false })) || 3; const waitForService = core.getInput('wait-for-service-stability', { required: false }); let waitForMinutes = parseInt(core.getInput('wait-for-minutes', { required: false })) || 30; @@ -492,6 +486,18 @@ async function run() { propagateTags = propagateTagsInput; } + const ecs = new ECS({ + customUserAgent: 'amazon-ecs-deploy-task-definition-for-github-actions', + maxAttempts: maxRetries, + retryMode: 'standard' + }); + + const codedeploy = new CodeDeploy({ + customUserAgent: 'amazon-ecs-deploy-task-definition-for-github-actions', + maxAttempts: maxRetries, + retryMode: 'standard' + }); + // Register the task definition core.debug('Registering the task definition'); const taskDefPath = path.isAbsolute(taskDefinitionFile) ? @@ -3811,9 +3817,9 @@ const defaultCodeDeployHttpAuthSchemeProvider = (authParameters) => { exports.defaultCodeDeployHttpAuthSchemeProvider = defaultCodeDeployHttpAuthSchemeProvider; const resolveHttpAuthSchemeConfig = (config) => { const config_0 = (0, core_1.resolveAwsSdkSigV4Config)(config); - return Object.assign(config_0, { - authSchemePreference: (0, util_middleware_1.normalizeProvider)(config.authSchemePreference ?? []), - }); + return { + ...config_0, + }; }; exports.resolveHttpAuthSchemeConfig = resolveHttpAuthSchemeConfig; @@ -4096,7 +4102,7 @@ module.exports = __toCommonJS(index_exports); // src/CodeDeployClient.ts var import_middleware_host_header = __nccwpck_require__(29477); -var import_middleware_logger = __nccwpck_require__(38703); +var import_middleware_logger = __nccwpck_require__(85242); var import_middleware_recursion_detection = __nccwpck_require__(21067); var import_middleware_user_agent = __nccwpck_require__(58534); var import_config_resolver = __nccwpck_require__(39316); @@ -4109,11 +4115,12 @@ var import_httpAuthSchemeProvider = __nccwpck_require__(45324); // src/endpoint/EndpointParameters.ts var resolveClientEndpointParameters = /* @__PURE__ */ __name((options) => { - return Object.assign(options, { + return { + ...options, useDualstackEndpoint: options.useDualstackEndpoint ?? false, useFipsEndpoint: options.useFipsEndpoint ?? false, defaultSigningName: "codedeploy" - }); + }; }, "resolveClientEndpointParameters"); var commonParams = { UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, @@ -4126,7 +4133,7 @@ var commonParams = { var import_runtimeConfig = __nccwpck_require__(74277); // src/runtimeExtensions.ts -var import_region_config_resolver = __nccwpck_require__(2472); +var import_region_config_resolver = __nccwpck_require__(36463); var import_protocol_http = __nccwpck_require__(5559); var import_smithy_client = __nccwpck_require__(61411); @@ -4170,21 +4177,22 @@ var resolveHttpAuthRuntimeConfig = /* @__PURE__ */ __name((config) => { }, "resolveHttpAuthRuntimeConfig"); // src/runtimeExtensions.ts +var asPartial = /* @__PURE__ */ __name((t) => t, "asPartial"); var resolveRuntimeExtensions = /* @__PURE__ */ __name((runtimeConfig, extensions) => { - const extensionConfiguration = Object.assign( - (0, import_region_config_resolver.getAwsRegionExtensionConfiguration)(runtimeConfig), - (0, import_smithy_client.getDefaultExtensionConfiguration)(runtimeConfig), - (0, import_protocol_http.getHttpHandlerExtensionConfiguration)(runtimeConfig), - getHttpAuthExtensionConfiguration(runtimeConfig) - ); + const extensionConfiguration = { + ...asPartial((0, import_region_config_resolver.getAwsRegionExtensionConfiguration)(runtimeConfig)), + ...asPartial((0, import_smithy_client.getDefaultExtensionConfiguration)(runtimeConfig)), + ...asPartial((0, import_protocol_http.getHttpHandlerExtensionConfiguration)(runtimeConfig)), + ...asPartial(getHttpAuthExtensionConfiguration(runtimeConfig)) + }; extensions.forEach((extension) => extension.configure(extensionConfiguration)); - return Object.assign( - runtimeConfig, - (0, import_region_config_resolver.resolveAwsRegionExtensionConfiguration)(extensionConfiguration), - (0, import_smithy_client.resolveDefaultRuntimeConfig)(extensionConfiguration), - (0, import_protocol_http.resolveHttpHandlerRuntimeConfig)(extensionConfiguration), - resolveHttpAuthRuntimeConfig(extensionConfiguration) - ); + return { + ...runtimeConfig, + ...(0, import_region_config_resolver.resolveAwsRegionExtensionConfiguration)(extensionConfiguration), + ...(0, import_smithy_client.resolveDefaultRuntimeConfig)(extensionConfiguration), + ...(0, import_protocol_http.resolveHttpHandlerRuntimeConfig)(extensionConfiguration), + ...resolveHttpAuthRuntimeConfig(extensionConfiguration) + }; }, "resolveRuntimeExtensions"); // src/CodeDeployClient.ts @@ -4198,8 +4206,6 @@ var CodeDeployClient = class extends import_smithy_client.Client { config; constructor(...[configuration]) { const _config_0 = (0, import_runtimeConfig.getRuntimeConfig)(configuration || {}); - super(_config_0); - this.initConfig = _config_0; const _config_1 = resolveClientEndpointParameters(_config_0); const _config_2 = (0, import_middleware_user_agent.resolveUserAgentConfig)(_config_1); const _config_3 = (0, import_middleware_retry.resolveRetryConfig)(_config_2); @@ -4208,6 +4214,7 @@ var CodeDeployClient = class extends import_smithy_client.Client { const _config_6 = (0, import_middleware_endpoint.resolveEndpointConfig)(_config_5); const _config_7 = (0, import_httpAuthSchemeProvider.resolveHttpAuthSchemeConfig)(_config_6); const _config_8 = resolveRuntimeExtensions(_config_7, configuration?.extensions || []); + super(_config_8); this.config = _config_8; this.middlewareStack.use((0, import_middleware_user_agent.getUserAgentPlugin)(this.config)); this.middlewareStack.use((0, import_middleware_retry.getRetryPlugin)(this.config)); @@ -10292,38 +10299,28 @@ var import_client = __nccwpck_require__(78639); var import_core2 = __nccwpck_require__(90475); var import_signature_v4 = __nccwpck_require__(75118); var resolveAwsSdkSigV4Config = /* @__PURE__ */ __name((config) => { - let inputCredentials = config.credentials; - let isUserSupplied = !!config.credentials; - let resolvedCredentials = void 0; - Object.defineProperty(config, "credentials", { - set(credentials) { - if (credentials && credentials !== inputCredentials && credentials !== resolvedCredentials) { - isUserSupplied = true; - } - inputCredentials = credentials; - const memoizedProvider = normalizeCredentialProvider(config, { - credentials: inputCredentials, - credentialDefaultProvider: config.credentialDefaultProvider - }); - const boundProvider = bindCallerConfig(config, memoizedProvider); - if (isUserSupplied && !boundProvider.attributed) { - resolvedCredentials = /* @__PURE__ */ __name(async (options) => boundProvider(options).then( - (creds) => (0, import_client.setCredentialFeature)(creds, "CREDENTIALS_CODE", "e") - ), "resolvedCredentials"); - resolvedCredentials.memoized = boundProvider.memoized; - resolvedCredentials.configBound = boundProvider.configBound; - resolvedCredentials.attributed = true; - } else { - resolvedCredentials = boundProvider; - } - }, - get() { - return resolvedCredentials; - }, - enumerable: true, - configurable: true - }); - config.credentials = inputCredentials; + let isUserSupplied = false; + let credentialsProvider; + if (config.credentials) { + isUserSupplied = true; + credentialsProvider = (0, import_core2.memoizeIdentityProvider)(config.credentials, import_core2.isIdentityExpired, import_core2.doesIdentityRequireRefresh); + } + if (!credentialsProvider) { + if (config.credentialDefaultProvider) { + credentialsProvider = (0, import_core2.normalizeProvider)( + config.credentialDefaultProvider( + Object.assign({}, config, { + parentClientConfig: config + }) + ) + ); + } else { + credentialsProvider = /* @__PURE__ */ __name(async () => { + throw new Error("`credentials` is missing"); + }, "credentialsProvider"); + } + } + const boundCredentialsProvider = /* @__PURE__ */ __name(async (options) => credentialsProvider({ ...options, callerClientConfig: config }), "boundCredentialsProvider"); const { // Default for signingEscapePath signingEscapePath = true, @@ -10350,7 +10347,7 @@ var resolveAwsSdkSigV4Config = /* @__PURE__ */ __name((config) => { config.signingName = config.signingName || signingService || config.serviceId; const params = { ...config, - credentials: config.credentials, + credentials: boundCredentialsProvider, region: config.signingRegion, service: config.signingName, sha256, @@ -10377,7 +10374,7 @@ var resolveAwsSdkSigV4Config = /* @__PURE__ */ __name((config) => { config.signingName = config.signingName || signingService || config.serviceId; const params = { ...config, - credentials: config.credentials, + credentials: boundCredentialsProvider, region: config.signingRegion, service: config.signingName, sha256, @@ -10387,56 +10384,17 @@ var resolveAwsSdkSigV4Config = /* @__PURE__ */ __name((config) => { return new SignerCtor(params); }, "signer"); } - const resolvedConfig = Object.assign(config, { + return { + ...config, systemClockOffset, signingEscapePath, + credentials: isUserSupplied ? async (options) => boundCredentialsProvider(options).then( + (creds) => (0, import_client.setCredentialFeature)(creds, "CREDENTIALS_CODE", "e") + ) : boundCredentialsProvider, signer - }); - return resolvedConfig; + }; }, "resolveAwsSdkSigV4Config"); var resolveAWSSDKSigV4Config = resolveAwsSdkSigV4Config; -function normalizeCredentialProvider(config, { - credentials, - credentialDefaultProvider -}) { - let credentialsProvider; - if (credentials) { - if (!credentials?.memoized) { - credentialsProvider = (0, import_core2.memoizeIdentityProvider)(credentials, import_core2.isIdentityExpired, import_core2.doesIdentityRequireRefresh); - } else { - credentialsProvider = credentials; - } - } else { - if (credentialDefaultProvider) { - credentialsProvider = (0, import_core2.normalizeProvider)( - credentialDefaultProvider( - Object.assign({}, config, { - parentClientConfig: config - }) - ) - ); - } else { - credentialsProvider = /* @__PURE__ */ __name(async () => { - throw new Error( - "@aws-sdk/core::resolveAwsSdkSigV4Config - `credentials` not provided and no credentialDefaultProvider was configured." - ); - }, "credentialsProvider"); - } - } - credentialsProvider.memoized = true; - return credentialsProvider; -} -__name(normalizeCredentialProvider, "normalizeCredentialProvider"); -function bindCallerConfig(config, credentialsProvider) { - if (credentialsProvider.configBound) { - return credentialsProvider; - } - const fn = /* @__PURE__ */ __name(async (options) => credentialsProvider({ ...options, callerClientConfig: config }), "fn"); - fn.memoized = credentialsProvider.memoized; - fn.configBound = true; - return fn; -} -__name(bindCallerConfig, "bindCallerConfig"); // Annotate the CommonJS export names for ESM import in node: 0 && (0); @@ -10737,89 +10695,6 @@ var getHostHeaderPlugin = /* @__PURE__ */ __name((options) => ({ -/***/ }), - -/***/ 38703: -/***/ ((module) => { - -"use strict"; - -var __defProp = Object.defineProperty; -var __getOwnPropDesc = Object.getOwnPropertyDescriptor; -var __getOwnPropNames = Object.getOwnPropertyNames; -var __hasOwnProp = Object.prototype.hasOwnProperty; -var __name = (target, value) => __defProp(target, "name", { value, configurable: true }); -var __export = (target, all) => { - for (var name in all) - __defProp(target, name, { get: all[name], enumerable: true }); -}; -var __copyProps = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames(from)) - if (!__hasOwnProp.call(to, key) && key !== except) - __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); - } - return to; -}; -var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); - -// src/index.ts -var index_exports = {}; -__export(index_exports, { - getLoggerPlugin: () => getLoggerPlugin, - loggerMiddleware: () => loggerMiddleware, - loggerMiddlewareOptions: () => loggerMiddlewareOptions -}); -module.exports = __toCommonJS(index_exports); - -// src/loggerMiddleware.ts -var loggerMiddleware = /* @__PURE__ */ __name(() => (next, context) => async (args) => { - try { - const response = await next(args); - const { clientName, commandName, logger, dynamoDbDocumentClientOptions = {} } = context; - const { overrideInputFilterSensitiveLog, overrideOutputFilterSensitiveLog } = dynamoDbDocumentClientOptions; - const inputFilterSensitiveLog = overrideInputFilterSensitiveLog ?? context.inputFilterSensitiveLog; - const outputFilterSensitiveLog = overrideOutputFilterSensitiveLog ?? context.outputFilterSensitiveLog; - const { $metadata, ...outputWithoutMetadata } = response.output; - logger?.info?.({ - clientName, - commandName, - input: inputFilterSensitiveLog(args.input), - output: outputFilterSensitiveLog(outputWithoutMetadata), - metadata: $metadata - }); - return response; - } catch (error) { - const { clientName, commandName, logger, dynamoDbDocumentClientOptions = {} } = context; - const { overrideInputFilterSensitiveLog } = dynamoDbDocumentClientOptions; - const inputFilterSensitiveLog = overrideInputFilterSensitiveLog ?? context.inputFilterSensitiveLog; - logger?.error?.({ - clientName, - commandName, - input: inputFilterSensitiveLog(args.input), - error, - metadata: error.$metadata - }); - throw error; - } -}, "loggerMiddleware"); -var loggerMiddlewareOptions = { - name: "loggerMiddleware", - tags: ["LOGGER"], - step: "initialize", - override: true -}; -var getLoggerPlugin = /* @__PURE__ */ __name((options) => ({ - applyToStack: /* @__PURE__ */ __name((clientStack) => { - clientStack.add(loggerMiddleware(), loggerMiddlewareOptions); - }, "applyToStack") -}), "getLoggerPlugin"); -// Annotate the CommonJS export names for ESM import in node: - -0 && (0); - - - /***/ }), /***/ 21067: @@ -10945,9 +10820,9 @@ function isValidUserAgentAppId(appId) { __name(isValidUserAgentAppId, "isValidUserAgentAppId"); function resolveUserAgentConfig(input) { const normalizedAppIdProvider = (0, import_core.normalizeProvider)(input.userAgentAppId ?? DEFAULT_UA_APP_ID); - const { customUserAgent } = input; - return Object.assign(input, { - customUserAgent: typeof customUserAgent === "string" ? [[customUserAgent]] : customUserAgent, + return { + ...input, + customUserAgent: typeof input.customUserAgent === "string" ? [[input.customUserAgent]] : input.customUserAgent, userAgentAppId: /* @__PURE__ */ __name(async () => { const appId = await normalizedAppIdProvider(); if (!isValidUserAgentAppId(appId)) { @@ -10960,7 +10835,7 @@ function resolveUserAgentConfig(input) { } return appId; }, "userAgentAppId") - }); + }; } __name(resolveUserAgentConfig, "resolveUserAgentConfig"); @@ -11125,111 +11000,6 @@ var getUserAgentPlugin = /* @__PURE__ */ __name((config) => ({ -/***/ }), - -/***/ 2472: -/***/ ((module) => { - -"use strict"; - -var __defProp = Object.defineProperty; -var __getOwnPropDesc = Object.getOwnPropertyDescriptor; -var __getOwnPropNames = Object.getOwnPropertyNames; -var __hasOwnProp = Object.prototype.hasOwnProperty; -var __name = (target, value) => __defProp(target, "name", { value, configurable: true }); -var __export = (target, all) => { - for (var name in all) - __defProp(target, name, { get: all[name], enumerable: true }); -}; -var __copyProps = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames(from)) - if (!__hasOwnProp.call(to, key) && key !== except) - __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); - } - return to; -}; -var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); - -// src/index.ts -var index_exports = {}; -__export(index_exports, { - NODE_REGION_CONFIG_FILE_OPTIONS: () => NODE_REGION_CONFIG_FILE_OPTIONS, - NODE_REGION_CONFIG_OPTIONS: () => NODE_REGION_CONFIG_OPTIONS, - REGION_ENV_NAME: () => REGION_ENV_NAME, - REGION_INI_NAME: () => REGION_INI_NAME, - getAwsRegionExtensionConfiguration: () => getAwsRegionExtensionConfiguration, - resolveAwsRegionExtensionConfiguration: () => resolveAwsRegionExtensionConfiguration, - resolveRegionConfig: () => resolveRegionConfig -}); -module.exports = __toCommonJS(index_exports); - -// src/extensions/index.ts -var getAwsRegionExtensionConfiguration = /* @__PURE__ */ __name((runtimeConfig) => { - return { - setRegion(region) { - runtimeConfig.region = region; - }, - region() { - return runtimeConfig.region; - } - }; -}, "getAwsRegionExtensionConfiguration"); -var resolveAwsRegionExtensionConfiguration = /* @__PURE__ */ __name((awsRegionExtensionConfiguration) => { - return { - region: awsRegionExtensionConfiguration.region() - }; -}, "resolveAwsRegionExtensionConfiguration"); - -// src/regionConfig/config.ts -var REGION_ENV_NAME = "AWS_REGION"; -var REGION_INI_NAME = "region"; -var NODE_REGION_CONFIG_OPTIONS = { - environmentVariableSelector: /* @__PURE__ */ __name((env) => env[REGION_ENV_NAME], "environmentVariableSelector"), - configFileSelector: /* @__PURE__ */ __name((profile) => profile[REGION_INI_NAME], "configFileSelector"), - default: /* @__PURE__ */ __name(() => { - throw new Error("Region is missing"); - }, "default") -}; -var NODE_REGION_CONFIG_FILE_OPTIONS = { - preferredFile: "credentials" -}; - -// src/regionConfig/isFipsRegion.ts -var isFipsRegion = /* @__PURE__ */ __name((region) => typeof region === "string" && (region.startsWith("fips-") || region.endsWith("-fips")), "isFipsRegion"); - -// src/regionConfig/getRealRegion.ts -var getRealRegion = /* @__PURE__ */ __name((region) => isFipsRegion(region) ? ["fips-aws-global", "aws-fips"].includes(region) ? "us-east-1" : region.replace(/fips-(dkr-|prod-)?|-fips/, "") : region, "getRealRegion"); - -// src/regionConfig/resolveRegionConfig.ts -var resolveRegionConfig = /* @__PURE__ */ __name((input) => { - const { region, useFipsEndpoint } = input; - if (!region) { - throw new Error("Region is missing"); - } - return Object.assign(input, { - region: /* @__PURE__ */ __name(async () => { - if (typeof region === "string") { - return getRealRegion(region); - } - const providedRegion = await region(); - return getRealRegion(providedRegion); - }, "region"), - useFipsEndpoint: /* @__PURE__ */ __name(async () => { - const providedRegion = typeof region === "string" ? region : await region(); - if (isFipsRegion(providedRegion)) { - return true; - } - return typeof useFipsEndpoint !== "function" ? Promise.resolve(!!useFipsEndpoint) : useFipsEndpoint(); - }, "useFipsEndpoint") - }); -}, "resolveRegionConfig"); -// Annotate the CommonJS export names for ESM import in node: - -0 && (0); - - - /***/ }), /***/ 11911: @@ -11257,8 +11027,8 @@ var __copyProps = (to, from, except, desc) => { var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); // src/index.ts -var index_exports = {}; -__export(index_exports, { +var src_exports = {}; +__export(src_exports, { ConditionObject: () => import_util_endpoints.ConditionObject, DeprecatedObject: () => import_util_endpoints.DeprecatedObject, EndpointError: () => import_util_endpoints.EndpointError, @@ -11288,7 +11058,7 @@ __export(index_exports, { setPartitionInfo: () => setPartitionInfo, useDefaultPartitionInfo: () => useDefaultPartitionInfo }); -module.exports = __toCommonJS(index_exports); +module.exports = __toCommonJS(src_exports); // src/aws.ts @@ -11329,9 +11099,11 @@ var ARN_DELIMITER = ":"; var RESOURCE_DELIMITER = "/"; var parseArn = /* @__PURE__ */ __name((value) => { const segments = value.split(ARN_DELIMITER); - if (segments.length < 6) return null; + if (segments.length < 6) + return null; const [arn, partition2, service, region, accountId, ...resourcePath] = segments; - if (arn !== "arn" || partition2 === "" || service === "" || resourcePath.join(ARN_DELIMITER) === "") return null; + if (arn !== "arn" || partition2 === "" || service === "" || resourcePath.join(ARN_DELIMITER) === "") + return null; const resourceId = resourcePath.map((resource) => resource.split(RESOURCE_DELIMITER)).flat(); return { partition: partition2, @@ -11553,9 +11325,6 @@ var partitions_default = { }, regionRegex: "^eu\\-isoe\\-\\w+\\-\\d+$", regions: { - "aws-iso-e-global": { - description: "AWS ISOE (Europe) global region" - }, "eu-isoe-west-1": { description: "EU ISOE West" } @@ -11582,22 +11351,6 @@ var partitions_default = { description: "US ISOF SOUTH" } } - }, { - id: "aws-eusc", - outputs: { - dnsSuffix: "amazonaws.eu", - dualStackDnsSuffix: "amazonaws.eu", - implicitGlobalRegion: "eusc-de-east-1", - name: "aws-eusc", - supportsDualStack: false, - supportsFIPS: true - }, - regionRegex: "^eusc\\-(de)\\-\\w+\\-\\d+$", - regions: { - "eusc-de-east-1": { - description: "EU (Germany)" - } - } }], version: "1.1" }; @@ -11840,30 +11593,6 @@ var getSmithyContext = /* @__PURE__ */ __name((context) => context[import_types. // src/middleware-http-auth-scheme/httpAuthSchemeMiddleware.ts var import_util_middleware = __nccwpck_require__(25695); - -// src/middleware-http-auth-scheme/resolveAuthOptions.ts -var resolveAuthOptions = /* @__PURE__ */ __name((candidateAuthOptions, authSchemePreference) => { - if (!authSchemePreference || authSchemePreference.length === 0) { - return candidateAuthOptions; - } - const preferredAuthOptions = []; - for (const preferredSchemeName of authSchemePreference) { - for (const candidateAuthOption of candidateAuthOptions) { - const candidateAuthSchemeName = candidateAuthOption.schemeId.split("#")[1]; - if (candidateAuthSchemeName === preferredSchemeName) { - preferredAuthOptions.push(candidateAuthOption); - } - } - } - for (const candidateAuthOption of candidateAuthOptions) { - if (!preferredAuthOptions.find(({ schemeId }) => schemeId === candidateAuthOption.schemeId)) { - preferredAuthOptions.push(candidateAuthOption); - } - } - return preferredAuthOptions; -}, "resolveAuthOptions"); - -// src/middleware-http-auth-scheme/httpAuthSchemeMiddleware.ts function convertHttpAuthSchemesToMap(httpAuthSchemes) { const map = /* @__PURE__ */ new Map(); for (const scheme of httpAuthSchemes) { @@ -11876,12 +11605,10 @@ var httpAuthSchemeMiddleware = /* @__PURE__ */ __name((config, mwOptions) => (ne const options = config.httpAuthSchemeProvider( await mwOptions.httpAuthSchemeParametersProvider(config, context, args.input) ); - const authSchemePreference = config.authSchemePreference ? await config.authSchemePreference() : []; - const resolvedOptions = resolveAuthOptions(options, authSchemePreference); const authSchemes = convertHttpAuthSchemesToMap(config.httpAuthSchemes); const smithyContext = (0, import_util_middleware.getSmithyContext)(context); const failureReasons = []; - for (const option of resolvedOptions) { + for (const option of options) { const scheme = authSchemes.get(option.schemeId); if (!scheme) { failureReasons.push(`HttpAuthScheme \`${option.schemeId}\` was not enabled for this service.`); @@ -13000,16 +12727,17 @@ var getEndpointPlugin = /* @__PURE__ */ __name((config, instructions) => ({ var import_getEndpointFromConfig2 = __nccwpck_require__(44412); var resolveEndpointConfig = /* @__PURE__ */ __name((input) => { const tls = input.tls ?? true; - const { endpoint, useDualstackEndpoint, useFipsEndpoint } = input; + const { endpoint } = input; const customEndpointProvider = endpoint != null ? async () => toEndpointV1(await (0, import_util_middleware.normalizeProvider)(endpoint)()) : void 0; const isCustomEndpoint = !!endpoint; - const resolvedConfig = Object.assign(input, { + const resolvedConfig = { + ...input, endpoint: customEndpointProvider, tls, isCustomEndpoint, - useDualstackEndpoint: (0, import_util_middleware.normalizeProvider)(useDualstackEndpoint ?? false), - useFipsEndpoint: (0, import_util_middleware.normalizeProvider)(useFipsEndpoint ?? false) - }); + useDualstackEndpoint: (0, import_util_middleware.normalizeProvider)(input.useDualstackEndpoint ?? false), + useFipsEndpoint: (0, import_util_middleware.normalizeProvider)(input.useFipsEndpoint ?? false) + }; let configuredEndpointPromise = void 0; resolvedConfig.serviceConfiguredEndpoint = async () => { if (input.serviceId && !configuredEndpointPromise) { @@ -14263,18 +13991,19 @@ module.exports = __toCommonJS(src_exports); // src/extensions/httpExtensionConfiguration.ts var getHttpHandlerExtensionConfiguration = /* @__PURE__ */ __name((runtimeConfig) => { + let httpHandler = runtimeConfig.httpHandler; return { setHttpHandler(handler) { - runtimeConfig.httpHandler = handler; + httpHandler = handler; }, httpHandler() { - return runtimeConfig.httpHandler; + return httpHandler; }, updateHttpClientConfig(key, value) { - runtimeConfig.httpHandler?.updateHttpClientConfig(key, value); + httpHandler.updateHttpClientConfig(key, value); }, httpHandlerConfigs() { - return runtimeConfig.httpHandler.httpHandlerConfigs(); + return httpHandler.httpHandlerConfigs(); } }; }, "getHttpHandlerExtensionConfiguration"); @@ -14981,11 +14710,12 @@ var getChecksumConfiguration = /* @__PURE__ */ __name((runtimeConfig) => { }); } return { + _checksumAlgorithms: checksumAlgorithms, addChecksumAlgorithm(algo) { - checksumAlgorithms.push(algo); + this._checksumAlgorithms.push(algo); }, checksumAlgorithms() { - return checksumAlgorithms; + return this._checksumAlgorithms; } }; }, "getChecksumConfiguration"); @@ -14999,10 +14729,14 @@ var resolveChecksumRuntimeConfig = /* @__PURE__ */ __name((clientConfig) => { // src/extensions/defaultClientConfiguration.ts var getDefaultClientConfiguration = /* @__PURE__ */ __name((runtimeConfig) => { - return getChecksumConfiguration(runtimeConfig); + return { + ...getChecksumConfiguration(runtimeConfig) + }; }, "getDefaultClientConfiguration"); var resolveDefaultRuntimeConfig = /* @__PURE__ */ __name((config) => { - return resolveChecksumRuntimeConfig(config); + return { + ...resolveChecksumRuntimeConfig(config) + }; }, "resolveDefaultRuntimeConfig"); // src/http.ts @@ -15554,7 +15288,7 @@ function createBufferedReadable(upstream, size, logger) { ]; let mode = -1; upstream.on("data", (chunk) => { - const chunkMode = (0, createBufferedReadableStream_1.modeOf)(chunk, true); + const chunkMode = (0, createBufferedReadableStream_1.modeOf)(chunk); if (mode !== chunkMode) { if (mode >= 0) { downstream.push((0, createBufferedReadableStream_1.flush)(buffers, mode)); @@ -15625,7 +15359,7 @@ function createBufferedReadableStream(upstream, size, logger) { controller.close(); } else { - const chunkMode = modeOf(chunk, false); + const chunkMode = modeOf(chunk); if (mode !== chunkMode) { if (mode >= 0) { controller.enqueue(flush(buffers, mode)); @@ -15693,8 +15427,8 @@ function sizeOf(chunk) { return (_b = (_a = chunk === null || chunk === void 0 ? void 0 : chunk.byteLength) !== null && _a !== void 0 ? _a : chunk === null || chunk === void 0 ? void 0 : chunk.length) !== null && _b !== void 0 ? _b : 0; } exports.sizeOf = sizeOf; -function modeOf(chunk, allowBuffer = true) { - if (allowBuffer && typeof Buffer !== "undefined" && chunk instanceof Buffer) { +function modeOf(chunk) { + if (typeof Buffer !== "undefined" && chunk instanceof Buffer) { return 2; } if (chunk instanceof Uint8Array) { @@ -38248,9 +37982,9 @@ const defaultSSOHttpAuthSchemeProvider = (authParameters) => { exports.defaultSSOHttpAuthSchemeProvider = defaultSSOHttpAuthSchemeProvider; const resolveHttpAuthSchemeConfig = (config) => { const config_0 = (0, core_1.resolveAwsSdkSigV4Config)(config); - return Object.assign(config_0, { - authSchemePreference: (0, util_middleware_1.normalizeProvider)(config.authSchemePreference ?? []), - }); + return { + ...config_0, + }; }; exports.resolveHttpAuthSchemeConfig = resolveHttpAuthSchemeConfig; @@ -38350,7 +38084,7 @@ module.exports = __toCommonJS(index_exports); // src/SSOClient.ts var import_middleware_host_header = __nccwpck_require__(88567); -var import_middleware_logger = __nccwpck_require__(12593); +var import_middleware_logger = __nccwpck_require__(85242); var import_middleware_recursion_detection = __nccwpck_require__(86037); var import_middleware_user_agent = __nccwpck_require__(88936); var import_config_resolver = __nccwpck_require__(39316); @@ -38363,11 +38097,12 @@ var import_httpAuthSchemeProvider = __nccwpck_require__(98496); // src/endpoint/EndpointParameters.ts var resolveClientEndpointParameters = /* @__PURE__ */ __name((options) => { - return Object.assign(options, { + return { + ...options, useDualstackEndpoint: options.useDualstackEndpoint ?? false, useFipsEndpoint: options.useFipsEndpoint ?? false, defaultSigningName: "awsssoportal" - }); + }; }, "resolveClientEndpointParameters"); var commonParams = { UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, @@ -38380,7 +38115,7 @@ var commonParams = { var import_runtimeConfig = __nccwpck_require__(71425); // src/runtimeExtensions.ts -var import_region_config_resolver = __nccwpck_require__(17510); +var import_region_config_resolver = __nccwpck_require__(36463); var import_protocol_http = __nccwpck_require__(31749); var import_smithy_client = __nccwpck_require__(61411); @@ -38424,21 +38159,22 @@ var resolveHttpAuthRuntimeConfig = /* @__PURE__ */ __name((config) => { }, "resolveHttpAuthRuntimeConfig"); // src/runtimeExtensions.ts +var asPartial = /* @__PURE__ */ __name((t) => t, "asPartial"); var resolveRuntimeExtensions = /* @__PURE__ */ __name((runtimeConfig, extensions) => { - const extensionConfiguration = Object.assign( - (0, import_region_config_resolver.getAwsRegionExtensionConfiguration)(runtimeConfig), - (0, import_smithy_client.getDefaultExtensionConfiguration)(runtimeConfig), - (0, import_protocol_http.getHttpHandlerExtensionConfiguration)(runtimeConfig), - getHttpAuthExtensionConfiguration(runtimeConfig) - ); + const extensionConfiguration = { + ...asPartial((0, import_region_config_resolver.getAwsRegionExtensionConfiguration)(runtimeConfig)), + ...asPartial((0, import_smithy_client.getDefaultExtensionConfiguration)(runtimeConfig)), + ...asPartial((0, import_protocol_http.getHttpHandlerExtensionConfiguration)(runtimeConfig)), + ...asPartial(getHttpAuthExtensionConfiguration(runtimeConfig)) + }; extensions.forEach((extension) => extension.configure(extensionConfiguration)); - return Object.assign( - runtimeConfig, - (0, import_region_config_resolver.resolveAwsRegionExtensionConfiguration)(extensionConfiguration), - (0, import_smithy_client.resolveDefaultRuntimeConfig)(extensionConfiguration), - (0, import_protocol_http.resolveHttpHandlerRuntimeConfig)(extensionConfiguration), - resolveHttpAuthRuntimeConfig(extensionConfiguration) - ); + return { + ...runtimeConfig, + ...(0, import_region_config_resolver.resolveAwsRegionExtensionConfiguration)(extensionConfiguration), + ...(0, import_smithy_client.resolveDefaultRuntimeConfig)(extensionConfiguration), + ...(0, import_protocol_http.resolveHttpHandlerRuntimeConfig)(extensionConfiguration), + ...resolveHttpAuthRuntimeConfig(extensionConfiguration) + }; }, "resolveRuntimeExtensions"); // src/SSOClient.ts @@ -38452,8 +38188,6 @@ var SSOClient = class extends import_smithy_client.Client { config; constructor(...[configuration]) { const _config_0 = (0, import_runtimeConfig.getRuntimeConfig)(configuration || {}); - super(_config_0); - this.initConfig = _config_0; const _config_1 = resolveClientEndpointParameters(_config_0); const _config_2 = (0, import_middleware_user_agent.resolveUserAgentConfig)(_config_1); const _config_3 = (0, import_middleware_retry.resolveRetryConfig)(_config_2); @@ -38462,6 +38196,7 @@ var SSOClient = class extends import_smithy_client.Client { const _config_6 = (0, import_middleware_endpoint.resolveEndpointConfig)(_config_5); const _config_7 = (0, import_httpAuthSchemeProvider.resolveHttpAuthSchemeConfig)(_config_6); const _config_8 = resolveRuntimeExtensions(_config_7, configuration?.extensions || []); + super(_config_8); this.config = _config_8; this.middlewareStack.use((0, import_middleware_user_agent.getUserAgentPlugin)(this.config)); this.middlewareStack.use((0, import_middleware_retry.getRetryPlugin)(this.config)); @@ -39307,38 +39042,28 @@ var import_client = __nccwpck_require__(35793); var import_core2 = __nccwpck_require__(3837); var import_signature_v4 = __nccwpck_require__(75118); var resolveAwsSdkSigV4Config = /* @__PURE__ */ __name((config) => { - let inputCredentials = config.credentials; - let isUserSupplied = !!config.credentials; - let resolvedCredentials = void 0; - Object.defineProperty(config, "credentials", { - set(credentials) { - if (credentials && credentials !== inputCredentials && credentials !== resolvedCredentials) { - isUserSupplied = true; - } - inputCredentials = credentials; - const memoizedProvider = normalizeCredentialProvider(config, { - credentials: inputCredentials, - credentialDefaultProvider: config.credentialDefaultProvider - }); - const boundProvider = bindCallerConfig(config, memoizedProvider); - if (isUserSupplied && !boundProvider.attributed) { - resolvedCredentials = /* @__PURE__ */ __name(async (options) => boundProvider(options).then( - (creds) => (0, import_client.setCredentialFeature)(creds, "CREDENTIALS_CODE", "e") - ), "resolvedCredentials"); - resolvedCredentials.memoized = boundProvider.memoized; - resolvedCredentials.configBound = boundProvider.configBound; - resolvedCredentials.attributed = true; - } else { - resolvedCredentials = boundProvider; - } - }, - get() { - return resolvedCredentials; - }, - enumerable: true, - configurable: true - }); - config.credentials = inputCredentials; + let isUserSupplied = false; + let credentialsProvider; + if (config.credentials) { + isUserSupplied = true; + credentialsProvider = (0, import_core2.memoizeIdentityProvider)(config.credentials, import_core2.isIdentityExpired, import_core2.doesIdentityRequireRefresh); + } + if (!credentialsProvider) { + if (config.credentialDefaultProvider) { + credentialsProvider = (0, import_core2.normalizeProvider)( + config.credentialDefaultProvider( + Object.assign({}, config, { + parentClientConfig: config + }) + ) + ); + } else { + credentialsProvider = /* @__PURE__ */ __name(async () => { + throw new Error("`credentials` is missing"); + }, "credentialsProvider"); + } + } + const boundCredentialsProvider = /* @__PURE__ */ __name(async (options) => credentialsProvider({ ...options, callerClientConfig: config }), "boundCredentialsProvider"); const { // Default for signingEscapePath signingEscapePath = true, @@ -39365,7 +39090,7 @@ var resolveAwsSdkSigV4Config = /* @__PURE__ */ __name((config) => { config.signingName = config.signingName || signingService || config.serviceId; const params = { ...config, - credentials: config.credentials, + credentials: boundCredentialsProvider, region: config.signingRegion, service: config.signingName, sha256, @@ -39392,7 +39117,7 @@ var resolveAwsSdkSigV4Config = /* @__PURE__ */ __name((config) => { config.signingName = config.signingName || signingService || config.serviceId; const params = { ...config, - credentials: config.credentials, + credentials: boundCredentialsProvider, region: config.signingRegion, service: config.signingName, sha256, @@ -39402,56 +39127,17 @@ var resolveAwsSdkSigV4Config = /* @__PURE__ */ __name((config) => { return new SignerCtor(params); }, "signer"); } - const resolvedConfig = Object.assign(config, { + return { + ...config, systemClockOffset, signingEscapePath, + credentials: isUserSupplied ? async (options) => boundCredentialsProvider(options).then( + (creds) => (0, import_client.setCredentialFeature)(creds, "CREDENTIALS_CODE", "e") + ) : boundCredentialsProvider, signer - }); - return resolvedConfig; + }; }, "resolveAwsSdkSigV4Config"); var resolveAWSSDKSigV4Config = resolveAwsSdkSigV4Config; -function normalizeCredentialProvider(config, { - credentials, - credentialDefaultProvider -}) { - let credentialsProvider; - if (credentials) { - if (!credentials?.memoized) { - credentialsProvider = (0, import_core2.memoizeIdentityProvider)(credentials, import_core2.isIdentityExpired, import_core2.doesIdentityRequireRefresh); - } else { - credentialsProvider = credentials; - } - } else { - if (credentialDefaultProvider) { - credentialsProvider = (0, import_core2.normalizeProvider)( - credentialDefaultProvider( - Object.assign({}, config, { - parentClientConfig: config - }) - ) - ); - } else { - credentialsProvider = /* @__PURE__ */ __name(async () => { - throw new Error( - "@aws-sdk/core::resolveAwsSdkSigV4Config - `credentials` not provided and no credentialDefaultProvider was configured." - ); - }, "credentialsProvider"); - } - } - credentialsProvider.memoized = true; - return credentialsProvider; -} -__name(normalizeCredentialProvider, "normalizeCredentialProvider"); -function bindCallerConfig(config, credentialsProvider) { - if (credentialsProvider.configBound) { - return credentialsProvider; - } - const fn = /* @__PURE__ */ __name(async (options) => credentialsProvider({ ...options, callerClientConfig: config }), "fn"); - fn.memoized = credentialsProvider.memoized; - fn.configBound = true; - return fn; -} -__name(bindCallerConfig, "bindCallerConfig"); // Annotate the CommonJS export names for ESM import in node: 0 && (0); @@ -40561,89 +40247,6 @@ var getHostHeaderPlugin = /* @__PURE__ */ __name((options) => ({ -/***/ }), - -/***/ 12593: -/***/ ((module) => { - -"use strict"; - -var __defProp = Object.defineProperty; -var __getOwnPropDesc = Object.getOwnPropertyDescriptor; -var __getOwnPropNames = Object.getOwnPropertyNames; -var __hasOwnProp = Object.prototype.hasOwnProperty; -var __name = (target, value) => __defProp(target, "name", { value, configurable: true }); -var __export = (target, all) => { - for (var name in all) - __defProp(target, name, { get: all[name], enumerable: true }); -}; -var __copyProps = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames(from)) - if (!__hasOwnProp.call(to, key) && key !== except) - __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); - } - return to; -}; -var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); - -// src/index.ts -var index_exports = {}; -__export(index_exports, { - getLoggerPlugin: () => getLoggerPlugin, - loggerMiddleware: () => loggerMiddleware, - loggerMiddlewareOptions: () => loggerMiddlewareOptions -}); -module.exports = __toCommonJS(index_exports); - -// src/loggerMiddleware.ts -var loggerMiddleware = /* @__PURE__ */ __name(() => (next, context) => async (args) => { - try { - const response = await next(args); - const { clientName, commandName, logger, dynamoDbDocumentClientOptions = {} } = context; - const { overrideInputFilterSensitiveLog, overrideOutputFilterSensitiveLog } = dynamoDbDocumentClientOptions; - const inputFilterSensitiveLog = overrideInputFilterSensitiveLog ?? context.inputFilterSensitiveLog; - const outputFilterSensitiveLog = overrideOutputFilterSensitiveLog ?? context.outputFilterSensitiveLog; - const { $metadata, ...outputWithoutMetadata } = response.output; - logger?.info?.({ - clientName, - commandName, - input: inputFilterSensitiveLog(args.input), - output: outputFilterSensitiveLog(outputWithoutMetadata), - metadata: $metadata - }); - return response; - } catch (error) { - const { clientName, commandName, logger, dynamoDbDocumentClientOptions = {} } = context; - const { overrideInputFilterSensitiveLog } = dynamoDbDocumentClientOptions; - const inputFilterSensitiveLog = overrideInputFilterSensitiveLog ?? context.inputFilterSensitiveLog; - logger?.error?.({ - clientName, - commandName, - input: inputFilterSensitiveLog(args.input), - error, - metadata: error.$metadata - }); - throw error; - } -}, "loggerMiddleware"); -var loggerMiddlewareOptions = { - name: "loggerMiddleware", - tags: ["LOGGER"], - step: "initialize", - override: true -}; -var getLoggerPlugin = /* @__PURE__ */ __name((options) => ({ - applyToStack: /* @__PURE__ */ __name((clientStack) => { - clientStack.add(loggerMiddleware(), loggerMiddlewareOptions); - }, "applyToStack") -}), "getLoggerPlugin"); -// Annotate the CommonJS export names for ESM import in node: - -0 && (0); - - - /***/ }), /***/ 86037: @@ -40769,9 +40372,9 @@ function isValidUserAgentAppId(appId) { __name(isValidUserAgentAppId, "isValidUserAgentAppId"); function resolveUserAgentConfig(input) { const normalizedAppIdProvider = (0, import_core.normalizeProvider)(input.userAgentAppId ?? DEFAULT_UA_APP_ID); - const { customUserAgent } = input; - return Object.assign(input, { - customUserAgent: typeof customUserAgent === "string" ? [[customUserAgent]] : customUserAgent, + return { + ...input, + customUserAgent: typeof input.customUserAgent === "string" ? [[input.customUserAgent]] : input.customUserAgent, userAgentAppId: /* @__PURE__ */ __name(async () => { const appId = await normalizedAppIdProvider(); if (!isValidUserAgentAppId(appId)) { @@ -40784,7 +40387,7 @@ function resolveUserAgentConfig(input) { } return appId; }, "userAgentAppId") - }); + }; } __name(resolveUserAgentConfig, "resolveUserAgentConfig"); @@ -41006,9 +40609,9 @@ const defaultSSOOIDCHttpAuthSchemeProvider = (authParameters) => { exports.defaultSSOOIDCHttpAuthSchemeProvider = defaultSSOOIDCHttpAuthSchemeProvider; const resolveHttpAuthSchemeConfig = (config) => { const config_0 = (0, core_1.resolveAwsSdkSigV4Config)(config); - return Object.assign(config_0, { - authSchemePreference: (0, util_middleware_1.normalizeProvider)(config.authSchemePreference ?? []), - }); + return { + ...config_0, + }; }; exports.resolveHttpAuthSchemeConfig = resolveHttpAuthSchemeConfig; @@ -41107,7 +40710,7 @@ module.exports = __toCommonJS(index_exports); // src/submodules/sso-oidc/SSOOIDCClient.ts var import_middleware_host_header = __nccwpck_require__(88567); -var import_middleware_logger = __nccwpck_require__(12593); +var import_middleware_logger = __nccwpck_require__(85242); var import_middleware_recursion_detection = __nccwpck_require__(86037); var import_middleware_user_agent = __nccwpck_require__(88936); var import_config_resolver = __nccwpck_require__(39316); @@ -41120,11 +40723,12 @@ var import_httpAuthSchemeProvider = __nccwpck_require__(81893); // src/submodules/sso-oidc/endpoint/EndpointParameters.ts var resolveClientEndpointParameters = /* @__PURE__ */ __name((options) => { - return Object.assign(options, { + return { + ...options, useDualstackEndpoint: options.useDualstackEndpoint ?? false, useFipsEndpoint: options.useFipsEndpoint ?? false, defaultSigningName: "sso-oauth" - }); + }; }, "resolveClientEndpointParameters"); var commonParams = { UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, @@ -41137,7 +40741,7 @@ var commonParams = { var import_runtimeConfig = __nccwpck_require__(52492); // src/submodules/sso-oidc/runtimeExtensions.ts -var import_region_config_resolver = __nccwpck_require__(17510); +var import_region_config_resolver = __nccwpck_require__(36463); var import_protocol_http = __nccwpck_require__(31749); var import_smithy_client = __nccwpck_require__(61411); @@ -41181,21 +40785,22 @@ var resolveHttpAuthRuntimeConfig = /* @__PURE__ */ __name((config) => { }, "resolveHttpAuthRuntimeConfig"); // src/submodules/sso-oidc/runtimeExtensions.ts +var asPartial = /* @__PURE__ */ __name((t) => t, "asPartial"); var resolveRuntimeExtensions = /* @__PURE__ */ __name((runtimeConfig, extensions) => { - const extensionConfiguration = Object.assign( - (0, import_region_config_resolver.getAwsRegionExtensionConfiguration)(runtimeConfig), - (0, import_smithy_client.getDefaultExtensionConfiguration)(runtimeConfig), - (0, import_protocol_http.getHttpHandlerExtensionConfiguration)(runtimeConfig), - getHttpAuthExtensionConfiguration(runtimeConfig) - ); + const extensionConfiguration = { + ...asPartial((0, import_region_config_resolver.getAwsRegionExtensionConfiguration)(runtimeConfig)), + ...asPartial((0, import_smithy_client.getDefaultExtensionConfiguration)(runtimeConfig)), + ...asPartial((0, import_protocol_http.getHttpHandlerExtensionConfiguration)(runtimeConfig)), + ...asPartial(getHttpAuthExtensionConfiguration(runtimeConfig)) + }; extensions.forEach((extension) => extension.configure(extensionConfiguration)); - return Object.assign( - runtimeConfig, - (0, import_region_config_resolver.resolveAwsRegionExtensionConfiguration)(extensionConfiguration), - (0, import_smithy_client.resolveDefaultRuntimeConfig)(extensionConfiguration), - (0, import_protocol_http.resolveHttpHandlerRuntimeConfig)(extensionConfiguration), - resolveHttpAuthRuntimeConfig(extensionConfiguration) - ); + return { + ...runtimeConfig, + ...(0, import_region_config_resolver.resolveAwsRegionExtensionConfiguration)(extensionConfiguration), + ...(0, import_smithy_client.resolveDefaultRuntimeConfig)(extensionConfiguration), + ...(0, import_protocol_http.resolveHttpHandlerRuntimeConfig)(extensionConfiguration), + ...resolveHttpAuthRuntimeConfig(extensionConfiguration) + }; }, "resolveRuntimeExtensions"); // src/submodules/sso-oidc/SSOOIDCClient.ts @@ -41209,8 +40814,6 @@ var SSOOIDCClient = class extends import_smithy_client2.Client { config; constructor(...[configuration]) { const _config_0 = (0, import_runtimeConfig.getRuntimeConfig)(configuration || {}); - super(_config_0); - this.initConfig = _config_0; const _config_1 = resolveClientEndpointParameters(_config_0); const _config_2 = (0, import_middleware_user_agent.resolveUserAgentConfig)(_config_1); const _config_3 = (0, import_middleware_retry.resolveRetryConfig)(_config_2); @@ -41219,6 +40822,7 @@ var SSOOIDCClient = class extends import_smithy_client2.Client { const _config_6 = (0, import_middleware_endpoint.resolveEndpointConfig)(_config_5); const _config_7 = (0, import_httpAuthSchemeProvider.resolveHttpAuthSchemeConfig)(_config_6); const _config_8 = resolveRuntimeExtensions(_config_7, configuration?.extensions || []); + super(_config_8); this.config = _config_8; this.middlewareStack.use((0, import_middleware_user_agent.getUserAgentPlugin)(this.config)); this.middlewareStack.use((0, import_middleware_retry.getRetryPlugin)(this.config)); @@ -42030,7 +41634,7 @@ exports.getRuntimeConfig = getRuntimeConfig; Object.defineProperty(exports, "__esModule", ({ value: true })); exports.STSClient = exports.__Client = void 0; const middleware_host_header_1 = __nccwpck_require__(88567); -const middleware_logger_1 = __nccwpck_require__(12593); +const middleware_logger_1 = __nccwpck_require__(85242); const middleware_recursion_detection_1 = __nccwpck_require__(86037); const middleware_user_agent_1 = __nccwpck_require__(88936); const config_resolver_1 = __nccwpck_require__(39316); @@ -42048,8 +41652,6 @@ class STSClient extends smithy_client_1.Client { config; constructor(...[configuration]) { const _config_0 = (0, runtimeConfig_1.getRuntimeConfig)(configuration || {}); - super(_config_0); - this.initConfig = _config_0; const _config_1 = (0, EndpointParameters_1.resolveClientEndpointParameters)(_config_0); const _config_2 = (0, middleware_user_agent_1.resolveUserAgentConfig)(_config_1); const _config_3 = (0, middleware_retry_1.resolveRetryConfig)(_config_2); @@ -42058,6 +41660,7 @@ class STSClient extends smithy_client_1.Client { const _config_6 = (0, middleware_endpoint_1.resolveEndpointConfig)(_config_5); const _config_7 = (0, httpAuthSchemeProvider_1.resolveHttpAuthSchemeConfig)(_config_6); const _config_8 = (0, runtimeExtensions_1.resolveRuntimeExtensions)(_config_7, configuration?.extensions || []); + super(_config_8); this.config = _config_8; this.middlewareStack.use((0, middleware_user_agent_1.getUserAgentPlugin)(this.config)); this.middlewareStack.use((0, middleware_retry_1.getRetryPlugin)(this.config)); @@ -42187,16 +41790,17 @@ const defaultSTSHttpAuthSchemeProvider = (authParameters) => { return options; }; exports.defaultSTSHttpAuthSchemeProvider = defaultSTSHttpAuthSchemeProvider; -const resolveStsAuthConfig = (input) => Object.assign(input, { +const resolveStsAuthConfig = (input) => ({ + ...input, stsClientCtor: STSClient_1.STSClient, }); exports.resolveStsAuthConfig = resolveStsAuthConfig; const resolveHttpAuthSchemeConfig = (config) => { const config_0 = (0, exports.resolveStsAuthConfig)(config); const config_1 = (0, core_1.resolveAwsSdkSigV4Config)(config_0); - return Object.assign(config_1, { - authSchemePreference: (0, util_middleware_1.normalizeProvider)(config.authSchemePreference ?? []), - }); + return { + ...config_1, + }; }; exports.resolveHttpAuthSchemeConfig = resolveHttpAuthSchemeConfig; @@ -42211,12 +41815,13 @@ exports.resolveHttpAuthSchemeConfig = resolveHttpAuthSchemeConfig; Object.defineProperty(exports, "__esModule", ({ value: true })); exports.commonParams = exports.resolveClientEndpointParameters = void 0; const resolveClientEndpointParameters = (options) => { - return Object.assign(options, { + return { + ...options, useDualstackEndpoint: options.useDualstackEndpoint ?? false, useFipsEndpoint: options.useFipsEndpoint ?? false, useGlobalEndpoint: options.useGlobalEndpoint ?? false, defaultSigningName: "sts", - }); + }; }; exports.resolveClientEndpointParameters = resolveClientEndpointParameters; exports.commonParams = { @@ -43336,123 +42941,30 @@ exports.getRuntimeConfig = getRuntimeConfig; Object.defineProperty(exports, "__esModule", ({ value: true })); exports.resolveRuntimeExtensions = void 0; -const region_config_resolver_1 = __nccwpck_require__(17510); +const region_config_resolver_1 = __nccwpck_require__(36463); const protocol_http_1 = __nccwpck_require__(31749); const smithy_client_1 = __nccwpck_require__(61411); const httpAuthExtensionConfiguration_1 = __nccwpck_require__(25387); +const asPartial = (t) => t; const resolveRuntimeExtensions = (runtimeConfig, extensions) => { - const extensionConfiguration = Object.assign((0, region_config_resolver_1.getAwsRegionExtensionConfiguration)(runtimeConfig), (0, smithy_client_1.getDefaultExtensionConfiguration)(runtimeConfig), (0, protocol_http_1.getHttpHandlerExtensionConfiguration)(runtimeConfig), (0, httpAuthExtensionConfiguration_1.getHttpAuthExtensionConfiguration)(runtimeConfig)); + const extensionConfiguration = { + ...asPartial((0, region_config_resolver_1.getAwsRegionExtensionConfiguration)(runtimeConfig)), + ...asPartial((0, smithy_client_1.getDefaultExtensionConfiguration)(runtimeConfig)), + ...asPartial((0, protocol_http_1.getHttpHandlerExtensionConfiguration)(runtimeConfig)), + ...asPartial((0, httpAuthExtensionConfiguration_1.getHttpAuthExtensionConfiguration)(runtimeConfig)), + }; extensions.forEach((extension) => extension.configure(extensionConfiguration)); - return Object.assign(runtimeConfig, (0, region_config_resolver_1.resolveAwsRegionExtensionConfiguration)(extensionConfiguration), (0, smithy_client_1.resolveDefaultRuntimeConfig)(extensionConfiguration), (0, protocol_http_1.resolveHttpHandlerRuntimeConfig)(extensionConfiguration), (0, httpAuthExtensionConfiguration_1.resolveHttpAuthRuntimeConfig)(extensionConfiguration)); + return { + ...runtimeConfig, + ...(0, region_config_resolver_1.resolveAwsRegionExtensionConfiguration)(extensionConfiguration), + ...(0, smithy_client_1.resolveDefaultRuntimeConfig)(extensionConfiguration), + ...(0, protocol_http_1.resolveHttpHandlerRuntimeConfig)(extensionConfiguration), + ...(0, httpAuthExtensionConfiguration_1.resolveHttpAuthRuntimeConfig)(extensionConfiguration), + }; }; exports.resolveRuntimeExtensions = resolveRuntimeExtensions; -/***/ }), - -/***/ 17510: -/***/ ((module) => { - -"use strict"; - -var __defProp = Object.defineProperty; -var __getOwnPropDesc = Object.getOwnPropertyDescriptor; -var __getOwnPropNames = Object.getOwnPropertyNames; -var __hasOwnProp = Object.prototype.hasOwnProperty; -var __name = (target, value) => __defProp(target, "name", { value, configurable: true }); -var __export = (target, all) => { - for (var name in all) - __defProp(target, name, { get: all[name], enumerable: true }); -}; -var __copyProps = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames(from)) - if (!__hasOwnProp.call(to, key) && key !== except) - __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); - } - return to; -}; -var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); - -// src/index.ts -var index_exports = {}; -__export(index_exports, { - NODE_REGION_CONFIG_FILE_OPTIONS: () => NODE_REGION_CONFIG_FILE_OPTIONS, - NODE_REGION_CONFIG_OPTIONS: () => NODE_REGION_CONFIG_OPTIONS, - REGION_ENV_NAME: () => REGION_ENV_NAME, - REGION_INI_NAME: () => REGION_INI_NAME, - getAwsRegionExtensionConfiguration: () => getAwsRegionExtensionConfiguration, - resolveAwsRegionExtensionConfiguration: () => resolveAwsRegionExtensionConfiguration, - resolveRegionConfig: () => resolveRegionConfig -}); -module.exports = __toCommonJS(index_exports); - -// src/extensions/index.ts -var getAwsRegionExtensionConfiguration = /* @__PURE__ */ __name((runtimeConfig) => { - return { - setRegion(region) { - runtimeConfig.region = region; - }, - region() { - return runtimeConfig.region; - } - }; -}, "getAwsRegionExtensionConfiguration"); -var resolveAwsRegionExtensionConfiguration = /* @__PURE__ */ __name((awsRegionExtensionConfiguration) => { - return { - region: awsRegionExtensionConfiguration.region() - }; -}, "resolveAwsRegionExtensionConfiguration"); - -// src/regionConfig/config.ts -var REGION_ENV_NAME = "AWS_REGION"; -var REGION_INI_NAME = "region"; -var NODE_REGION_CONFIG_OPTIONS = { - environmentVariableSelector: /* @__PURE__ */ __name((env) => env[REGION_ENV_NAME], "environmentVariableSelector"), - configFileSelector: /* @__PURE__ */ __name((profile) => profile[REGION_INI_NAME], "configFileSelector"), - default: /* @__PURE__ */ __name(() => { - throw new Error("Region is missing"); - }, "default") -}; -var NODE_REGION_CONFIG_FILE_OPTIONS = { - preferredFile: "credentials" -}; - -// src/regionConfig/isFipsRegion.ts -var isFipsRegion = /* @__PURE__ */ __name((region) => typeof region === "string" && (region.startsWith("fips-") || region.endsWith("-fips")), "isFipsRegion"); - -// src/regionConfig/getRealRegion.ts -var getRealRegion = /* @__PURE__ */ __name((region) => isFipsRegion(region) ? ["fips-aws-global", "aws-fips"].includes(region) ? "us-east-1" : region.replace(/fips-(dkr-|prod-)?|-fips/, "") : region, "getRealRegion"); - -// src/regionConfig/resolveRegionConfig.ts -var resolveRegionConfig = /* @__PURE__ */ __name((input) => { - const { region, useFipsEndpoint } = input; - if (!region) { - throw new Error("Region is missing"); - } - return Object.assign(input, { - region: /* @__PURE__ */ __name(async () => { - if (typeof region === "string") { - return getRealRegion(region); - } - const providedRegion = await region(); - return getRealRegion(providedRegion); - }, "region"), - useFipsEndpoint: /* @__PURE__ */ __name(async () => { - const providedRegion = typeof region === "string" ? region : await region(); - if (isFipsRegion(providedRegion)) { - return true; - } - return typeof useFipsEndpoint !== "function" ? Promise.resolve(!!useFipsEndpoint) : useFipsEndpoint(); - }, "useFipsEndpoint") - }); -}, "resolveRegionConfig"); -// Annotate the CommonJS export names for ESM import in node: - -0 && (0); - - - /***/ }), /***/ 95638: @@ -43701,8 +43213,8 @@ var __copyProps = (to, from, except, desc) => { var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); // src/index.ts -var index_exports = {}; -__export(index_exports, { +var src_exports = {}; +__export(src_exports, { ConditionObject: () => import_util_endpoints.ConditionObject, DeprecatedObject: () => import_util_endpoints.DeprecatedObject, EndpointError: () => import_util_endpoints.EndpointError, @@ -43732,7 +43244,7 @@ __export(index_exports, { setPartitionInfo: () => setPartitionInfo, useDefaultPartitionInfo: () => useDefaultPartitionInfo }); -module.exports = __toCommonJS(index_exports); +module.exports = __toCommonJS(src_exports); // src/aws.ts @@ -43773,9 +43285,11 @@ var ARN_DELIMITER = ":"; var RESOURCE_DELIMITER = "/"; var parseArn = /* @__PURE__ */ __name((value) => { const segments = value.split(ARN_DELIMITER); - if (segments.length < 6) return null; + if (segments.length < 6) + return null; const [arn, partition2, service, region, accountId, ...resourcePath] = segments; - if (arn !== "arn" || partition2 === "" || service === "" || resourcePath.join(ARN_DELIMITER) === "") return null; + if (arn !== "arn" || partition2 === "" || service === "" || resourcePath.join(ARN_DELIMITER) === "") + return null; const resourceId = resourcePath.map((resource) => resource.split(RESOURCE_DELIMITER)).flat(); return { partition: partition2, @@ -43997,9 +43511,6 @@ var partitions_default = { }, regionRegex: "^eu\\-isoe\\-\\w+\\-\\d+$", regions: { - "aws-iso-e-global": { - description: "AWS ISOE (Europe) global region" - }, "eu-isoe-west-1": { description: "EU ISOE West" } @@ -44026,22 +43537,6 @@ var partitions_default = { description: "US ISOF SOUTH" } } - }, { - id: "aws-eusc", - outputs: { - dnsSuffix: "amazonaws.eu", - dualStackDnsSuffix: "amazonaws.eu", - implicitGlobalRegion: "eusc-de-east-1", - name: "aws-eusc", - supportsDualStack: false, - supportsFIPS: true - }, - regionRegex: "^eusc\\-(de)\\-\\w+\\-\\d+$", - regions: { - "eusc-de-east-1": { - description: "EU (Germany)" - } - } }], version: "1.1" }; @@ -44284,30 +43779,6 @@ var getSmithyContext = /* @__PURE__ */ __name((context) => context[import_types. // src/middleware-http-auth-scheme/httpAuthSchemeMiddleware.ts var import_util_middleware = __nccwpck_require__(1809); - -// src/middleware-http-auth-scheme/resolveAuthOptions.ts -var resolveAuthOptions = /* @__PURE__ */ __name((candidateAuthOptions, authSchemePreference) => { - if (!authSchemePreference || authSchemePreference.length === 0) { - return candidateAuthOptions; - } - const preferredAuthOptions = []; - for (const preferredSchemeName of authSchemePreference) { - for (const candidateAuthOption of candidateAuthOptions) { - const candidateAuthSchemeName = candidateAuthOption.schemeId.split("#")[1]; - if (candidateAuthSchemeName === preferredSchemeName) { - preferredAuthOptions.push(candidateAuthOption); - } - } - } - for (const candidateAuthOption of candidateAuthOptions) { - if (!preferredAuthOptions.find(({ schemeId }) => schemeId === candidateAuthOption.schemeId)) { - preferredAuthOptions.push(candidateAuthOption); - } - } - return preferredAuthOptions; -}, "resolveAuthOptions"); - -// src/middleware-http-auth-scheme/httpAuthSchemeMiddleware.ts function convertHttpAuthSchemesToMap(httpAuthSchemes) { const map = /* @__PURE__ */ new Map(); for (const scheme of httpAuthSchemes) { @@ -44320,12 +43791,10 @@ var httpAuthSchemeMiddleware = /* @__PURE__ */ __name((config, mwOptions) => (ne const options = config.httpAuthSchemeProvider( await mwOptions.httpAuthSchemeParametersProvider(config, context, args.input) ); - const authSchemePreference = config.authSchemePreference ? await config.authSchemePreference() : []; - const resolvedOptions = resolveAuthOptions(options, authSchemePreference); const authSchemes = convertHttpAuthSchemesToMap(config.httpAuthSchemes); const smithyContext = (0, import_util_middleware.getSmithyContext)(context); const failureReasons = []; - for (const option of resolvedOptions) { + for (const option of options) { const scheme = authSchemes.get(option.schemeId); if (!scheme) { failureReasons.push(`HttpAuthScheme \`${option.schemeId}\` was not enabled for this service.`); @@ -48928,9 +48397,9 @@ const defaultSSOHttpAuthSchemeProvider = (authParameters) => { exports.defaultSSOHttpAuthSchemeProvider = defaultSSOHttpAuthSchemeProvider; const resolveHttpAuthSchemeConfig = (config) => { const config_0 = (0, core_1.resolveAwsSdkSigV4Config)(config); - return Object.assign(config_0, { - authSchemePreference: (0, util_middleware_1.normalizeProvider)(config.authSchemePreference ?? []), - }); + return { + ...config_0, + }; }; exports.resolveHttpAuthSchemeConfig = resolveHttpAuthSchemeConfig; @@ -49030,7 +48499,7 @@ module.exports = __toCommonJS(index_exports); // src/SSOClient.ts var import_middleware_host_header = __nccwpck_require__(18751); -var import_middleware_logger = __nccwpck_require__(34089); +var import_middleware_logger = __nccwpck_require__(85242); var import_middleware_recursion_detection = __nccwpck_require__(75693); var import_middleware_user_agent = __nccwpck_require__(26816); var import_config_resolver = __nccwpck_require__(39316); @@ -49043,11 +48512,12 @@ var import_httpAuthSchemeProvider = __nccwpck_require__(89576); // src/endpoint/EndpointParameters.ts var resolveClientEndpointParameters = /* @__PURE__ */ __name((options) => { - return Object.assign(options, { + return { + ...options, useDualstackEndpoint: options.useDualstackEndpoint ?? false, useFipsEndpoint: options.useFipsEndpoint ?? false, defaultSigningName: "awsssoportal" - }); + }; }, "resolveClientEndpointParameters"); var commonParams = { UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, @@ -49060,7 +48530,7 @@ var commonParams = { var import_runtimeConfig = __nccwpck_require__(20681); // src/runtimeExtensions.ts -var import_region_config_resolver = __nccwpck_require__(97838); +var import_region_config_resolver = __nccwpck_require__(36463); var import_protocol_http = __nccwpck_require__(47725); var import_smithy_client = __nccwpck_require__(61411); @@ -49104,21 +48574,22 @@ var resolveHttpAuthRuntimeConfig = /* @__PURE__ */ __name((config) => { }, "resolveHttpAuthRuntimeConfig"); // src/runtimeExtensions.ts +var asPartial = /* @__PURE__ */ __name((t) => t, "asPartial"); var resolveRuntimeExtensions = /* @__PURE__ */ __name((runtimeConfig, extensions) => { - const extensionConfiguration = Object.assign( - (0, import_region_config_resolver.getAwsRegionExtensionConfiguration)(runtimeConfig), - (0, import_smithy_client.getDefaultExtensionConfiguration)(runtimeConfig), - (0, import_protocol_http.getHttpHandlerExtensionConfiguration)(runtimeConfig), - getHttpAuthExtensionConfiguration(runtimeConfig) - ); + const extensionConfiguration = { + ...asPartial((0, import_region_config_resolver.getAwsRegionExtensionConfiguration)(runtimeConfig)), + ...asPartial((0, import_smithy_client.getDefaultExtensionConfiguration)(runtimeConfig)), + ...asPartial((0, import_protocol_http.getHttpHandlerExtensionConfiguration)(runtimeConfig)), + ...asPartial(getHttpAuthExtensionConfiguration(runtimeConfig)) + }; extensions.forEach((extension) => extension.configure(extensionConfiguration)); - return Object.assign( - runtimeConfig, - (0, import_region_config_resolver.resolveAwsRegionExtensionConfiguration)(extensionConfiguration), - (0, import_smithy_client.resolveDefaultRuntimeConfig)(extensionConfiguration), - (0, import_protocol_http.resolveHttpHandlerRuntimeConfig)(extensionConfiguration), - resolveHttpAuthRuntimeConfig(extensionConfiguration) - ); + return { + ...runtimeConfig, + ...(0, import_region_config_resolver.resolveAwsRegionExtensionConfiguration)(extensionConfiguration), + ...(0, import_smithy_client.resolveDefaultRuntimeConfig)(extensionConfiguration), + ...(0, import_protocol_http.resolveHttpHandlerRuntimeConfig)(extensionConfiguration), + ...resolveHttpAuthRuntimeConfig(extensionConfiguration) + }; }, "resolveRuntimeExtensions"); // src/SSOClient.ts @@ -49132,8 +48603,6 @@ var SSOClient = class extends import_smithy_client.Client { config; constructor(...[configuration]) { const _config_0 = (0, import_runtimeConfig.getRuntimeConfig)(configuration || {}); - super(_config_0); - this.initConfig = _config_0; const _config_1 = resolveClientEndpointParameters(_config_0); const _config_2 = (0, import_middleware_user_agent.resolveUserAgentConfig)(_config_1); const _config_3 = (0, import_middleware_retry.resolveRetryConfig)(_config_2); @@ -49142,6 +48611,7 @@ var SSOClient = class extends import_smithy_client.Client { const _config_6 = (0, import_middleware_endpoint.resolveEndpointConfig)(_config_5); const _config_7 = (0, import_httpAuthSchemeProvider.resolveHttpAuthSchemeConfig)(_config_6); const _config_8 = resolveRuntimeExtensions(_config_7, configuration?.extensions || []); + super(_config_8); this.config = _config_8; this.middlewareStack.use((0, import_middleware_user_agent.getUserAgentPlugin)(this.config)); this.middlewareStack.use((0, import_middleware_retry.getRetryPlugin)(this.config)); @@ -49987,38 +49457,28 @@ var import_client = __nccwpck_require__(51977); var import_core2 = __nccwpck_require__(61445); var import_signature_v4 = __nccwpck_require__(75118); var resolveAwsSdkSigV4Config = /* @__PURE__ */ __name((config) => { - let inputCredentials = config.credentials; - let isUserSupplied = !!config.credentials; - let resolvedCredentials = void 0; - Object.defineProperty(config, "credentials", { - set(credentials) { - if (credentials && credentials !== inputCredentials && credentials !== resolvedCredentials) { - isUserSupplied = true; - } - inputCredentials = credentials; - const memoizedProvider = normalizeCredentialProvider(config, { - credentials: inputCredentials, - credentialDefaultProvider: config.credentialDefaultProvider - }); - const boundProvider = bindCallerConfig(config, memoizedProvider); - if (isUserSupplied && !boundProvider.attributed) { - resolvedCredentials = /* @__PURE__ */ __name(async (options) => boundProvider(options).then( - (creds) => (0, import_client.setCredentialFeature)(creds, "CREDENTIALS_CODE", "e") - ), "resolvedCredentials"); - resolvedCredentials.memoized = boundProvider.memoized; - resolvedCredentials.configBound = boundProvider.configBound; - resolvedCredentials.attributed = true; - } else { - resolvedCredentials = boundProvider; - } - }, - get() { - return resolvedCredentials; - }, - enumerable: true, - configurable: true - }); - config.credentials = inputCredentials; + let isUserSupplied = false; + let credentialsProvider; + if (config.credentials) { + isUserSupplied = true; + credentialsProvider = (0, import_core2.memoizeIdentityProvider)(config.credentials, import_core2.isIdentityExpired, import_core2.doesIdentityRequireRefresh); + } + if (!credentialsProvider) { + if (config.credentialDefaultProvider) { + credentialsProvider = (0, import_core2.normalizeProvider)( + config.credentialDefaultProvider( + Object.assign({}, config, { + parentClientConfig: config + }) + ) + ); + } else { + credentialsProvider = /* @__PURE__ */ __name(async () => { + throw new Error("`credentials` is missing"); + }, "credentialsProvider"); + } + } + const boundCredentialsProvider = /* @__PURE__ */ __name(async (options) => credentialsProvider({ ...options, callerClientConfig: config }), "boundCredentialsProvider"); const { // Default for signingEscapePath signingEscapePath = true, @@ -50045,7 +49505,7 @@ var resolveAwsSdkSigV4Config = /* @__PURE__ */ __name((config) => { config.signingName = config.signingName || signingService || config.serviceId; const params = { ...config, - credentials: config.credentials, + credentials: boundCredentialsProvider, region: config.signingRegion, service: config.signingName, sha256, @@ -50072,7 +49532,7 @@ var resolveAwsSdkSigV4Config = /* @__PURE__ */ __name((config) => { config.signingName = config.signingName || signingService || config.serviceId; const params = { ...config, - credentials: config.credentials, + credentials: boundCredentialsProvider, region: config.signingRegion, service: config.signingName, sha256, @@ -50082,56 +49542,17 @@ var resolveAwsSdkSigV4Config = /* @__PURE__ */ __name((config) => { return new SignerCtor(params); }, "signer"); } - const resolvedConfig = Object.assign(config, { + return { + ...config, systemClockOffset, signingEscapePath, + credentials: isUserSupplied ? async (options) => boundCredentialsProvider(options).then( + (creds) => (0, import_client.setCredentialFeature)(creds, "CREDENTIALS_CODE", "e") + ) : boundCredentialsProvider, signer - }); - return resolvedConfig; + }; }, "resolveAwsSdkSigV4Config"); var resolveAWSSDKSigV4Config = resolveAwsSdkSigV4Config; -function normalizeCredentialProvider(config, { - credentials, - credentialDefaultProvider -}) { - let credentialsProvider; - if (credentials) { - if (!credentials?.memoized) { - credentialsProvider = (0, import_core2.memoizeIdentityProvider)(credentials, import_core2.isIdentityExpired, import_core2.doesIdentityRequireRefresh); - } else { - credentialsProvider = credentials; - } - } else { - if (credentialDefaultProvider) { - credentialsProvider = (0, import_core2.normalizeProvider)( - credentialDefaultProvider( - Object.assign({}, config, { - parentClientConfig: config - }) - ) - ); - } else { - credentialsProvider = /* @__PURE__ */ __name(async () => { - throw new Error( - "@aws-sdk/core::resolveAwsSdkSigV4Config - `credentials` not provided and no credentialDefaultProvider was configured." - ); - }, "credentialsProvider"); - } - } - credentialsProvider.memoized = true; - return credentialsProvider; -} -__name(normalizeCredentialProvider, "normalizeCredentialProvider"); -function bindCallerConfig(config, credentialsProvider) { - if (credentialsProvider.configBound) { - return credentialsProvider; - } - const fn = /* @__PURE__ */ __name(async (options) => credentialsProvider({ ...options, callerClientConfig: config }), "fn"); - fn.memoized = credentialsProvider.memoized; - fn.configBound = true; - return fn; -} -__name(bindCallerConfig, "bindCallerConfig"); // Annotate the CommonJS export names for ESM import in node: 0 && (0); @@ -51241,89 +50662,6 @@ var getHostHeaderPlugin = /* @__PURE__ */ __name((options) => ({ -/***/ }), - -/***/ 34089: -/***/ ((module) => { - -"use strict"; - -var __defProp = Object.defineProperty; -var __getOwnPropDesc = Object.getOwnPropertyDescriptor; -var __getOwnPropNames = Object.getOwnPropertyNames; -var __hasOwnProp = Object.prototype.hasOwnProperty; -var __name = (target, value) => __defProp(target, "name", { value, configurable: true }); -var __export = (target, all) => { - for (var name in all) - __defProp(target, name, { get: all[name], enumerable: true }); -}; -var __copyProps = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames(from)) - if (!__hasOwnProp.call(to, key) && key !== except) - __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); - } - return to; -}; -var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); - -// src/index.ts -var index_exports = {}; -__export(index_exports, { - getLoggerPlugin: () => getLoggerPlugin, - loggerMiddleware: () => loggerMiddleware, - loggerMiddlewareOptions: () => loggerMiddlewareOptions -}); -module.exports = __toCommonJS(index_exports); - -// src/loggerMiddleware.ts -var loggerMiddleware = /* @__PURE__ */ __name(() => (next, context) => async (args) => { - try { - const response = await next(args); - const { clientName, commandName, logger, dynamoDbDocumentClientOptions = {} } = context; - const { overrideInputFilterSensitiveLog, overrideOutputFilterSensitiveLog } = dynamoDbDocumentClientOptions; - const inputFilterSensitiveLog = overrideInputFilterSensitiveLog ?? context.inputFilterSensitiveLog; - const outputFilterSensitiveLog = overrideOutputFilterSensitiveLog ?? context.outputFilterSensitiveLog; - const { $metadata, ...outputWithoutMetadata } = response.output; - logger?.info?.({ - clientName, - commandName, - input: inputFilterSensitiveLog(args.input), - output: outputFilterSensitiveLog(outputWithoutMetadata), - metadata: $metadata - }); - return response; - } catch (error) { - const { clientName, commandName, logger, dynamoDbDocumentClientOptions = {} } = context; - const { overrideInputFilterSensitiveLog } = dynamoDbDocumentClientOptions; - const inputFilterSensitiveLog = overrideInputFilterSensitiveLog ?? context.inputFilterSensitiveLog; - logger?.error?.({ - clientName, - commandName, - input: inputFilterSensitiveLog(args.input), - error, - metadata: error.$metadata - }); - throw error; - } -}, "loggerMiddleware"); -var loggerMiddlewareOptions = { - name: "loggerMiddleware", - tags: ["LOGGER"], - step: "initialize", - override: true -}; -var getLoggerPlugin = /* @__PURE__ */ __name((options) => ({ - applyToStack: /* @__PURE__ */ __name((clientStack) => { - clientStack.add(loggerMiddleware(), loggerMiddlewareOptions); - }, "applyToStack") -}), "getLoggerPlugin"); -// Annotate the CommonJS export names for ESM import in node: - -0 && (0); - - - /***/ }), /***/ 75693: @@ -51449,9 +50787,9 @@ function isValidUserAgentAppId(appId) { __name(isValidUserAgentAppId, "isValidUserAgentAppId"); function resolveUserAgentConfig(input) { const normalizedAppIdProvider = (0, import_core.normalizeProvider)(input.userAgentAppId ?? DEFAULT_UA_APP_ID); - const { customUserAgent } = input; - return Object.assign(input, { - customUserAgent: typeof customUserAgent === "string" ? [[customUserAgent]] : customUserAgent, + return { + ...input, + customUserAgent: typeof input.customUserAgent === "string" ? [[input.customUserAgent]] : input.customUserAgent, userAgentAppId: /* @__PURE__ */ __name(async () => { const appId = await normalizedAppIdProvider(); if (!isValidUserAgentAppId(appId)) { @@ -51464,7 +50802,7 @@ function resolveUserAgentConfig(input) { } return appId; }, "userAgentAppId") - }); + }; } __name(resolveUserAgentConfig, "resolveUserAgentConfig"); @@ -51686,9 +51024,9 @@ const defaultSSOOIDCHttpAuthSchemeProvider = (authParameters) => { exports.defaultSSOOIDCHttpAuthSchemeProvider = defaultSSOOIDCHttpAuthSchemeProvider; const resolveHttpAuthSchemeConfig = (config) => { const config_0 = (0, core_1.resolveAwsSdkSigV4Config)(config); - return Object.assign(config_0, { - authSchemePreference: (0, util_middleware_1.normalizeProvider)(config.authSchemePreference ?? []), - }); + return { + ...config_0, + }; }; exports.resolveHttpAuthSchemeConfig = resolveHttpAuthSchemeConfig; @@ -51787,7 +51125,7 @@ module.exports = __toCommonJS(index_exports); // src/submodules/sso-oidc/SSOOIDCClient.ts var import_middleware_host_header = __nccwpck_require__(18751); -var import_middleware_logger = __nccwpck_require__(34089); +var import_middleware_logger = __nccwpck_require__(85242); var import_middleware_recursion_detection = __nccwpck_require__(75693); var import_middleware_user_agent = __nccwpck_require__(26816); var import_config_resolver = __nccwpck_require__(39316); @@ -51800,11 +51138,12 @@ var import_httpAuthSchemeProvider = __nccwpck_require__(82013); // src/submodules/sso-oidc/endpoint/EndpointParameters.ts var resolveClientEndpointParameters = /* @__PURE__ */ __name((options) => { - return Object.assign(options, { + return { + ...options, useDualstackEndpoint: options.useDualstackEndpoint ?? false, useFipsEndpoint: options.useFipsEndpoint ?? false, defaultSigningName: "sso-oauth" - }); + }; }, "resolveClientEndpointParameters"); var commonParams = { UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, @@ -51817,7 +51156,7 @@ var commonParams = { var import_runtimeConfig = __nccwpck_require__(88676); // src/submodules/sso-oidc/runtimeExtensions.ts -var import_region_config_resolver = __nccwpck_require__(97838); +var import_region_config_resolver = __nccwpck_require__(36463); var import_protocol_http = __nccwpck_require__(47725); var import_smithy_client = __nccwpck_require__(61411); @@ -51861,21 +51200,22 @@ var resolveHttpAuthRuntimeConfig = /* @__PURE__ */ __name((config) => { }, "resolveHttpAuthRuntimeConfig"); // src/submodules/sso-oidc/runtimeExtensions.ts +var asPartial = /* @__PURE__ */ __name((t) => t, "asPartial"); var resolveRuntimeExtensions = /* @__PURE__ */ __name((runtimeConfig, extensions) => { - const extensionConfiguration = Object.assign( - (0, import_region_config_resolver.getAwsRegionExtensionConfiguration)(runtimeConfig), - (0, import_smithy_client.getDefaultExtensionConfiguration)(runtimeConfig), - (0, import_protocol_http.getHttpHandlerExtensionConfiguration)(runtimeConfig), - getHttpAuthExtensionConfiguration(runtimeConfig) - ); + const extensionConfiguration = { + ...asPartial((0, import_region_config_resolver.getAwsRegionExtensionConfiguration)(runtimeConfig)), + ...asPartial((0, import_smithy_client.getDefaultExtensionConfiguration)(runtimeConfig)), + ...asPartial((0, import_protocol_http.getHttpHandlerExtensionConfiguration)(runtimeConfig)), + ...asPartial(getHttpAuthExtensionConfiguration(runtimeConfig)) + }; extensions.forEach((extension) => extension.configure(extensionConfiguration)); - return Object.assign( - runtimeConfig, - (0, import_region_config_resolver.resolveAwsRegionExtensionConfiguration)(extensionConfiguration), - (0, import_smithy_client.resolveDefaultRuntimeConfig)(extensionConfiguration), - (0, import_protocol_http.resolveHttpHandlerRuntimeConfig)(extensionConfiguration), - resolveHttpAuthRuntimeConfig(extensionConfiguration) - ); + return { + ...runtimeConfig, + ...(0, import_region_config_resolver.resolveAwsRegionExtensionConfiguration)(extensionConfiguration), + ...(0, import_smithy_client.resolveDefaultRuntimeConfig)(extensionConfiguration), + ...(0, import_protocol_http.resolveHttpHandlerRuntimeConfig)(extensionConfiguration), + ...resolveHttpAuthRuntimeConfig(extensionConfiguration) + }; }, "resolveRuntimeExtensions"); // src/submodules/sso-oidc/SSOOIDCClient.ts @@ -51889,8 +51229,6 @@ var SSOOIDCClient = class extends import_smithy_client2.Client { config; constructor(...[configuration]) { const _config_0 = (0, import_runtimeConfig.getRuntimeConfig)(configuration || {}); - super(_config_0); - this.initConfig = _config_0; const _config_1 = resolveClientEndpointParameters(_config_0); const _config_2 = (0, import_middleware_user_agent.resolveUserAgentConfig)(_config_1); const _config_3 = (0, import_middleware_retry.resolveRetryConfig)(_config_2); @@ -51899,6 +51237,7 @@ var SSOOIDCClient = class extends import_smithy_client2.Client { const _config_6 = (0, import_middleware_endpoint.resolveEndpointConfig)(_config_5); const _config_7 = (0, import_httpAuthSchemeProvider.resolveHttpAuthSchemeConfig)(_config_6); const _config_8 = resolveRuntimeExtensions(_config_7, configuration?.extensions || []); + super(_config_8); this.config = _config_8; this.middlewareStack.use((0, import_middleware_user_agent.getUserAgentPlugin)(this.config)); this.middlewareStack.use((0, import_middleware_retry.getRetryPlugin)(this.config)); @@ -52710,7 +52049,7 @@ exports.getRuntimeConfig = getRuntimeConfig; Object.defineProperty(exports, "__esModule", ({ value: true })); exports.STSClient = exports.__Client = void 0; const middleware_host_header_1 = __nccwpck_require__(18751); -const middleware_logger_1 = __nccwpck_require__(34089); +const middleware_logger_1 = __nccwpck_require__(85242); const middleware_recursion_detection_1 = __nccwpck_require__(75693); const middleware_user_agent_1 = __nccwpck_require__(26816); const config_resolver_1 = __nccwpck_require__(39316); @@ -52728,8 +52067,6 @@ class STSClient extends smithy_client_1.Client { config; constructor(...[configuration]) { const _config_0 = (0, runtimeConfig_1.getRuntimeConfig)(configuration || {}); - super(_config_0); - this.initConfig = _config_0; const _config_1 = (0, EndpointParameters_1.resolveClientEndpointParameters)(_config_0); const _config_2 = (0, middleware_user_agent_1.resolveUserAgentConfig)(_config_1); const _config_3 = (0, middleware_retry_1.resolveRetryConfig)(_config_2); @@ -52738,6 +52075,7 @@ class STSClient extends smithy_client_1.Client { const _config_6 = (0, middleware_endpoint_1.resolveEndpointConfig)(_config_5); const _config_7 = (0, httpAuthSchemeProvider_1.resolveHttpAuthSchemeConfig)(_config_6); const _config_8 = (0, runtimeExtensions_1.resolveRuntimeExtensions)(_config_7, configuration?.extensions || []); + super(_config_8); this.config = _config_8; this.middlewareStack.use((0, middleware_user_agent_1.getUserAgentPlugin)(this.config)); this.middlewareStack.use((0, middleware_retry_1.getRetryPlugin)(this.config)); @@ -52867,16 +52205,17 @@ const defaultSTSHttpAuthSchemeProvider = (authParameters) => { return options; }; exports.defaultSTSHttpAuthSchemeProvider = defaultSTSHttpAuthSchemeProvider; -const resolveStsAuthConfig = (input) => Object.assign(input, { +const resolveStsAuthConfig = (input) => ({ + ...input, stsClientCtor: STSClient_1.STSClient, }); exports.resolveStsAuthConfig = resolveStsAuthConfig; const resolveHttpAuthSchemeConfig = (config) => { const config_0 = (0, exports.resolveStsAuthConfig)(config); const config_1 = (0, core_1.resolveAwsSdkSigV4Config)(config_0); - return Object.assign(config_1, { - authSchemePreference: (0, util_middleware_1.normalizeProvider)(config.authSchemePreference ?? []), - }); + return { + ...config_1, + }; }; exports.resolveHttpAuthSchemeConfig = resolveHttpAuthSchemeConfig; @@ -52891,12 +52230,13 @@ exports.resolveHttpAuthSchemeConfig = resolveHttpAuthSchemeConfig; Object.defineProperty(exports, "__esModule", ({ value: true })); exports.commonParams = exports.resolveClientEndpointParameters = void 0; const resolveClientEndpointParameters = (options) => { - return Object.assign(options, { + return { + ...options, useDualstackEndpoint: options.useDualstackEndpoint ?? false, useFipsEndpoint: options.useFipsEndpoint ?? false, useGlobalEndpoint: options.useGlobalEndpoint ?? false, defaultSigningName: "sts", - }); + }; }; exports.resolveClientEndpointParameters = resolveClientEndpointParameters; exports.commonParams = { @@ -54016,123 +53356,30 @@ exports.getRuntimeConfig = getRuntimeConfig; Object.defineProperty(exports, "__esModule", ({ value: true })); exports.resolveRuntimeExtensions = void 0; -const region_config_resolver_1 = __nccwpck_require__(97838); +const region_config_resolver_1 = __nccwpck_require__(36463); const protocol_http_1 = __nccwpck_require__(47725); const smithy_client_1 = __nccwpck_require__(61411); const httpAuthExtensionConfiguration_1 = __nccwpck_require__(81219); +const asPartial = (t) => t; const resolveRuntimeExtensions = (runtimeConfig, extensions) => { - const extensionConfiguration = Object.assign((0, region_config_resolver_1.getAwsRegionExtensionConfiguration)(runtimeConfig), (0, smithy_client_1.getDefaultExtensionConfiguration)(runtimeConfig), (0, protocol_http_1.getHttpHandlerExtensionConfiguration)(runtimeConfig), (0, httpAuthExtensionConfiguration_1.getHttpAuthExtensionConfiguration)(runtimeConfig)); + const extensionConfiguration = { + ...asPartial((0, region_config_resolver_1.getAwsRegionExtensionConfiguration)(runtimeConfig)), + ...asPartial((0, smithy_client_1.getDefaultExtensionConfiguration)(runtimeConfig)), + ...asPartial((0, protocol_http_1.getHttpHandlerExtensionConfiguration)(runtimeConfig)), + ...asPartial((0, httpAuthExtensionConfiguration_1.getHttpAuthExtensionConfiguration)(runtimeConfig)), + }; extensions.forEach((extension) => extension.configure(extensionConfiguration)); - return Object.assign(runtimeConfig, (0, region_config_resolver_1.resolveAwsRegionExtensionConfiguration)(extensionConfiguration), (0, smithy_client_1.resolveDefaultRuntimeConfig)(extensionConfiguration), (0, protocol_http_1.resolveHttpHandlerRuntimeConfig)(extensionConfiguration), (0, httpAuthExtensionConfiguration_1.resolveHttpAuthRuntimeConfig)(extensionConfiguration)); + return { + ...runtimeConfig, + ...(0, region_config_resolver_1.resolveAwsRegionExtensionConfiguration)(extensionConfiguration), + ...(0, smithy_client_1.resolveDefaultRuntimeConfig)(extensionConfiguration), + ...(0, protocol_http_1.resolveHttpHandlerRuntimeConfig)(extensionConfiguration), + ...(0, httpAuthExtensionConfiguration_1.resolveHttpAuthRuntimeConfig)(extensionConfiguration), + }; }; exports.resolveRuntimeExtensions = resolveRuntimeExtensions; -/***/ }), - -/***/ 97838: -/***/ ((module) => { - -"use strict"; - -var __defProp = Object.defineProperty; -var __getOwnPropDesc = Object.getOwnPropertyDescriptor; -var __getOwnPropNames = Object.getOwnPropertyNames; -var __hasOwnProp = Object.prototype.hasOwnProperty; -var __name = (target, value) => __defProp(target, "name", { value, configurable: true }); -var __export = (target, all) => { - for (var name in all) - __defProp(target, name, { get: all[name], enumerable: true }); -}; -var __copyProps = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames(from)) - if (!__hasOwnProp.call(to, key) && key !== except) - __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); - } - return to; -}; -var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); - -// src/index.ts -var index_exports = {}; -__export(index_exports, { - NODE_REGION_CONFIG_FILE_OPTIONS: () => NODE_REGION_CONFIG_FILE_OPTIONS, - NODE_REGION_CONFIG_OPTIONS: () => NODE_REGION_CONFIG_OPTIONS, - REGION_ENV_NAME: () => REGION_ENV_NAME, - REGION_INI_NAME: () => REGION_INI_NAME, - getAwsRegionExtensionConfiguration: () => getAwsRegionExtensionConfiguration, - resolveAwsRegionExtensionConfiguration: () => resolveAwsRegionExtensionConfiguration, - resolveRegionConfig: () => resolveRegionConfig -}); -module.exports = __toCommonJS(index_exports); - -// src/extensions/index.ts -var getAwsRegionExtensionConfiguration = /* @__PURE__ */ __name((runtimeConfig) => { - return { - setRegion(region) { - runtimeConfig.region = region; - }, - region() { - return runtimeConfig.region; - } - }; -}, "getAwsRegionExtensionConfiguration"); -var resolveAwsRegionExtensionConfiguration = /* @__PURE__ */ __name((awsRegionExtensionConfiguration) => { - return { - region: awsRegionExtensionConfiguration.region() - }; -}, "resolveAwsRegionExtensionConfiguration"); - -// src/regionConfig/config.ts -var REGION_ENV_NAME = "AWS_REGION"; -var REGION_INI_NAME = "region"; -var NODE_REGION_CONFIG_OPTIONS = { - environmentVariableSelector: /* @__PURE__ */ __name((env) => env[REGION_ENV_NAME], "environmentVariableSelector"), - configFileSelector: /* @__PURE__ */ __name((profile) => profile[REGION_INI_NAME], "configFileSelector"), - default: /* @__PURE__ */ __name(() => { - throw new Error("Region is missing"); - }, "default") -}; -var NODE_REGION_CONFIG_FILE_OPTIONS = { - preferredFile: "credentials" -}; - -// src/regionConfig/isFipsRegion.ts -var isFipsRegion = /* @__PURE__ */ __name((region) => typeof region === "string" && (region.startsWith("fips-") || region.endsWith("-fips")), "isFipsRegion"); - -// src/regionConfig/getRealRegion.ts -var getRealRegion = /* @__PURE__ */ __name((region) => isFipsRegion(region) ? ["fips-aws-global", "aws-fips"].includes(region) ? "us-east-1" : region.replace(/fips-(dkr-|prod-)?|-fips/, "") : region, "getRealRegion"); - -// src/regionConfig/resolveRegionConfig.ts -var resolveRegionConfig = /* @__PURE__ */ __name((input) => { - const { region, useFipsEndpoint } = input; - if (!region) { - throw new Error("Region is missing"); - } - return Object.assign(input, { - region: /* @__PURE__ */ __name(async () => { - if (typeof region === "string") { - return getRealRegion(region); - } - const providedRegion = await region(); - return getRealRegion(providedRegion); - }, "region"), - useFipsEndpoint: /* @__PURE__ */ __name(async () => { - const providedRegion = typeof region === "string" ? region : await region(); - if (isFipsRegion(providedRegion)) { - return true; - } - return typeof useFipsEndpoint !== "function" ? Promise.resolve(!!useFipsEndpoint) : useFipsEndpoint(); - }, "useFipsEndpoint") - }); -}, "resolveRegionConfig"); -// Annotate the CommonJS export names for ESM import in node: - -0 && (0); - - - /***/ }), /***/ 20302: @@ -54381,8 +53628,8 @@ var __copyProps = (to, from, except, desc) => { var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); // src/index.ts -var index_exports = {}; -__export(index_exports, { +var src_exports = {}; +__export(src_exports, { ConditionObject: () => import_util_endpoints.ConditionObject, DeprecatedObject: () => import_util_endpoints.DeprecatedObject, EndpointError: () => import_util_endpoints.EndpointError, @@ -54412,7 +53659,7 @@ __export(index_exports, { setPartitionInfo: () => setPartitionInfo, useDefaultPartitionInfo: () => useDefaultPartitionInfo }); -module.exports = __toCommonJS(index_exports); +module.exports = __toCommonJS(src_exports); // src/aws.ts @@ -54453,9 +53700,11 @@ var ARN_DELIMITER = ":"; var RESOURCE_DELIMITER = "/"; var parseArn = /* @__PURE__ */ __name((value) => { const segments = value.split(ARN_DELIMITER); - if (segments.length < 6) return null; + if (segments.length < 6) + return null; const [arn, partition2, service, region, accountId, ...resourcePath] = segments; - if (arn !== "arn" || partition2 === "" || service === "" || resourcePath.join(ARN_DELIMITER) === "") return null; + if (arn !== "arn" || partition2 === "" || service === "" || resourcePath.join(ARN_DELIMITER) === "") + return null; const resourceId = resourcePath.map((resource) => resource.split(RESOURCE_DELIMITER)).flat(); return { partition: partition2, @@ -54677,9 +53926,6 @@ var partitions_default = { }, regionRegex: "^eu\\-isoe\\-\\w+\\-\\d+$", regions: { - "aws-iso-e-global": { - description: "AWS ISOE (Europe) global region" - }, "eu-isoe-west-1": { description: "EU ISOE West" } @@ -54706,22 +53952,6 @@ var partitions_default = { description: "US ISOF SOUTH" } } - }, { - id: "aws-eusc", - outputs: { - dnsSuffix: "amazonaws.eu", - dualStackDnsSuffix: "amazonaws.eu", - implicitGlobalRegion: "eusc-de-east-1", - name: "aws-eusc", - supportsDualStack: false, - supportsFIPS: true - }, - regionRegex: "^eusc\\-(de)\\-\\w+\\-\\d+$", - regions: { - "eusc-de-east-1": { - description: "EU (Germany)" - } - } }], version: "1.1" }; @@ -54964,30 +54194,6 @@ var getSmithyContext = /* @__PURE__ */ __name((context) => context[import_types. // src/middleware-http-auth-scheme/httpAuthSchemeMiddleware.ts var import_util_middleware = __nccwpck_require__(73433); - -// src/middleware-http-auth-scheme/resolveAuthOptions.ts -var resolveAuthOptions = /* @__PURE__ */ __name((candidateAuthOptions, authSchemePreference) => { - if (!authSchemePreference || authSchemePreference.length === 0) { - return candidateAuthOptions; - } - const preferredAuthOptions = []; - for (const preferredSchemeName of authSchemePreference) { - for (const candidateAuthOption of candidateAuthOptions) { - const candidateAuthSchemeName = candidateAuthOption.schemeId.split("#")[1]; - if (candidateAuthSchemeName === preferredSchemeName) { - preferredAuthOptions.push(candidateAuthOption); - } - } - } - for (const candidateAuthOption of candidateAuthOptions) { - if (!preferredAuthOptions.find(({ schemeId }) => schemeId === candidateAuthOption.schemeId)) { - preferredAuthOptions.push(candidateAuthOption); - } - } - return preferredAuthOptions; -}, "resolveAuthOptions"); - -// src/middleware-http-auth-scheme/httpAuthSchemeMiddleware.ts function convertHttpAuthSchemesToMap(httpAuthSchemes) { const map = /* @__PURE__ */ new Map(); for (const scheme of httpAuthSchemes) { @@ -55000,12 +54206,10 @@ var httpAuthSchemeMiddleware = /* @__PURE__ */ __name((config, mwOptions) => (ne const options = config.httpAuthSchemeProvider( await mwOptions.httpAuthSchemeParametersProvider(config, context, args.input) ); - const authSchemePreference = config.authSchemePreference ? await config.authSchemePreference() : []; - const resolvedOptions = resolveAuthOptions(options, authSchemePreference); const authSchemes = convertHttpAuthSchemesToMap(config.httpAuthSchemes); const smithyContext = (0, import_util_middleware.getSmithyContext)(context); const failureReasons = []; - for (const option of resolvedOptions) { + for (const option of options) { const scheme = authSchemes.get(option.schemeId); if (!scheme) { failureReasons.push(`HttpAuthScheme \`${option.schemeId}\` was not enabled for this service.`); @@ -73968,13 +73172,14 @@ var NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS = { // src/endpointsConfig/resolveCustomEndpointsConfig.ts var import_util_middleware = __nccwpck_require__(42634); var resolveCustomEndpointsConfig = /* @__PURE__ */ __name((input) => { - const { tls, endpoint, urlParser, useDualstackEndpoint } = input; - return Object.assign(input, { - tls: tls ?? true, + const { endpoint, urlParser } = input; + return { + ...input, + tls: input.tls ?? true, endpoint: (0, import_util_middleware.normalizeProvider)(typeof endpoint === "string" ? urlParser(endpoint) : endpoint), isCustomEndpoint: true, - useDualstackEndpoint: (0, import_util_middleware.normalizeProvider)(useDualstackEndpoint ?? false) - }); + useDualstackEndpoint: (0, import_util_middleware.normalizeProvider)(input.useDualstackEndpoint ?? false) + }; }, "resolveCustomEndpointsConfig"); // src/endpointsConfig/resolveEndpointsConfig.ts @@ -74000,13 +73205,14 @@ var getEndpointFromRegion = /* @__PURE__ */ __name(async (input) => { // src/endpointsConfig/resolveEndpointsConfig.ts var resolveEndpointsConfig = /* @__PURE__ */ __name((input) => { const useDualstackEndpoint = (0, import_util_middleware.normalizeProvider)(input.useDualstackEndpoint ?? false); - const { endpoint, useFipsEndpoint, urlParser, tls } = input; - return Object.assign(input, { - tls: tls ?? true, + const { endpoint, useFipsEndpoint, urlParser } = input; + return { + ...input, + tls: input.tls ?? true, endpoint: endpoint ? (0, import_util_middleware.normalizeProvider)(typeof endpoint === "string" ? urlParser(endpoint) : endpoint) : () => getEndpointFromRegion({ ...input, useDualstackEndpoint, useFipsEndpoint }), isCustomEndpoint: !!endpoint, useDualstackEndpoint - }); + }; }, "resolveEndpointsConfig"); // src/regionConfig/config.ts @@ -74035,7 +73241,8 @@ var resolveRegionConfig = /* @__PURE__ */ __name((input) => { if (!region) { throw new Error("Region is missing"); } - return Object.assign(input, { + return { + ...input, region: async () => { if (typeof region === "string") { return getRealRegion(region); @@ -74050,7 +73257,7 @@ var resolveRegionConfig = /* @__PURE__ */ __name((input) => { } return typeof useFipsEndpoint !== "function" ? Promise.resolve(!!useFipsEndpoint) : useFipsEndpoint(); } - }); + }; }, "resolveRegionConfig"); // src/regionInfo/getHostnameFromVariants.ts @@ -74200,11 +73407,12 @@ var getChecksumConfiguration = /* @__PURE__ */ __name((runtimeConfig) => { }); } return { + _checksumAlgorithms: checksumAlgorithms, addChecksumAlgorithm(algo) { - checksumAlgorithms.push(algo); + this._checksumAlgorithms.push(algo); }, checksumAlgorithms() { - return checksumAlgorithms; + return this._checksumAlgorithms; } }; }, "getChecksumConfiguration"); @@ -74218,10 +73426,14 @@ var resolveChecksumRuntimeConfig = /* @__PURE__ */ __name((clientConfig) => { // src/extensions/defaultClientConfiguration.ts var getDefaultClientConfiguration = /* @__PURE__ */ __name((runtimeConfig) => { - return getChecksumConfiguration(runtimeConfig); + return { + ...getChecksumConfiguration(runtimeConfig) + }; }, "getDefaultClientConfiguration"); var resolveDefaultRuntimeConfig = /* @__PURE__ */ __name((config) => { - return resolveChecksumRuntimeConfig(config); + return { + ...resolveChecksumRuntimeConfig(config) + }; }, "resolveDefaultRuntimeConfig"); // src/http.ts @@ -75464,11 +74676,12 @@ var getChecksumConfiguration = /* @__PURE__ */ __name((runtimeConfig) => { }); } return { + _checksumAlgorithms: checksumAlgorithms, addChecksumAlgorithm(algo) { - checksumAlgorithms.push(algo); + this._checksumAlgorithms.push(algo); }, checksumAlgorithms() { - return checksumAlgorithms; + return this._checksumAlgorithms; } }; }, "getChecksumConfiguration"); @@ -75482,10 +74695,14 @@ var resolveChecksumRuntimeConfig = /* @__PURE__ */ __name((clientConfig) => { // src/extensions/defaultClientConfiguration.ts var getDefaultClientConfiguration = /* @__PURE__ */ __name((runtimeConfig) => { - return getChecksumConfiguration(runtimeConfig); + return { + ...getChecksumConfiguration(runtimeConfig) + }; }, "getDefaultClientConfiguration"); var resolveDefaultRuntimeConfig = /* @__PURE__ */ __name((config) => { - return resolveChecksumRuntimeConfig(config); + return { + ...resolveChecksumRuntimeConfig(config) + }; }, "resolveDefaultRuntimeConfig"); // src/http.ts @@ -76192,18 +75409,19 @@ module.exports = __toCommonJS(src_exports); // src/extensions/httpExtensionConfiguration.ts var getHttpHandlerExtensionConfiguration = /* @__PURE__ */ __name((runtimeConfig) => { + let httpHandler = runtimeConfig.httpHandler; return { setHttpHandler(handler) { - runtimeConfig.httpHandler = handler; + httpHandler = handler; }, httpHandler() { - return runtimeConfig.httpHandler; + return httpHandler; }, updateHttpClientConfig(key, value) { - runtimeConfig.httpHandler?.updateHttpClientConfig(key, value); + httpHandler.updateHttpClientConfig(key, value); }, httpHandlerConfigs() { - return runtimeConfig.httpHandler.httpHandlerConfigs(); + return httpHandler.httpHandlerConfigs(); } }; }, "getHttpHandlerExtensionConfiguration"); @@ -76498,11 +75716,12 @@ var getChecksumConfiguration = /* @__PURE__ */ __name((runtimeConfig) => { }); } return { + _checksumAlgorithms: checksumAlgorithms, addChecksumAlgorithm(algo) { - checksumAlgorithms.push(algo); + this._checksumAlgorithms.push(algo); }, checksumAlgorithms() { - return checksumAlgorithms; + return this._checksumAlgorithms; } }; }, "getChecksumConfiguration"); @@ -76516,10 +75735,14 @@ var resolveChecksumRuntimeConfig = /* @__PURE__ */ __name((clientConfig) => { // src/extensions/defaultClientConfiguration.ts var getDefaultClientConfiguration = /* @__PURE__ */ __name((runtimeConfig) => { - return getChecksumConfiguration(runtimeConfig); + return { + ...getChecksumConfiguration(runtimeConfig) + }; }, "getDefaultClientConfiguration"); var resolveDefaultRuntimeConfig = /* @__PURE__ */ __name((config) => { - return resolveChecksumRuntimeConfig(config); + return { + ...resolveChecksumRuntimeConfig(config) + }; }, "resolveDefaultRuntimeConfig"); // src/http.ts @@ -76803,21 +76026,22 @@ var NODE_MAX_ATTEMPT_CONFIG_OPTIONS = { default: import_util_retry.DEFAULT_MAX_ATTEMPTS }; var resolveRetryConfig = /* @__PURE__ */ __name((input) => { - const { retryStrategy, retryMode: _retryMode, maxAttempts: _maxAttempts } = input; - const maxAttempts = (0, import_util_middleware.normalizeProvider)(_maxAttempts ?? import_util_retry.DEFAULT_MAX_ATTEMPTS); - return Object.assign(input, { + const { retryStrategy } = input; + const maxAttempts = (0, import_util_middleware.normalizeProvider)(input.maxAttempts ?? import_util_retry.DEFAULT_MAX_ATTEMPTS); + return { + ...input, maxAttempts, retryStrategy: async () => { if (retryStrategy) { return retryStrategy; } - const retryMode = await (0, import_util_middleware.normalizeProvider)(_retryMode)(); + const retryMode = await (0, import_util_middleware.normalizeProvider)(input.retryMode)(); if (retryMode === import_util_retry.RETRY_MODES.ADAPTIVE) { return new import_util_retry.AdaptiveRetryStrategy(maxAttempts); } return new import_util_retry.StandardRetryStrategy(maxAttempts); } - }); + }; }, "resolveRetryConfig"); var ENV_RETRY_MODE = "AWS_RETRY_MODE"; var CONFIG_RETRY_MODE = "retry_mode"; @@ -77021,18 +76245,19 @@ module.exports = __toCommonJS(src_exports); // src/extensions/httpExtensionConfiguration.ts var getHttpHandlerExtensionConfiguration = /* @__PURE__ */ __name((runtimeConfig) => { + let httpHandler = runtimeConfig.httpHandler; return { setHttpHandler(handler) { - runtimeConfig.httpHandler = handler; + httpHandler = handler; }, httpHandler() { - return runtimeConfig.httpHandler; + return httpHandler; }, updateHttpClientConfig(key, value) { - runtimeConfig.httpHandler?.updateHttpClientConfig(key, value); + httpHandler.updateHttpClientConfig(key, value); }, httpHandlerConfigs() { - return runtimeConfig.httpHandler.httpHandlerConfigs(); + return httpHandler.httpHandlerConfigs(); } }; }, "getHttpHandlerExtensionConfiguration"); @@ -77327,11 +76552,12 @@ var getChecksumConfiguration = /* @__PURE__ */ __name((runtimeConfig) => { }); } return { + _checksumAlgorithms: checksumAlgorithms, addChecksumAlgorithm(algo) { - checksumAlgorithms.push(algo); + this._checksumAlgorithms.push(algo); }, checksumAlgorithms() { - return checksumAlgorithms; + return this._checksumAlgorithms; } }; }, "getChecksumConfiguration"); @@ -77345,10 +76571,14 @@ var resolveChecksumRuntimeConfig = /* @__PURE__ */ __name((clientConfig) => { // src/extensions/defaultClientConfiguration.ts var getDefaultClientConfiguration = /* @__PURE__ */ __name((runtimeConfig) => { - return getChecksumConfiguration(runtimeConfig); + return { + ...getChecksumConfiguration(runtimeConfig) + }; }, "getDefaultClientConfiguration"); var resolveDefaultRuntimeConfig = /* @__PURE__ */ __name((config) => { - return resolveChecksumRuntimeConfig(config); + return { + ...resolveChecksumRuntimeConfig(config) + }; }, "resolveDefaultRuntimeConfig"); // src/http.ts @@ -78987,51 +78217,23 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru // src/index.ts var src_exports = {}; __export(src_exports, { - ALGORITHM_IDENTIFIER: () => ALGORITHM_IDENTIFIER, - ALGORITHM_IDENTIFIER_V4A: () => ALGORITHM_IDENTIFIER_V4A, - ALGORITHM_QUERY_PARAM: () => ALGORITHM_QUERY_PARAM, - ALWAYS_UNSIGNABLE_HEADERS: () => ALWAYS_UNSIGNABLE_HEADERS, - AMZ_DATE_HEADER: () => AMZ_DATE_HEADER, - AMZ_DATE_QUERY_PARAM: () => AMZ_DATE_QUERY_PARAM, - AUTH_HEADER: () => AUTH_HEADER, - CREDENTIAL_QUERY_PARAM: () => CREDENTIAL_QUERY_PARAM, - DATE_HEADER: () => DATE_HEADER, - EVENT_ALGORITHM_IDENTIFIER: () => EVENT_ALGORITHM_IDENTIFIER, - EXPIRES_QUERY_PARAM: () => EXPIRES_QUERY_PARAM, - GENERATED_HEADERS: () => GENERATED_HEADERS, - HOST_HEADER: () => HOST_HEADER, - KEY_TYPE_IDENTIFIER: () => KEY_TYPE_IDENTIFIER, - MAX_CACHE_SIZE: () => MAX_CACHE_SIZE, - MAX_PRESIGNED_TTL: () => MAX_PRESIGNED_TTL, - PROXY_HEADER_PATTERN: () => PROXY_HEADER_PATTERN, - REGION_SET_PARAM: () => REGION_SET_PARAM, - SEC_HEADER_PATTERN: () => SEC_HEADER_PATTERN, - SHA256_HEADER: () => SHA256_HEADER, - SIGNATURE_HEADER: () => SIGNATURE_HEADER, - SIGNATURE_QUERY_PARAM: () => SIGNATURE_QUERY_PARAM, - SIGNED_HEADERS_QUERY_PARAM: () => SIGNED_HEADERS_QUERY_PARAM, SignatureV4: () => SignatureV4, - SignatureV4Base: () => SignatureV4Base, - TOKEN_HEADER: () => TOKEN_HEADER, - TOKEN_QUERY_PARAM: () => TOKEN_QUERY_PARAM, - UNSIGNABLE_PATTERNS: () => UNSIGNABLE_PATTERNS, - UNSIGNED_PAYLOAD: () => UNSIGNED_PAYLOAD, clearCredentialCache: () => clearCredentialCache, createScope: () => createScope, getCanonicalHeaders: () => getCanonicalHeaders, getCanonicalQuery: () => getCanonicalQuery, getPayloadHash: () => getPayloadHash, getSigningKey: () => getSigningKey, - hasHeader: () => hasHeader, moveHeadersToQuery: () => moveHeadersToQuery, - prepareRequest: () => prepareRequest, - signatureV4aContainer: () => signatureV4aContainer + prepareRequest: () => prepareRequest }); module.exports = __toCommonJS(src_exports); // src/SignatureV4.ts -var import_util_utf85 = __nccwpck_require__(67529); +var import_util_middleware = __nccwpck_require__(83732); + +var import_util_utf84 = __nccwpck_require__(67529); // src/constants.ts var ALGORITHM_QUERY_PARAM = "X-Amz-Algorithm"; @@ -79041,7 +78243,6 @@ var SIGNED_HEADERS_QUERY_PARAM = "X-Amz-SignedHeaders"; var EXPIRES_QUERY_PARAM = "X-Amz-Expires"; var SIGNATURE_QUERY_PARAM = "X-Amz-Signature"; var TOKEN_QUERY_PARAM = "X-Amz-Security-Token"; -var REGION_SET_PARAM = "X-Amz-Region-Set"; var AUTH_HEADER = "authorization"; var AMZ_DATE_HEADER = AMZ_DATE_QUERY_PARAM.toLowerCase(); var DATE_HEADER = "date"; @@ -79049,7 +78250,6 @@ var GENERATED_HEADERS = [AUTH_HEADER, AMZ_DATE_HEADER, DATE_HEADER]; var SIGNATURE_HEADER = SIGNATURE_QUERY_PARAM.toLowerCase(); var SHA256_HEADER = "x-amz-content-sha256"; var TOKEN_HEADER = TOKEN_QUERY_PARAM.toLowerCase(); -var HOST_HEADER = "host"; var ALWAYS_UNSIGNABLE_HEADERS = { authorization: true, "cache-control": true, @@ -79069,9 +78269,7 @@ var ALWAYS_UNSIGNABLE_HEADERS = { }; var PROXY_HEADER_PATTERN = /^proxy-/; var SEC_HEADER_PATTERN = /^sec-/; -var UNSIGNABLE_PATTERNS = [/^proxy-/i, /^sec-/i]; var ALGORITHM_IDENTIFIER = "AWS4-HMAC-SHA256"; -var ALGORITHM_IDENTIFIER_V4A = "AWS4-ECDSA-P256-SHA256"; var EVENT_ALGORITHM_IDENTIFIER = "AWS4-HMAC-SHA256-PAYLOAD"; var UNSIGNED_PAYLOAD = "UNSIGNED-PAYLOAD"; var MAX_CACHE_SIZE = 50; @@ -79130,6 +78328,27 @@ var getCanonicalHeaders = /* @__PURE__ */ __name(({ headers }, unsignableHeaders return canonical; }, "getCanonicalHeaders"); +// src/getCanonicalQuery.ts +var import_util_uri_escape = __nccwpck_require__(87938); +var getCanonicalQuery = /* @__PURE__ */ __name(({ query = {} }) => { + const keys = []; + const serialized = {}; + for (const key of Object.keys(query)) { + if (key.toLowerCase() === SIGNATURE_HEADER) { + continue; + } + const encodedKey = (0, import_util_uri_escape.escapeUri)(key); + keys.push(encodedKey); + const value = query[key]; + if (typeof value === "string") { + serialized[encodedKey] = `${encodedKey}=${(0, import_util_uri_escape.escapeUri)(value)}`; + } else if (Array.isArray(value)) { + serialized[encodedKey] = value.slice(0).reduce((encoded, value2) => encoded.concat([`${encodedKey}=${(0, import_util_uri_escape.escapeUri)(value2)}`]), []).sort().join("&"); + } + } + return keys.sort().map((key) => serialized[key]).filter((serialized2) => serialized2).join("&"); +}, "getCanonicalQuery"); + // src/getPayloadHash.ts var import_is_array_buffer = __nccwpck_require__(52706); @@ -79315,33 +78534,6 @@ var prepareRequest = /* @__PURE__ */ __name((request) => { return request; }, "prepareRequest"); -// src/SignatureV4Base.ts - -var import_util_middleware = __nccwpck_require__(83732); - -var import_util_utf84 = __nccwpck_require__(67529); - -// src/getCanonicalQuery.ts -var import_util_uri_escape = __nccwpck_require__(87938); -var getCanonicalQuery = /* @__PURE__ */ __name(({ query = {} }) => { - const keys = []; - const serialized = {}; - for (const key of Object.keys(query)) { - if (key.toLowerCase() === SIGNATURE_HEADER) { - continue; - } - const encodedKey = (0, import_util_uri_escape.escapeUri)(key); - keys.push(encodedKey); - const value = query[key]; - if (typeof value === "string") { - serialized[encodedKey] = `${encodedKey}=${(0, import_util_uri_escape.escapeUri)(value)}`; - } else if (Array.isArray(value)) { - serialized[encodedKey] = value.slice(0).reduce((encoded, value2) => encoded.concat([`${encodedKey}=${(0, import_util_uri_escape.escapeUri)(value2)}`]), []).sort().join("&"); - } - } - return keys.sort().map((key) => serialized[key]).filter((serialized2) => serialized2).join("&"); -}, "getCanonicalQuery"); - // src/utilDate.ts var iso8601 = /* @__PURE__ */ __name((time) => toDate(time).toISOString().replace(/\.\d{3}Z$/, "Z"), "iso8601"); var toDate = /* @__PURE__ */ __name((time) => { @@ -79357,11 +78549,8 @@ var toDate = /* @__PURE__ */ __name((time) => { return time; }, "toDate"); -// src/SignatureV4Base.ts -var SignatureV4Base = class { - static { - __name(this, "SignatureV4Base"); - } +// src/SignatureV4.ts +var SignatureV4 = class { constructor({ applyChecksum, credentials, @@ -79370,6 +78559,7 @@ var SignatureV4Base = class { sha256, uriEscapePath = true }) { + this.headerFormatter = new HeaderFormatter(); this.service = service; this.sha256 = sha256; this.uriEscapePath = uriEscapePath; @@ -79377,84 +78567,6 @@ var SignatureV4Base = class { this.regionProvider = (0, import_util_middleware.normalizeProvider)(region); this.credentialProvider = (0, import_util_middleware.normalizeProvider)(credentials); } - createCanonicalRequest(request, canonicalHeaders, payloadHash) { - const sortedHeaders = Object.keys(canonicalHeaders).sort(); - return `${request.method} -${this.getCanonicalPath(request)} -${getCanonicalQuery(request)} -${sortedHeaders.map((name) => `${name}:${canonicalHeaders[name]}`).join("\n")} - -${sortedHeaders.join(";")} -${payloadHash}`; - } - async createStringToSign(longDate, credentialScope, canonicalRequest, algorithmIdentifier) { - const hash = new this.sha256(); - hash.update((0, import_util_utf84.toUint8Array)(canonicalRequest)); - const hashedRequest = await hash.digest(); - return `${algorithmIdentifier} -${longDate} -${credentialScope} -${(0, import_util_hex_encoding.toHex)(hashedRequest)}`; - } - getCanonicalPath({ path }) { - if (this.uriEscapePath) { - const normalizedPathSegments = []; - for (const pathSegment of path.split("/")) { - if (pathSegment?.length === 0) - continue; - if (pathSegment === ".") - continue; - if (pathSegment === "..") { - normalizedPathSegments.pop(); - } else { - normalizedPathSegments.push(pathSegment); - } - } - const normalizedPath = `${path?.startsWith("/") ? "/" : ""}${normalizedPathSegments.join("/")}${normalizedPathSegments.length > 0 && path?.endsWith("/") ? "/" : ""}`; - const doubleEncoded = (0, import_util_uri_escape.escapeUri)(normalizedPath); - return doubleEncoded.replace(/%2F/g, "/"); - } - return path; - } - validateResolvedCredentials(credentials) { - if (typeof credentials !== "object" || // @ts-expect-error: Property 'accessKeyId' does not exist on type 'object'.ts(2339) - typeof credentials.accessKeyId !== "string" || // @ts-expect-error: Property 'secretAccessKey' does not exist on type 'object'.ts(2339) - typeof credentials.secretAccessKey !== "string") { - throw new Error("Resolved credential object is not valid"); - } - } - formatDate(now) { - const longDate = iso8601(now).replace(/[\-:]/g, ""); - return { - longDate, - shortDate: longDate.slice(0, 8) - }; - } - getCanonicalHeaderList(headers) { - return Object.keys(headers).sort().join(";"); - } -}; - -// src/SignatureV4.ts -var SignatureV4 = class extends SignatureV4Base { - constructor({ - applyChecksum, - credentials, - region, - service, - sha256, - uriEscapePath = true - }) { - super({ - applyChecksum, - credentials, - region, - service, - sha256, - uriEscapePath - }); - this.headerFormatter = new HeaderFormatter(); - } static { __name(this, "SignatureV4"); } @@ -79472,7 +78584,7 @@ var SignatureV4 = class extends SignatureV4Base { const credentials = await this.credentialProvider(); this.validateResolvedCredentials(credentials); const region = signingRegion ?? await this.regionProvider(); - const { longDate, shortDate } = this.formatDate(signingDate); + const { longDate, shortDate } = formatDate(signingDate); if (expiresIn > MAX_PRESIGNED_TTL) { return Promise.reject( "Signature version 4 presigned URLs must have an expiration date less than one week in the future" @@ -79488,7 +78600,7 @@ var SignatureV4 = class extends SignatureV4Base { request.query[AMZ_DATE_QUERY_PARAM] = longDate; request.query[EXPIRES_QUERY_PARAM] = expiresIn.toString(10); const canonicalHeaders = getCanonicalHeaders(request, unsignableHeaders, signableHeaders); - request.query[SIGNED_HEADERS_QUERY_PARAM] = this.getCanonicalHeaderList(canonicalHeaders); + request.query[SIGNED_HEADERS_QUERY_PARAM] = getCanonicalHeaderList(canonicalHeaders); request.query[SIGNATURE_QUERY_PARAM] = await this.getSignature( longDate, scope, @@ -79510,7 +78622,7 @@ var SignatureV4 = class extends SignatureV4Base { } async signEvent({ headers, payload }, { signingDate = /* @__PURE__ */ new Date(), priorSignature, signingRegion, signingService }) { const region = signingRegion ?? await this.regionProvider(); - const { shortDate, longDate } = this.formatDate(signingDate); + const { shortDate, longDate } = formatDate(signingDate); const scope = createScope(shortDate, region, signingService ?? this.service); const hashedPayload = await getPayloadHash({ headers: {}, body: payload }, this.sha256); const hash = new this.sha256(); @@ -79547,9 +78659,9 @@ var SignatureV4 = class extends SignatureV4Base { const credentials = await this.credentialProvider(); this.validateResolvedCredentials(credentials); const region = signingRegion ?? await this.regionProvider(); - const { shortDate } = this.formatDate(signingDate); + const { shortDate } = formatDate(signingDate); const hash = new this.sha256(await this.getSigningKey(credentials, region, shortDate, signingService)); - hash.update((0, import_util_utf85.toUint8Array)(stringToSign)); + hash.update((0, import_util_utf84.toUint8Array)(stringToSign)); return (0, import_util_hex_encoding.toHex)(await hash.digest()); } async signRequest(requestToSign, { @@ -79563,7 +78675,7 @@ var SignatureV4 = class extends SignatureV4Base { this.validateResolvedCredentials(credentials); const region = signingRegion ?? await this.regionProvider(); const request = prepareRequest(requestToSign); - const { longDate, shortDate } = this.formatDate(signingDate); + const { longDate, shortDate } = formatDate(signingDate); const scope = createScope(shortDate, region, signingService ?? this.service); request.headers[AMZ_DATE_HEADER] = longDate; if (credentials.sessionToken) { @@ -79580,29 +78692,73 @@ var SignatureV4 = class extends SignatureV4Base { this.getSigningKey(credentials, region, shortDate, signingService), this.createCanonicalRequest(request, canonicalHeaders, payloadHash) ); - request.headers[AUTH_HEADER] = `${ALGORITHM_IDENTIFIER} Credential=${credentials.accessKeyId}/${scope}, SignedHeaders=${this.getCanonicalHeaderList(canonicalHeaders)}, Signature=${signature}`; + request.headers[AUTH_HEADER] = `${ALGORITHM_IDENTIFIER} Credential=${credentials.accessKeyId}/${scope}, SignedHeaders=${getCanonicalHeaderList(canonicalHeaders)}, Signature=${signature}`; return request; } + createCanonicalRequest(request, canonicalHeaders, payloadHash) { + const sortedHeaders = Object.keys(canonicalHeaders).sort(); + return `${request.method} +${this.getCanonicalPath(request)} +${getCanonicalQuery(request)} +${sortedHeaders.map((name) => `${name}:${canonicalHeaders[name]}`).join("\n")} + +${sortedHeaders.join(";")} +${payloadHash}`; + } + async createStringToSign(longDate, credentialScope, canonicalRequest) { + const hash = new this.sha256(); + hash.update((0, import_util_utf84.toUint8Array)(canonicalRequest)); + const hashedRequest = await hash.digest(); + return `${ALGORITHM_IDENTIFIER} +${longDate} +${credentialScope} +${(0, import_util_hex_encoding.toHex)(hashedRequest)}`; + } + getCanonicalPath({ path }) { + if (this.uriEscapePath) { + const normalizedPathSegments = []; + for (const pathSegment of path.split("/")) { + if (pathSegment?.length === 0) + continue; + if (pathSegment === ".") + continue; + if (pathSegment === "..") { + normalizedPathSegments.pop(); + } else { + normalizedPathSegments.push(pathSegment); + } + } + const normalizedPath = `${path?.startsWith("/") ? "/" : ""}${normalizedPathSegments.join("/")}${normalizedPathSegments.length > 0 && path?.endsWith("/") ? "/" : ""}`; + const doubleEncoded = (0, import_util_uri_escape.escapeUri)(normalizedPath); + return doubleEncoded.replace(/%2F/g, "/"); + } + return path; + } async getSignature(longDate, credentialScope, keyPromise, canonicalRequest) { - const stringToSign = await this.createStringToSign( - longDate, - credentialScope, - canonicalRequest, - ALGORITHM_IDENTIFIER - ); + const stringToSign = await this.createStringToSign(longDate, credentialScope, canonicalRequest); const hash = new this.sha256(await keyPromise); - hash.update((0, import_util_utf85.toUint8Array)(stringToSign)); + hash.update((0, import_util_utf84.toUint8Array)(stringToSign)); return (0, import_util_hex_encoding.toHex)(await hash.digest()); } getSigningKey(credentials, region, shortDate, service) { return getSigningKey(this.sha256, credentials, shortDate, region, service || this.service); } + validateResolvedCredentials(credentials) { + if (typeof credentials !== "object" || // @ts-expect-error: Property 'accessKeyId' does not exist on type 'object'.ts(2339) + typeof credentials.accessKeyId !== "string" || // @ts-expect-error: Property 'secretAccessKey' does not exist on type 'object'.ts(2339) + typeof credentials.secretAccessKey !== "string") { + throw new Error("Resolved credential object is not valid"); + } + } }; - -// src/signature-v4a-container.ts -var signatureV4aContainer = { - SignatureV4a: null -}; +var formatDate = /* @__PURE__ */ __name((now) => { + const longDate = iso8601(now).replace(/[\-:]/g, ""); + return { + longDate, + shortDate: longDate.slice(0, 8) + }; +}, "formatDate"); +var getCanonicalHeaderList = /* @__PURE__ */ __name((headers) => Object.keys(headers).sort().join(";"), "getCanonicalHeaderList"); // Annotate the CommonJS export names for ESM import in node: 0 && (0); @@ -79686,18 +78842,19 @@ module.exports = __toCommonJS(src_exports); // src/extensions/httpExtensionConfiguration.ts var getHttpHandlerExtensionConfiguration = /* @__PURE__ */ __name((runtimeConfig) => { + let httpHandler = runtimeConfig.httpHandler; return { setHttpHandler(handler) { - runtimeConfig.httpHandler = handler; + httpHandler = handler; }, httpHandler() { - return runtimeConfig.httpHandler; + return httpHandler; }, updateHttpClientConfig(key, value) { - runtimeConfig.httpHandler?.updateHttpClientConfig(key, value); + httpHandler.updateHttpClientConfig(key, value); }, httpHandlerConfigs() { - return runtimeConfig.httpHandler.httpHandlerConfigs(); + return httpHandler.httpHandlerConfigs(); } }; }, "getHttpHandlerExtensionConfiguration"); @@ -79992,11 +79149,12 @@ var getChecksumConfiguration = /* @__PURE__ */ __name((runtimeConfig) => { }); } return { + _checksumAlgorithms: checksumAlgorithms, addChecksumAlgorithm(algo) { - checksumAlgorithms.push(algo); + this._checksumAlgorithms.push(algo); }, checksumAlgorithms() { - return checksumAlgorithms; + return this._checksumAlgorithms; } }; }, "getChecksumConfiguration"); @@ -80010,10 +79168,14 @@ var resolveChecksumRuntimeConfig = /* @__PURE__ */ __name((clientConfig) => { // src/extensions/defaultClientConfiguration.ts var getDefaultClientConfiguration = /* @__PURE__ */ __name((runtimeConfig) => { - return getChecksumConfiguration(runtimeConfig); + return { + ...getChecksumConfiguration(runtimeConfig) + }; }, "getDefaultClientConfiguration"); var resolveDefaultRuntimeConfig = /* @__PURE__ */ __name((config) => { - return resolveChecksumRuntimeConfig(config); + return { + ...resolveChecksumRuntimeConfig(config) + }; }, "resolveDefaultRuntimeConfig"); // src/http.ts @@ -82754,11 +81916,12 @@ var getChecksumConfiguration = /* @__PURE__ */ __name((runtimeConfig) => { }); } return { + _checksumAlgorithms: checksumAlgorithms, addChecksumAlgorithm(algo) { - checksumAlgorithms.push(algo); + this._checksumAlgorithms.push(algo); }, checksumAlgorithms() { - return checksumAlgorithms; + return this._checksumAlgorithms; } }; }, "getChecksumConfiguration"); @@ -82772,10 +81935,14 @@ var resolveChecksumRuntimeConfig = /* @__PURE__ */ __name((clientConfig) => { // src/extensions/defaultClientConfiguration.ts var getDefaultClientConfiguration = /* @__PURE__ */ __name((runtimeConfig) => { - return getChecksumConfiguration(runtimeConfig); + return { + ...getChecksumConfiguration(runtimeConfig) + }; }, "getDefaultClientConfiguration"); var resolveDefaultRuntimeConfig = /* @__PURE__ */ __name((config) => { - return resolveChecksumRuntimeConfig(config); + return { + ...resolveChecksumRuntimeConfig(config) + }; }, "resolveDefaultRuntimeConfig"); // src/http.ts @@ -83438,11 +82605,12 @@ var getChecksumConfiguration = /* @__PURE__ */ __name((runtimeConfig) => { }); } return { + _checksumAlgorithms: checksumAlgorithms, addChecksumAlgorithm(algo) { - checksumAlgorithms.push(algo); + this._checksumAlgorithms.push(algo); }, checksumAlgorithms() { - return checksumAlgorithms; + return this._checksumAlgorithms; } }; }, "getChecksumConfiguration"); @@ -83456,10 +82624,14 @@ var resolveChecksumRuntimeConfig = /* @__PURE__ */ __name((clientConfig) => { // src/extensions/defaultClientConfiguration.ts var getDefaultClientConfiguration = /* @__PURE__ */ __name((runtimeConfig) => { - return getChecksumConfiguration(runtimeConfig); + return { + ...getChecksumConfiguration(runtimeConfig) + }; }, "getDefaultClientConfiguration"); var resolveDefaultRuntimeConfig = /* @__PURE__ */ __name((config) => { - return resolveChecksumRuntimeConfig(config); + return { + ...resolveChecksumRuntimeConfig(config) + }; }, "resolveDefaultRuntimeConfig"); // src/http.ts @@ -92994,7 +92166,7 @@ module.exports = { const { parseSetCookie } = __nccwpck_require__(8915) -const { stringify } = __nccwpck_require__(3834) +const { stringify, getHeadersList } = __nccwpck_require__(3834) const { webidl } = __nccwpck_require__(74222) const { Headers } = __nccwpck_require__(26349) @@ -93070,13 +92242,14 @@ function getSetCookies (headers) { webidl.brandCheck(headers, Headers, { strict: false }) - const cookies = headers.getSetCookie() + const cookies = getHeadersList(headers).cookies if (!cookies) { return [] } - return cookies.map((pair) => parseSetCookie(pair)) + // In older versions of undici, cookies is a list of name:value. + return cookies.map((pair) => parseSetCookie(Array.isArray(pair) ? pair[1] : pair)) } /** @@ -93504,15 +92677,14 @@ module.exports = { /***/ }), /***/ 3834: -/***/ ((module) => { +/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => { "use strict"; -/** - * @param {string} value - * @returns {boolean} - */ +const assert = __nccwpck_require__(42613) +const { kHeadersList } = __nccwpck_require__(36443) + function isCTLExcludingHtab (value) { if (value.length === 0) { return false @@ -93773,13 +92945,31 @@ function stringify (cookie) { return out.join('; ') } +let kHeadersListNode + +function getHeadersList (headers) { + if (headers[kHeadersList]) { + return headers[kHeadersList] + } + + if (!kHeadersListNode) { + kHeadersListNode = Object.getOwnPropertySymbols(headers).find( + (symbol) => symbol.description === 'headers list' + ) + + assert(kHeadersListNode, 'Headers cannot be parsed') + } + + const headersList = headers[kHeadersListNode] + assert(headersList) + + return headersList +} + module.exports = { isCTLExcludingHtab, - validateCookieName, - validateCookiePath, - validateCookieValue, - toIMFDate, - stringify + stringify, + getHeadersList } @@ -97783,7 +96973,6 @@ const { isValidHeaderName, isValidHeaderValue } = __nccwpck_require__(15523) -const util = __nccwpck_require__(39023) const { webidl } = __nccwpck_require__(74222) const assert = __nccwpck_require__(42613) @@ -98337,9 +97526,6 @@ Object.defineProperties(Headers.prototype, { [Symbol.toStringTag]: { value: 'Headers', configurable: true - }, - [util.inspect.custom]: { - enumerable: false } }) @@ -107516,20 +106702,6 @@ class Pool extends PoolBase { ? { ...options.interceptors } : undefined this[kFactory] = factory - - this.on('connectionError', (origin, targets, error) => { - // If a connection error occurs, we remove the client from the pool, - // and emit a connectionError event. They will not be re-used. - // Fixes https://github.com/nodejs/undici/issues/3895 - for (const target of targets) { - // Do not use kRemoveClient here, as it will close the client, - // but the client cannot be closed in this state. - const idx = this[kClients].indexOf(target) - if (idx !== -1) { - this[kClients].splice(idx, 1) - } - } - }) } [kGetDispatcher] () { @@ -112492,8 +111664,8 @@ function composeCollection(CN, ctx, token, props, onError) { tag = kt; } else { - if (kt) { - onError(tagToken, 'BAD_COLLECTION_TYPE', `${kt.tag} used for ${expType} collection, but expects ${kt.collection ?? 'scalar'}`, true); + if (kt?.collection) { + onError(tagToken, 'BAD_COLLECTION_TYPE', `${kt.tag} used for ${expType} collection, but expects ${kt.collection}`, true); } else { onError(tagToken, 'TAG_RESOLVE_FAILED', `Unresolved tag: ${tagName}`, true); @@ -117958,20 +117130,7 @@ class Parser { default: { const bv = this.startBlockValue(map); if (bv) { - if (bv.type === 'block-seq') { - if (!it.explicitKey && - it.sep && - !includesToken(it.sep, 'newline')) { - yield* this.pop({ - type: 'error', - offset: this.offset, - message: 'Unexpected block-seq-ind on same line with key', - source: this.source - }); - return; - } - } - else if (atMapIndent) { + if (atMapIndent && bv.type !== 'block-seq') { map.items.push({ start }); } this.stack.push(bv); @@ -118910,8 +118069,6 @@ const binary = { } }, stringify({ comment, type, value }, ctx, onComment, onChompKeep) { - if (!value) - return ''; const buf = value; // checked earlier by binary.identify() let str; if (typeof node_buffer.Buffer === 'function') { @@ -119635,7 +118792,7 @@ const timestamp = { } return new Date(date); }, - stringify: ({ value }) => value?.toISOString().replace(/(T00:00:00)?\.000Z$/, '') ?? '' + stringify: ({ value }) => value.toISOString().replace(/(T00:00:00)?\.000Z$/, '') }; exports.floatTime = floatTime; @@ -121013,7 +120170,7 @@ exports.visitAsync = visitAsync; /***/ ((module) => { "use strict"; -module.exports = /*#__PURE__*/JSON.parse('{"name":"@aws-sdk/client-codedeploy","description":"AWS SDK for JavaScript Codedeploy Client for Node.js, Browser and React Native","version":"3.798.0","scripts":{"build":"concurrently \'yarn:build:cjs\' \'yarn:build:es\' \'yarn:build:types\'","build:cjs":"node ../../scripts/compilation/inline client-codedeploy","build:es":"tsc -p tsconfig.es.json","build:include:deps":"lerna run --scope $npm_package_name --include-dependencies build","build:types":"tsc -p tsconfig.types.json","build:types:downlevel":"downlevel-dts dist-types dist-types/ts3.4","clean":"rimraf ./dist-* && rimraf *.tsbuildinfo","extract:docs":"api-extractor run --local","generate:client":"node ../../scripts/generate-clients/single-service --solo codedeploy"},"main":"./dist-cjs/index.js","types":"./dist-types/index.d.ts","module":"./dist-es/index.js","sideEffects":false,"dependencies":{"@aws-crypto/sha256-browser":"5.2.0","@aws-crypto/sha256-js":"5.2.0","@aws-sdk/core":"3.798.0","@aws-sdk/credential-provider-node":"3.798.0","@aws-sdk/middleware-host-header":"3.775.0","@aws-sdk/middleware-logger":"3.775.0","@aws-sdk/middleware-recursion-detection":"3.775.0","@aws-sdk/middleware-user-agent":"3.798.0","@aws-sdk/region-config-resolver":"3.775.0","@aws-sdk/types":"3.775.0","@aws-sdk/util-endpoints":"3.787.0","@aws-sdk/util-user-agent-browser":"3.775.0","@aws-sdk/util-user-agent-node":"3.798.0","@smithy/config-resolver":"^4.1.0","@smithy/core":"^3.3.0","@smithy/fetch-http-handler":"^5.0.2","@smithy/hash-node":"^4.0.2","@smithy/invalid-dependency":"^4.0.2","@smithy/middleware-content-length":"^4.0.2","@smithy/middleware-endpoint":"^4.1.1","@smithy/middleware-retry":"^4.1.1","@smithy/middleware-serde":"^4.0.3","@smithy/middleware-stack":"^4.0.2","@smithy/node-config-provider":"^4.0.2","@smithy/node-http-handler":"^4.0.4","@smithy/protocol-http":"^5.1.0","@smithy/smithy-client":"^4.2.1","@smithy/types":"^4.2.0","@smithy/url-parser":"^4.0.2","@smithy/util-base64":"^4.0.0","@smithy/util-body-length-browser":"^4.0.0","@smithy/util-body-length-node":"^4.0.0","@smithy/util-defaults-mode-browser":"^4.0.9","@smithy/util-defaults-mode-node":"^4.0.9","@smithy/util-endpoints":"^3.0.2","@smithy/util-middleware":"^4.0.2","@smithy/util-retry":"^4.0.2","@smithy/util-utf8":"^4.0.0","@smithy/util-waiter":"^4.0.3","tslib":"^2.6.2"},"devDependencies":{"@tsconfig/node18":"18.2.4","@types/node":"^18.19.69","concurrently":"7.0.0","downlevel-dts":"0.10.1","rimraf":"3.0.2","typescript":"~5.2.2"},"engines":{"node":">=18.0.0"},"typesVersions":{"<4.0":{"dist-types/*":["dist-types/ts3.4/*"]}},"files":["dist-*/**"],"author":{"name":"AWS SDK for JavaScript Team","url":"https://aws.amazon.com/javascript/"},"license":"Apache-2.0","browser":{"./dist-es/runtimeConfig":"./dist-es/runtimeConfig.browser"},"react-native":{"./dist-es/runtimeConfig":"./dist-es/runtimeConfig.native"},"homepage":"https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-codedeploy","repository":{"type":"git","url":"https://github.com/aws/aws-sdk-js-v3.git","directory":"clients/client-codedeploy"}}'); +module.exports = /*#__PURE__*/JSON.parse('{"name":"@aws-sdk/client-codedeploy","description":"AWS SDK for JavaScript Codedeploy Client for Node.js, Browser and React Native","version":"3.774.0","scripts":{"build":"concurrently \'yarn:build:cjs\' \'yarn:build:es\' \'yarn:build:types\'","build:cjs":"node ../../scripts/compilation/inline client-codedeploy","build:es":"tsc -p tsconfig.es.json","build:include:deps":"lerna run --scope $npm_package_name --include-dependencies build","build:types":"tsc -p tsconfig.types.json","build:types:downlevel":"downlevel-dts dist-types dist-types/ts3.4","clean":"rimraf ./dist-* && rimraf *.tsbuildinfo","extract:docs":"api-extractor run --local","generate:client":"node ../../scripts/generate-clients/single-service --solo codedeploy"},"main":"./dist-cjs/index.js","types":"./dist-types/index.d.ts","module":"./dist-es/index.js","sideEffects":false,"dependencies":{"@aws-crypto/sha256-browser":"5.2.0","@aws-crypto/sha256-js":"5.2.0","@aws-sdk/core":"3.774.0","@aws-sdk/credential-provider-node":"3.774.0","@aws-sdk/middleware-host-header":"3.774.0","@aws-sdk/middleware-logger":"3.734.0","@aws-sdk/middleware-recursion-detection":"3.772.0","@aws-sdk/middleware-user-agent":"3.774.0","@aws-sdk/region-config-resolver":"3.734.0","@aws-sdk/types":"3.734.0","@aws-sdk/util-endpoints":"3.743.0","@aws-sdk/util-user-agent-browser":"3.734.0","@aws-sdk/util-user-agent-node":"3.774.0","@smithy/config-resolver":"^4.0.1","@smithy/core":"^3.1.5","@smithy/fetch-http-handler":"^5.0.1","@smithy/hash-node":"^4.0.1","@smithy/invalid-dependency":"^4.0.1","@smithy/middleware-content-length":"^4.0.1","@smithy/middleware-endpoint":"^4.0.6","@smithy/middleware-retry":"^4.0.7","@smithy/middleware-serde":"^4.0.2","@smithy/middleware-stack":"^4.0.1","@smithy/node-config-provider":"^4.0.1","@smithy/node-http-handler":"^4.0.3","@smithy/protocol-http":"^5.0.1","@smithy/smithy-client":"^4.1.6","@smithy/types":"^4.1.0","@smithy/url-parser":"^4.0.1","@smithy/util-base64":"^4.0.0","@smithy/util-body-length-browser":"^4.0.0","@smithy/util-body-length-node":"^4.0.0","@smithy/util-defaults-mode-browser":"^4.0.7","@smithy/util-defaults-mode-node":"^4.0.7","@smithy/util-endpoints":"^3.0.1","@smithy/util-middleware":"^4.0.1","@smithy/util-retry":"^4.0.1","@smithy/util-utf8":"^4.0.0","@smithy/util-waiter":"^4.0.2","tslib":"^2.6.2"},"devDependencies":{"@tsconfig/node18":"18.2.4","@types/node":"^18.19.69","concurrently":"7.0.0","downlevel-dts":"0.10.1","rimraf":"3.0.2","typescript":"~5.2.2"},"engines":{"node":">=18.0.0"},"typesVersions":{"<4.0":{"dist-types/*":["dist-types/ts3.4/*"]}},"files":["dist-*/**"],"author":{"name":"AWS SDK for JavaScript Team","url":"https://aws.amazon.com/javascript/"},"license":"Apache-2.0","browser":{"./dist-es/runtimeConfig":"./dist-es/runtimeConfig.browser"},"react-native":{"./dist-es/runtimeConfig":"./dist-es/runtimeConfig.native"},"homepage":"https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-codedeploy","repository":{"type":"git","url":"https://github.com/aws/aws-sdk-js-v3.git","directory":"clients/client-codedeploy"}}'); /***/ }), @@ -121037,7 +120194,7 @@ module.exports = /*#__PURE__*/JSON.parse('{"name":"@aws-sdk/client-sso","descrip /***/ ((module) => { "use strict"; -module.exports = /*#__PURE__*/JSON.parse('{"name":"@aws-sdk/client-sso","description":"AWS SDK for JavaScript Sso Client for Node.js, Browser and React Native","version":"3.798.0","scripts":{"build":"concurrently \'yarn:build:cjs\' \'yarn:build:es\' \'yarn:build:types\'","build:cjs":"node ../../scripts/compilation/inline client-sso","build:es":"tsc -p tsconfig.es.json","build:include:deps":"lerna run --scope $npm_package_name --include-dependencies build","build:types":"tsc -p tsconfig.types.json","build:types:downlevel":"downlevel-dts dist-types dist-types/ts3.4","clean":"rimraf ./dist-* && rimraf *.tsbuildinfo","extract:docs":"api-extractor run --local","generate:client":"node ../../scripts/generate-clients/single-service --solo sso"},"main":"./dist-cjs/index.js","types":"./dist-types/index.d.ts","module":"./dist-es/index.js","sideEffects":false,"dependencies":{"@aws-crypto/sha256-browser":"5.2.0","@aws-crypto/sha256-js":"5.2.0","@aws-sdk/core":"3.798.0","@aws-sdk/middleware-host-header":"3.775.0","@aws-sdk/middleware-logger":"3.775.0","@aws-sdk/middleware-recursion-detection":"3.775.0","@aws-sdk/middleware-user-agent":"3.798.0","@aws-sdk/region-config-resolver":"3.775.0","@aws-sdk/types":"3.775.0","@aws-sdk/util-endpoints":"3.787.0","@aws-sdk/util-user-agent-browser":"3.775.0","@aws-sdk/util-user-agent-node":"3.798.0","@smithy/config-resolver":"^4.1.0","@smithy/core":"^3.3.0","@smithy/fetch-http-handler":"^5.0.2","@smithy/hash-node":"^4.0.2","@smithy/invalid-dependency":"^4.0.2","@smithy/middleware-content-length":"^4.0.2","@smithy/middleware-endpoint":"^4.1.1","@smithy/middleware-retry":"^4.1.1","@smithy/middleware-serde":"^4.0.3","@smithy/middleware-stack":"^4.0.2","@smithy/node-config-provider":"^4.0.2","@smithy/node-http-handler":"^4.0.4","@smithy/protocol-http":"^5.1.0","@smithy/smithy-client":"^4.2.1","@smithy/types":"^4.2.0","@smithy/url-parser":"^4.0.2","@smithy/util-base64":"^4.0.0","@smithy/util-body-length-browser":"^4.0.0","@smithy/util-body-length-node":"^4.0.0","@smithy/util-defaults-mode-browser":"^4.0.9","@smithy/util-defaults-mode-node":"^4.0.9","@smithy/util-endpoints":"^3.0.2","@smithy/util-middleware":"^4.0.2","@smithy/util-retry":"^4.0.2","@smithy/util-utf8":"^4.0.0","tslib":"^2.6.2"},"devDependencies":{"@tsconfig/node18":"18.2.4","@types/node":"^18.19.69","concurrently":"7.0.0","downlevel-dts":"0.10.1","rimraf":"3.0.2","typescript":"~5.2.2"},"engines":{"node":">=18.0.0"},"typesVersions":{"<4.0":{"dist-types/*":["dist-types/ts3.4/*"]}},"files":["dist-*/**"],"author":{"name":"AWS SDK for JavaScript Team","url":"https://aws.amazon.com/javascript/"},"license":"Apache-2.0","browser":{"./dist-es/runtimeConfig":"./dist-es/runtimeConfig.browser"},"react-native":{"./dist-es/runtimeConfig":"./dist-es/runtimeConfig.native"},"homepage":"https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-sso","repository":{"type":"git","url":"https://github.com/aws/aws-sdk-js-v3.git","directory":"clients/client-sso"}}'); +module.exports = /*#__PURE__*/JSON.parse('{"name":"@aws-sdk/client-sso","description":"AWS SDK for JavaScript Sso Client for Node.js, Browser and React Native","version":"3.774.0","scripts":{"build":"concurrently \'yarn:build:cjs\' \'yarn:build:es\' \'yarn:build:types\'","build:cjs":"node ../../scripts/compilation/inline client-sso","build:es":"tsc -p tsconfig.es.json","build:include:deps":"lerna run --scope $npm_package_name --include-dependencies build","build:types":"tsc -p tsconfig.types.json","build:types:downlevel":"downlevel-dts dist-types dist-types/ts3.4","clean":"rimraf ./dist-* && rimraf *.tsbuildinfo","extract:docs":"api-extractor run --local","generate:client":"node ../../scripts/generate-clients/single-service --solo sso"},"main":"./dist-cjs/index.js","types":"./dist-types/index.d.ts","module":"./dist-es/index.js","sideEffects":false,"dependencies":{"@aws-crypto/sha256-browser":"5.2.0","@aws-crypto/sha256-js":"5.2.0","@aws-sdk/core":"3.774.0","@aws-sdk/middleware-host-header":"3.774.0","@aws-sdk/middleware-logger":"3.734.0","@aws-sdk/middleware-recursion-detection":"3.772.0","@aws-sdk/middleware-user-agent":"3.774.0","@aws-sdk/region-config-resolver":"3.734.0","@aws-sdk/types":"3.734.0","@aws-sdk/util-endpoints":"3.743.0","@aws-sdk/util-user-agent-browser":"3.734.0","@aws-sdk/util-user-agent-node":"3.774.0","@smithy/config-resolver":"^4.0.1","@smithy/core":"^3.1.5","@smithy/fetch-http-handler":"^5.0.1","@smithy/hash-node":"^4.0.1","@smithy/invalid-dependency":"^4.0.1","@smithy/middleware-content-length":"^4.0.1","@smithy/middleware-endpoint":"^4.0.6","@smithy/middleware-retry":"^4.0.7","@smithy/middleware-serde":"^4.0.2","@smithy/middleware-stack":"^4.0.1","@smithy/node-config-provider":"^4.0.1","@smithy/node-http-handler":"^4.0.3","@smithy/protocol-http":"^5.0.1","@smithy/smithy-client":"^4.1.6","@smithy/types":"^4.1.0","@smithy/url-parser":"^4.0.1","@smithy/util-base64":"^4.0.0","@smithy/util-body-length-browser":"^4.0.0","@smithy/util-body-length-node":"^4.0.0","@smithy/util-defaults-mode-browser":"^4.0.7","@smithy/util-defaults-mode-node":"^4.0.7","@smithy/util-endpoints":"^3.0.1","@smithy/util-middleware":"^4.0.1","@smithy/util-retry":"^4.0.1","@smithy/util-utf8":"^4.0.0","tslib":"^2.6.2"},"devDependencies":{"@tsconfig/node18":"18.2.4","@types/node":"^18.19.69","concurrently":"7.0.0","downlevel-dts":"0.10.1","rimraf":"3.0.2","typescript":"~5.2.2"},"engines":{"node":">=18.0.0"},"typesVersions":{"<4.0":{"dist-types/*":["dist-types/ts3.4/*"]}},"files":["dist-*/**"],"author":{"name":"AWS SDK for JavaScript Team","url":"https://aws.amazon.com/javascript/"},"license":"Apache-2.0","browser":{"./dist-es/runtimeConfig":"./dist-es/runtimeConfig.browser"},"react-native":{"./dist-es/runtimeConfig":"./dist-es/runtimeConfig.native"},"homepage":"https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-sso","repository":{"type":"git","url":"https://github.com/aws/aws-sdk-js-v3.git","directory":"clients/client-sso"}}'); /***/ }), @@ -121045,7 +120202,7 @@ module.exports = /*#__PURE__*/JSON.parse('{"name":"@aws-sdk/client-sso","descrip /***/ ((module) => { "use strict"; -module.exports = /*#__PURE__*/JSON.parse('{"name":"@aws-sdk/nested-clients","version":"3.798.0","description":"Nested clients for AWS SDK packages.","main":"./dist-cjs/index.js","module":"./dist-es/index.js","types":"./dist-types/index.d.ts","scripts":{"build":"yarn lint && concurrently \'yarn:build:cjs\' \'yarn:build:es\' \'yarn:build:types\'","build:cjs":"node ../../scripts/compilation/inline nested-clients","build:es":"tsc -p tsconfig.es.json","build:include:deps":"lerna run --scope $npm_package_name --include-dependencies build","build:types":"tsc -p tsconfig.types.json","build:types:downlevel":"downlevel-dts dist-types dist-types/ts3.4","clean":"rimraf ./dist-* && rimraf *.tsbuildinfo","lint":"node ../../scripts/validation/submodules-linter.js --pkg nested-clients","test":"yarn g:vitest run","test:watch":"yarn g:vitest watch"},"engines":{"node":">=18.0.0"},"author":{"name":"AWS SDK for JavaScript Team","url":"https://aws.amazon.com/javascript/"},"license":"Apache-2.0","dependencies":{"@aws-crypto/sha256-browser":"5.2.0","@aws-crypto/sha256-js":"5.2.0","@aws-sdk/core":"3.798.0","@aws-sdk/middleware-host-header":"3.775.0","@aws-sdk/middleware-logger":"3.775.0","@aws-sdk/middleware-recursion-detection":"3.775.0","@aws-sdk/middleware-user-agent":"3.798.0","@aws-sdk/region-config-resolver":"3.775.0","@aws-sdk/types":"3.775.0","@aws-sdk/util-endpoints":"3.787.0","@aws-sdk/util-user-agent-browser":"3.775.0","@aws-sdk/util-user-agent-node":"3.798.0","@smithy/config-resolver":"^4.1.0","@smithy/core":"^3.3.0","@smithy/fetch-http-handler":"^5.0.2","@smithy/hash-node":"^4.0.2","@smithy/invalid-dependency":"^4.0.2","@smithy/middleware-content-length":"^4.0.2","@smithy/middleware-endpoint":"^4.1.1","@smithy/middleware-retry":"^4.1.1","@smithy/middleware-serde":"^4.0.3","@smithy/middleware-stack":"^4.0.2","@smithy/node-config-provider":"^4.0.2","@smithy/node-http-handler":"^4.0.4","@smithy/protocol-http":"^5.1.0","@smithy/smithy-client":"^4.2.1","@smithy/types":"^4.2.0","@smithy/url-parser":"^4.0.2","@smithy/util-base64":"^4.0.0","@smithy/util-body-length-browser":"^4.0.0","@smithy/util-body-length-node":"^4.0.0","@smithy/util-defaults-mode-browser":"^4.0.9","@smithy/util-defaults-mode-node":"^4.0.9","@smithy/util-endpoints":"^3.0.2","@smithy/util-middleware":"^4.0.2","@smithy/util-retry":"^4.0.2","@smithy/util-utf8":"^4.0.0","tslib":"^2.6.2"},"devDependencies":{"concurrently":"7.0.0","downlevel-dts":"0.10.1","rimraf":"3.0.2","typescript":"~5.2.2"},"typesVersions":{"<4.0":{"dist-types/*":["dist-types/ts3.4/*"]}},"files":["./sso-oidc.d.ts","./sso-oidc.js","./sts.d.ts","./sts.js","dist-*/**"],"browser":{"./dist-es/submodules/sso-oidc/runtimeConfig":"./dist-es/submodules/sso-oidc/runtimeConfig.browser","./dist-es/submodules/sts/runtimeConfig":"./dist-es/submodules/sts/runtimeConfig.browser"},"react-native":{},"homepage":"https://github.com/aws/aws-sdk-js-v3/tree/main/packages/nested-clients","repository":{"type":"git","url":"https://github.com/aws/aws-sdk-js-v3.git","directory":"packages/nested-clients"},"exports":{"./sso-oidc":{"types":"./dist-types/submodules/sso-oidc/index.d.ts","module":"./dist-es/submodules/sso-oidc/index.js","node":"./dist-cjs/submodules/sso-oidc/index.js","import":"./dist-es/submodules/sso-oidc/index.js","require":"./dist-cjs/submodules/sso-oidc/index.js"},"./sts":{"types":"./dist-types/submodules/sts/index.d.ts","module":"./dist-es/submodules/sts/index.js","node":"./dist-cjs/submodules/sts/index.js","import":"./dist-es/submodules/sts/index.js","require":"./dist-cjs/submodules/sts/index.js"}}}'); +module.exports = /*#__PURE__*/JSON.parse('{"name":"@aws-sdk/nested-clients","version":"3.774.0","description":"Nested clients for AWS SDK packages.","main":"./dist-cjs/index.js","module":"./dist-es/index.js","types":"./dist-types/index.d.ts","scripts":{"build":"yarn lint && concurrently \'yarn:build:cjs\' \'yarn:build:es\' \'yarn:build:types\'","build:cjs":"node ../../scripts/compilation/inline nested-clients","build:es":"tsc -p tsconfig.es.json","build:include:deps":"lerna run --scope $npm_package_name --include-dependencies build","build:types":"tsc -p tsconfig.types.json","build:types:downlevel":"downlevel-dts dist-types dist-types/ts3.4","clean":"rimraf ./dist-* && rimraf *.tsbuildinfo","lint":"node ../../scripts/validation/submodules-linter.js --pkg nested-clients","test":"yarn g:vitest run","test:watch":"yarn g:vitest watch"},"engines":{"node":">=18.0.0"},"author":{"name":"AWS SDK for JavaScript Team","url":"https://aws.amazon.com/javascript/"},"license":"Apache-2.0","dependencies":{"@aws-crypto/sha256-browser":"5.2.0","@aws-crypto/sha256-js":"5.2.0","@aws-sdk/core":"3.774.0","@aws-sdk/middleware-host-header":"3.774.0","@aws-sdk/middleware-logger":"3.734.0","@aws-sdk/middleware-recursion-detection":"3.772.0","@aws-sdk/middleware-user-agent":"3.774.0","@aws-sdk/region-config-resolver":"3.734.0","@aws-sdk/types":"3.734.0","@aws-sdk/util-endpoints":"3.743.0","@aws-sdk/util-user-agent-browser":"3.734.0","@aws-sdk/util-user-agent-node":"3.774.0","@smithy/config-resolver":"^4.0.1","@smithy/core":"^3.1.5","@smithy/fetch-http-handler":"^5.0.1","@smithy/hash-node":"^4.0.1","@smithy/invalid-dependency":"^4.0.1","@smithy/middleware-content-length":"^4.0.1","@smithy/middleware-endpoint":"^4.0.6","@smithy/middleware-retry":"^4.0.7","@smithy/middleware-serde":"^4.0.2","@smithy/middleware-stack":"^4.0.1","@smithy/node-config-provider":"^4.0.1","@smithy/node-http-handler":"^4.0.3","@smithy/protocol-http":"^5.0.1","@smithy/smithy-client":"^4.1.6","@smithy/types":"^4.1.0","@smithy/url-parser":"^4.0.1","@smithy/util-base64":"^4.0.0","@smithy/util-body-length-browser":"^4.0.0","@smithy/util-body-length-node":"^4.0.0","@smithy/util-defaults-mode-browser":"^4.0.7","@smithy/util-defaults-mode-node":"^4.0.7","@smithy/util-endpoints":"^3.0.1","@smithy/util-middleware":"^4.0.1","@smithy/util-retry":"^4.0.1","@smithy/util-utf8":"^4.0.0","tslib":"^2.6.2"},"devDependencies":{"concurrently":"7.0.0","downlevel-dts":"0.10.1","rimraf":"3.0.2","typescript":"~5.2.2"},"typesVersions":{"<4.0":{"dist-types/*":["dist-types/ts3.4/*"]}},"files":["./sso-oidc.d.ts","./sso-oidc.js","./sts.d.ts","./sts.js","dist-*/**"],"browser":{"./dist-es/submodules/sso-oidc/runtimeConfig":"./dist-es/submodules/sso-oidc/runtimeConfig.browser","./dist-es/submodules/sts/runtimeConfig":"./dist-es/submodules/sts/runtimeConfig.browser"},"react-native":{},"homepage":"https://github.com/aws/aws-sdk-js-v3/tree/main/packages/nested-clients","repository":{"type":"git","url":"https://github.com/aws/aws-sdk-js-v3.git","directory":"packages/nested-clients"},"exports":{"./sso-oidc":{"module":"./dist-es/submodules/sso-oidc/index.js","node":"./dist-cjs/submodules/sso-oidc/index.js","import":"./dist-es/submodules/sso-oidc/index.js","require":"./dist-cjs/submodules/sso-oidc/index.js","types":"./dist-types/submodules/sso-oidc/index.d.ts"},"./sts":{"module":"./dist-es/submodules/sts/index.js","node":"./dist-cjs/submodules/sts/index.js","import":"./dist-es/submodules/sts/index.js","require":"./dist-cjs/submodules/sts/index.js","types":"./dist-types/submodules/sts/index.d.ts"}}}'); /***/ }), @@ -121053,7 +120210,7 @@ module.exports = /*#__PURE__*/JSON.parse('{"name":"@aws-sdk/nested-clients","ver /***/ ((module) => { "use strict"; -module.exports = /*#__PURE__*/JSON.parse('{"name":"@aws-sdk/client-sso","description":"AWS SDK for JavaScript Sso Client for Node.js, Browser and React Native","version":"3.798.0","scripts":{"build":"concurrently \'yarn:build:cjs\' \'yarn:build:es\' \'yarn:build:types\'","build:cjs":"node ../../scripts/compilation/inline client-sso","build:es":"tsc -p tsconfig.es.json","build:include:deps":"lerna run --scope $npm_package_name --include-dependencies build","build:types":"tsc -p tsconfig.types.json","build:types:downlevel":"downlevel-dts dist-types dist-types/ts3.4","clean":"rimraf ./dist-* && rimraf *.tsbuildinfo","extract:docs":"api-extractor run --local","generate:client":"node ../../scripts/generate-clients/single-service --solo sso"},"main":"./dist-cjs/index.js","types":"./dist-types/index.d.ts","module":"./dist-es/index.js","sideEffects":false,"dependencies":{"@aws-crypto/sha256-browser":"5.2.0","@aws-crypto/sha256-js":"5.2.0","@aws-sdk/core":"3.798.0","@aws-sdk/middleware-host-header":"3.775.0","@aws-sdk/middleware-logger":"3.775.0","@aws-sdk/middleware-recursion-detection":"3.775.0","@aws-sdk/middleware-user-agent":"3.798.0","@aws-sdk/region-config-resolver":"3.775.0","@aws-sdk/types":"3.775.0","@aws-sdk/util-endpoints":"3.787.0","@aws-sdk/util-user-agent-browser":"3.775.0","@aws-sdk/util-user-agent-node":"3.798.0","@smithy/config-resolver":"^4.1.0","@smithy/core":"^3.3.0","@smithy/fetch-http-handler":"^5.0.2","@smithy/hash-node":"^4.0.2","@smithy/invalid-dependency":"^4.0.2","@smithy/middleware-content-length":"^4.0.2","@smithy/middleware-endpoint":"^4.1.1","@smithy/middleware-retry":"^4.1.1","@smithy/middleware-serde":"^4.0.3","@smithy/middleware-stack":"^4.0.2","@smithy/node-config-provider":"^4.0.2","@smithy/node-http-handler":"^4.0.4","@smithy/protocol-http":"^5.1.0","@smithy/smithy-client":"^4.2.1","@smithy/types":"^4.2.0","@smithy/url-parser":"^4.0.2","@smithy/util-base64":"^4.0.0","@smithy/util-body-length-browser":"^4.0.0","@smithy/util-body-length-node":"^4.0.0","@smithy/util-defaults-mode-browser":"^4.0.9","@smithy/util-defaults-mode-node":"^4.0.9","@smithy/util-endpoints":"^3.0.2","@smithy/util-middleware":"^4.0.2","@smithy/util-retry":"^4.0.2","@smithy/util-utf8":"^4.0.0","tslib":"^2.6.2"},"devDependencies":{"@tsconfig/node18":"18.2.4","@types/node":"^18.19.69","concurrently":"7.0.0","downlevel-dts":"0.10.1","rimraf":"3.0.2","typescript":"~5.2.2"},"engines":{"node":">=18.0.0"},"typesVersions":{"<4.0":{"dist-types/*":["dist-types/ts3.4/*"]}},"files":["dist-*/**"],"author":{"name":"AWS SDK for JavaScript Team","url":"https://aws.amazon.com/javascript/"},"license":"Apache-2.0","browser":{"./dist-es/runtimeConfig":"./dist-es/runtimeConfig.browser"},"react-native":{"./dist-es/runtimeConfig":"./dist-es/runtimeConfig.native"},"homepage":"https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-sso","repository":{"type":"git","url":"https://github.com/aws/aws-sdk-js-v3.git","directory":"clients/client-sso"}}'); +module.exports = /*#__PURE__*/JSON.parse('{"name":"@aws-sdk/client-sso","description":"AWS SDK for JavaScript Sso Client for Node.js, Browser and React Native","version":"3.774.0","scripts":{"build":"concurrently \'yarn:build:cjs\' \'yarn:build:es\' \'yarn:build:types\'","build:cjs":"node ../../scripts/compilation/inline client-sso","build:es":"tsc -p tsconfig.es.json","build:include:deps":"lerna run --scope $npm_package_name --include-dependencies build","build:types":"tsc -p tsconfig.types.json","build:types:downlevel":"downlevel-dts dist-types dist-types/ts3.4","clean":"rimraf ./dist-* && rimraf *.tsbuildinfo","extract:docs":"api-extractor run --local","generate:client":"node ../../scripts/generate-clients/single-service --solo sso"},"main":"./dist-cjs/index.js","types":"./dist-types/index.d.ts","module":"./dist-es/index.js","sideEffects":false,"dependencies":{"@aws-crypto/sha256-browser":"5.2.0","@aws-crypto/sha256-js":"5.2.0","@aws-sdk/core":"3.774.0","@aws-sdk/middleware-host-header":"3.774.0","@aws-sdk/middleware-logger":"3.734.0","@aws-sdk/middleware-recursion-detection":"3.772.0","@aws-sdk/middleware-user-agent":"3.774.0","@aws-sdk/region-config-resolver":"3.734.0","@aws-sdk/types":"3.734.0","@aws-sdk/util-endpoints":"3.743.0","@aws-sdk/util-user-agent-browser":"3.734.0","@aws-sdk/util-user-agent-node":"3.774.0","@smithy/config-resolver":"^4.0.1","@smithy/core":"^3.1.5","@smithy/fetch-http-handler":"^5.0.1","@smithy/hash-node":"^4.0.1","@smithy/invalid-dependency":"^4.0.1","@smithy/middleware-content-length":"^4.0.1","@smithy/middleware-endpoint":"^4.0.6","@smithy/middleware-retry":"^4.0.7","@smithy/middleware-serde":"^4.0.2","@smithy/middleware-stack":"^4.0.1","@smithy/node-config-provider":"^4.0.1","@smithy/node-http-handler":"^4.0.3","@smithy/protocol-http":"^5.0.1","@smithy/smithy-client":"^4.1.6","@smithy/types":"^4.1.0","@smithy/url-parser":"^4.0.1","@smithy/util-base64":"^4.0.0","@smithy/util-body-length-browser":"^4.0.0","@smithy/util-body-length-node":"^4.0.0","@smithy/util-defaults-mode-browser":"^4.0.7","@smithy/util-defaults-mode-node":"^4.0.7","@smithy/util-endpoints":"^3.0.1","@smithy/util-middleware":"^4.0.1","@smithy/util-retry":"^4.0.1","@smithy/util-utf8":"^4.0.0","tslib":"^2.6.2"},"devDependencies":{"@tsconfig/node18":"18.2.4","@types/node":"^18.19.69","concurrently":"7.0.0","downlevel-dts":"0.10.1","rimraf":"3.0.2","typescript":"~5.2.2"},"engines":{"node":">=18.0.0"},"typesVersions":{"<4.0":{"dist-types/*":["dist-types/ts3.4/*"]}},"files":["dist-*/**"],"author":{"name":"AWS SDK for JavaScript Team","url":"https://aws.amazon.com/javascript/"},"license":"Apache-2.0","browser":{"./dist-es/runtimeConfig":"./dist-es/runtimeConfig.browser"},"react-native":{"./dist-es/runtimeConfig":"./dist-es/runtimeConfig.native"},"homepage":"https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-sso","repository":{"type":"git","url":"https://github.com/aws/aws-sdk-js-v3.git","directory":"clients/client-sso"}}'); /***/ }), @@ -121061,7 +120218,7 @@ module.exports = /*#__PURE__*/JSON.parse('{"name":"@aws-sdk/client-sso","descrip /***/ ((module) => { "use strict"; -module.exports = /*#__PURE__*/JSON.parse('{"name":"@aws-sdk/nested-clients","version":"3.798.0","description":"Nested clients for AWS SDK packages.","main":"./dist-cjs/index.js","module":"./dist-es/index.js","types":"./dist-types/index.d.ts","scripts":{"build":"yarn lint && concurrently \'yarn:build:cjs\' \'yarn:build:es\' \'yarn:build:types\'","build:cjs":"node ../../scripts/compilation/inline nested-clients","build:es":"tsc -p tsconfig.es.json","build:include:deps":"lerna run --scope $npm_package_name --include-dependencies build","build:types":"tsc -p tsconfig.types.json","build:types:downlevel":"downlevel-dts dist-types dist-types/ts3.4","clean":"rimraf ./dist-* && rimraf *.tsbuildinfo","lint":"node ../../scripts/validation/submodules-linter.js --pkg nested-clients","test":"yarn g:vitest run","test:watch":"yarn g:vitest watch"},"engines":{"node":">=18.0.0"},"author":{"name":"AWS SDK for JavaScript Team","url":"https://aws.amazon.com/javascript/"},"license":"Apache-2.0","dependencies":{"@aws-crypto/sha256-browser":"5.2.0","@aws-crypto/sha256-js":"5.2.0","@aws-sdk/core":"3.798.0","@aws-sdk/middleware-host-header":"3.775.0","@aws-sdk/middleware-logger":"3.775.0","@aws-sdk/middleware-recursion-detection":"3.775.0","@aws-sdk/middleware-user-agent":"3.798.0","@aws-sdk/region-config-resolver":"3.775.0","@aws-sdk/types":"3.775.0","@aws-sdk/util-endpoints":"3.787.0","@aws-sdk/util-user-agent-browser":"3.775.0","@aws-sdk/util-user-agent-node":"3.798.0","@smithy/config-resolver":"^4.1.0","@smithy/core":"^3.3.0","@smithy/fetch-http-handler":"^5.0.2","@smithy/hash-node":"^4.0.2","@smithy/invalid-dependency":"^4.0.2","@smithy/middleware-content-length":"^4.0.2","@smithy/middleware-endpoint":"^4.1.1","@smithy/middleware-retry":"^4.1.1","@smithy/middleware-serde":"^4.0.3","@smithy/middleware-stack":"^4.0.2","@smithy/node-config-provider":"^4.0.2","@smithy/node-http-handler":"^4.0.4","@smithy/protocol-http":"^5.1.0","@smithy/smithy-client":"^4.2.1","@smithy/types":"^4.2.0","@smithy/url-parser":"^4.0.2","@smithy/util-base64":"^4.0.0","@smithy/util-body-length-browser":"^4.0.0","@smithy/util-body-length-node":"^4.0.0","@smithy/util-defaults-mode-browser":"^4.0.9","@smithy/util-defaults-mode-node":"^4.0.9","@smithy/util-endpoints":"^3.0.2","@smithy/util-middleware":"^4.0.2","@smithy/util-retry":"^4.0.2","@smithy/util-utf8":"^4.0.0","tslib":"^2.6.2"},"devDependencies":{"concurrently":"7.0.0","downlevel-dts":"0.10.1","rimraf":"3.0.2","typescript":"~5.2.2"},"typesVersions":{"<4.0":{"dist-types/*":["dist-types/ts3.4/*"]}},"files":["./sso-oidc.d.ts","./sso-oidc.js","./sts.d.ts","./sts.js","dist-*/**"],"browser":{"./dist-es/submodules/sso-oidc/runtimeConfig":"./dist-es/submodules/sso-oidc/runtimeConfig.browser","./dist-es/submodules/sts/runtimeConfig":"./dist-es/submodules/sts/runtimeConfig.browser"},"react-native":{},"homepage":"https://github.com/aws/aws-sdk-js-v3/tree/main/packages/nested-clients","repository":{"type":"git","url":"https://github.com/aws/aws-sdk-js-v3.git","directory":"packages/nested-clients"},"exports":{"./sso-oidc":{"types":"./dist-types/submodules/sso-oidc/index.d.ts","module":"./dist-es/submodules/sso-oidc/index.js","node":"./dist-cjs/submodules/sso-oidc/index.js","import":"./dist-es/submodules/sso-oidc/index.js","require":"./dist-cjs/submodules/sso-oidc/index.js"},"./sts":{"types":"./dist-types/submodules/sts/index.d.ts","module":"./dist-es/submodules/sts/index.js","node":"./dist-cjs/submodules/sts/index.js","import":"./dist-es/submodules/sts/index.js","require":"./dist-cjs/submodules/sts/index.js"}}}'); +module.exports = /*#__PURE__*/JSON.parse('{"name":"@aws-sdk/nested-clients","version":"3.774.0","description":"Nested clients for AWS SDK packages.","main":"./dist-cjs/index.js","module":"./dist-es/index.js","types":"./dist-types/index.d.ts","scripts":{"build":"yarn lint && concurrently \'yarn:build:cjs\' \'yarn:build:es\' \'yarn:build:types\'","build:cjs":"node ../../scripts/compilation/inline nested-clients","build:es":"tsc -p tsconfig.es.json","build:include:deps":"lerna run --scope $npm_package_name --include-dependencies build","build:types":"tsc -p tsconfig.types.json","build:types:downlevel":"downlevel-dts dist-types dist-types/ts3.4","clean":"rimraf ./dist-* && rimraf *.tsbuildinfo","lint":"node ../../scripts/validation/submodules-linter.js --pkg nested-clients","test":"yarn g:vitest run","test:watch":"yarn g:vitest watch"},"engines":{"node":">=18.0.0"},"author":{"name":"AWS SDK for JavaScript Team","url":"https://aws.amazon.com/javascript/"},"license":"Apache-2.0","dependencies":{"@aws-crypto/sha256-browser":"5.2.0","@aws-crypto/sha256-js":"5.2.0","@aws-sdk/core":"3.774.0","@aws-sdk/middleware-host-header":"3.774.0","@aws-sdk/middleware-logger":"3.734.0","@aws-sdk/middleware-recursion-detection":"3.772.0","@aws-sdk/middleware-user-agent":"3.774.0","@aws-sdk/region-config-resolver":"3.734.0","@aws-sdk/types":"3.734.0","@aws-sdk/util-endpoints":"3.743.0","@aws-sdk/util-user-agent-browser":"3.734.0","@aws-sdk/util-user-agent-node":"3.774.0","@smithy/config-resolver":"^4.0.1","@smithy/core":"^3.1.5","@smithy/fetch-http-handler":"^5.0.1","@smithy/hash-node":"^4.0.1","@smithy/invalid-dependency":"^4.0.1","@smithy/middleware-content-length":"^4.0.1","@smithy/middleware-endpoint":"^4.0.6","@smithy/middleware-retry":"^4.0.7","@smithy/middleware-serde":"^4.0.2","@smithy/middleware-stack":"^4.0.1","@smithy/node-config-provider":"^4.0.1","@smithy/node-http-handler":"^4.0.3","@smithy/protocol-http":"^5.0.1","@smithy/smithy-client":"^4.1.6","@smithy/types":"^4.1.0","@smithy/url-parser":"^4.0.1","@smithy/util-base64":"^4.0.0","@smithy/util-body-length-browser":"^4.0.0","@smithy/util-body-length-node":"^4.0.0","@smithy/util-defaults-mode-browser":"^4.0.7","@smithy/util-defaults-mode-node":"^4.0.7","@smithy/util-endpoints":"^3.0.1","@smithy/util-middleware":"^4.0.1","@smithy/util-retry":"^4.0.1","@smithy/util-utf8":"^4.0.0","tslib":"^2.6.2"},"devDependencies":{"concurrently":"7.0.0","downlevel-dts":"0.10.1","rimraf":"3.0.2","typescript":"~5.2.2"},"typesVersions":{"<4.0":{"dist-types/*":["dist-types/ts3.4/*"]}},"files":["./sso-oidc.d.ts","./sso-oidc.js","./sts.d.ts","./sts.js","dist-*/**"],"browser":{"./dist-es/submodules/sso-oidc/runtimeConfig":"./dist-es/submodules/sso-oidc/runtimeConfig.browser","./dist-es/submodules/sts/runtimeConfig":"./dist-es/submodules/sts/runtimeConfig.browser"},"react-native":{},"homepage":"https://github.com/aws/aws-sdk-js-v3/tree/main/packages/nested-clients","repository":{"type":"git","url":"https://github.com/aws/aws-sdk-js-v3.git","directory":"packages/nested-clients"},"exports":{"./sso-oidc":{"module":"./dist-es/submodules/sso-oidc/index.js","node":"./dist-cjs/submodules/sso-oidc/index.js","import":"./dist-es/submodules/sso-oidc/index.js","require":"./dist-cjs/submodules/sso-oidc/index.js","types":"./dist-types/submodules/sso-oidc/index.d.ts"},"./sts":{"module":"./dist-es/submodules/sts/index.js","node":"./dist-cjs/submodules/sts/index.js","import":"./dist-es/submodules/sts/index.js","require":"./dist-cjs/submodules/sts/index.js","types":"./dist-types/submodules/sts/index.d.ts"}}}'); /***/ }), diff --git a/index.js b/index.js index f5d29bf0..36e62467 100644 --- a/index.js +++ b/index.js @@ -454,17 +454,11 @@ async function createCodeDeployDeployment(codedeploy, clusterName, service, task async function run() { try { - const ecs = new ECS({ - customUserAgent: 'amazon-ecs-deploy-task-definition-for-github-actions' - }); - const codedeploy = new CodeDeploy({ - customUserAgent: 'amazon-ecs-deploy-task-definition-for-github-actions' - }); - // Get inputs const taskDefinitionFile = core.getInput('task-definition', { required: true }); const service = core.getInput('service', { required: false }); const cluster = core.getInput('cluster', { required: false }); + const maxRetries = parseInt(core.getInput('max-retries', { required: false })) || 3; const waitForService = core.getInput('wait-for-service-stability', { required: false }); let waitForMinutes = parseInt(core.getInput('wait-for-minutes', { required: false })) || 30; @@ -486,6 +480,18 @@ async function run() { propagateTags = propagateTagsInput; } + const ecs = new ECS({ + customUserAgent: 'amazon-ecs-deploy-task-definition-for-github-actions', + maxAttempts: maxRetries, + retryMode: 'standard' + }); + + const codedeploy = new CodeDeploy({ + customUserAgent: 'amazon-ecs-deploy-task-definition-for-github-actions', + maxAttempts: maxRetries, + retryMode: 'standard' + }); + // Register the task definition core.debug('Registering the task definition'); const taskDefPath = path.isAbsolute(taskDefinitionFile) ? diff --git a/index.test.js b/index.test.js index 459a722b..a484a604 100644 --- a/index.test.js +++ b/index.test.js @@ -57,8 +57,9 @@ describe('Deploy to ECS', () => { core.getInput = jest .fn() .mockReturnValueOnce('task-definition.json') // task-definition - .mockReturnValueOnce('service-456') // service - .mockReturnValueOnce('cluster-789'); // cluster + .mockReturnValueOnce('service-456') // service + .mockReturnValueOnce('cluster-789') // cluster + .mockReturnValueOnce('3'); // max-retries process.env = Object.assign(process.env, { GITHUB_WORKSPACE: __dirname }); @@ -95,7 +96,7 @@ describe('Deploy to ECS', () => { mockEcsDescribeServices.mockImplementation( () => Promise.resolve({ failures: [], - services: [{ + services: [{ status: 'ACTIVE' }] }) @@ -487,6 +488,7 @@ describe('Deploy to ECS', () => { .mockReturnValueOnce('task-definition.json') // task-definition .mockReturnValueOnce('service-456') // service .mockReturnValueOnce('cluster-789') // cluster + .mockReturnValueOnce('3') // max-retries .mockReturnValueOnce('TRUE'); // wait-for-service-stability mockEcsDescribeServices.mockImplementation( @@ -564,6 +566,7 @@ describe('Deploy to ECS', () => { .mockReturnValueOnce('task-definition.json') // task-definition .mockReturnValueOnce('service-456') // service .mockReturnValueOnce('cluster-789') // cluster + .mockReturnValueOnce('3') // max-retries .mockReturnValueOnce('TRUE') // wait-for-service-stability .mockReturnValueOnce('60'); // wait-for-minutes @@ -640,6 +643,7 @@ describe('Deploy to ECS', () => { .mockReturnValueOnce('task-definition.json') // task-definition .mockReturnValueOnce('service-456') // service .mockReturnValueOnce('cluster-789') // cluster + .mockReturnValueOnce('3') // max-retries .mockReturnValueOnce('TRUE') // wait-for-service-stability .mockReturnValueOnce('1000'); // wait-for-minutes @@ -712,6 +716,7 @@ describe('Deploy to ECS', () => { .mockReturnValueOnce('task-definition.json') // task-definition .mockReturnValueOnce('service-456') // service .mockReturnValueOnce('cluster-789') // cluster + .mockReturnValueOnce('3') // max-retries .mockReturnValueOnce('false') // wait-for-service-stability .mockReturnValueOnce('') // wait-for-minutes .mockReturnValueOnce('') // force-new-deployment @@ -939,6 +944,7 @@ describe('Deploy to ECS', () => { .mockReturnValueOnce('task-definition.json') // task-definition .mockReturnValueOnce('service-456') // service .mockReturnValueOnce('cluster-789') // cluster + .mockReturnValueOnce('3') // max-retries .mockReturnValueOnce('TRUE') // wait-for-service-stability .mockReturnValueOnce(''); // desired count @@ -980,6 +986,7 @@ describe('Deploy to ECS', () => { .mockReturnValueOnce('task-definition.json') // task-definition .mockReturnValueOnce('service-456') // service .mockReturnValueOnce('cluster-789') // cluster + .mockReturnValueOnce('3') // max-retries .mockReturnValueOnce('TRUE') // wait-for-service-stability .mockReturnValueOnce('60') // wait-for-minutes .mockReturnValueOnce(''); // desired count @@ -1022,6 +1029,7 @@ describe('Deploy to ECS', () => { .mockReturnValueOnce('task-definition.json') // task-definition .mockReturnValueOnce('service-456') // service .mockReturnValueOnce('cluster-789') // cluster + .mockReturnValueOnce('3') // max-retries .mockReturnValueOnce('TRUE') // wait-for-service-stability .mockReturnValueOnce('1000') // wait-for-minutes .mockReturnValueOnce('abc'); // desired count is NaN @@ -1064,6 +1072,7 @@ describe('Deploy to ECS', () => { .mockReturnValueOnce('task-definition.json') // task-definition .mockReturnValueOnce('service-456') // service .mockReturnValueOnce('cluster-789') // cluster + .mockReturnValueOnce('3') // max-retries .mockReturnValueOnce('false') // wait-for-service-stability .mockReturnValueOnce('') // wait-for-minutes .mockReturnValueOnce('true') // force-new-deployment @@ -1137,6 +1146,7 @@ describe('Deploy to ECS', () => { .mockReturnValueOnce('task-definition.json') // task-definition .mockReturnValueOnce('') // service .mockReturnValueOnce('') // cluster + .mockReturnValueOnce('3') // max-retries .mockReturnValueOnce('') // wait-for-service-stability .mockReturnValueOnce('') // wait-for-minutes .mockReturnValueOnce('') // enable-ecs-managed-tags @@ -1173,6 +1183,7 @@ describe('Deploy to ECS', () => { .mockReturnValueOnce('task-definition.json') // task-definition .mockReturnValueOnce('') // service .mockReturnValueOnce('somecluster') // cluster + .mockReturnValueOnce('3') // max-retries .mockReturnValueOnce('') // wait-for-service-stability .mockReturnValueOnce('') // wait-for-minutes .mockReturnValueOnce('') // force-new-deployment @@ -1215,6 +1226,7 @@ describe('Deploy to ECS', () => { .mockReturnValueOnce('task-definition.json') // task-definition .mockReturnValueOnce('') // service .mockReturnValueOnce('somecluster') // cluster + .mockReturnValueOnce('3') // max-retries .mockReturnValueOnce('') // wait-for-service-stability .mockReturnValueOnce('') // wait-for-minutes .mockReturnValueOnce('') // force-new-deployment @@ -1258,6 +1270,7 @@ describe('Deploy to ECS', () => { .mockReturnValueOnce('task-definition.json') // task-definition .mockReturnValueOnce('service-456') // service .mockReturnValueOnce('somecluster') // cluster + .mockReturnValueOnce('3') // max-retries .mockReturnValueOnce('true') // wait-for-service-stability .mockReturnValueOnce('') // wait-for-minutes .mockReturnValueOnce('') // force-new-deployment @@ -1271,7 +1284,7 @@ describe('Deploy to ECS', () => { .mockReturnValueOnce('a,b') // run-task-subnet-ids .mockReturnValueOnce('c,d') // run-task-security-group-ids .mockReturnValueOnce(JSON.stringify([{ name: 'someapp', command: 'somecmd' }])); // run-task-container-overrides - + await run(); expect(core.setFailed).toHaveBeenCalledTimes(0); @@ -1311,6 +1324,7 @@ describe('Deploy to ECS', () => { .mockReturnValueOnce('task-definition.json') // task-definition .mockReturnValueOnce('') // service .mockReturnValueOnce('somecluster') // cluster + .mockReturnValueOnce('3') // max-retries .mockReturnValueOnce('') // wait-for-service-stability .mockReturnValueOnce('') // wait-for-minutes .mockReturnValueOnce('') // force-new-deployment @@ -1336,6 +1350,7 @@ describe('Deploy to ECS', () => { .mockReturnValueOnce('task-definition.json') // task-definition .mockReturnValueOnce('service-456') // service .mockReturnValueOnce('somecluster') // cluster + .mockReturnValueOnce('3') // max-retries .mockReturnValueOnce('true') // wait-for-service-stability .mockReturnValueOnce('') // wait-for-minutes .mockReturnValueOnce('') // enable-ecs-managed-tags @@ -1365,13 +1380,14 @@ describe('Deploy to ECS', () => { volumeConfigurations: [] }); }); - + test('run task with setting true to enableECSManagedTags', async () => { core.getInput = jest .fn() .mockReturnValueOnce('task-definition.json') // task-definition .mockReturnValueOnce('') // service .mockReturnValueOnce('somecluster') // cluster + .mockReturnValueOnce('3') // max-retries .mockReturnValueOnce('') // wait-for-service-stability .mockReturnValueOnce('') // wait-for-minutes .mockReturnValueOnce('') // force-new-deployment @@ -1394,13 +1410,14 @@ describe('Deploy to ECS', () => { volumeConfigurations: [] }); }); - + test('run task with setting false to enableECSManagedTags', async () => { core.getInput = jest .fn() .mockReturnValueOnce('task-definition.json') // task-definition .mockReturnValueOnce('') // service .mockReturnValueOnce('somecluster') // cluster + .mockReturnValueOnce('3') // max-retries .mockReturnValueOnce('') // wait-for-service-stability .mockReturnValueOnce('') // wait-for-minutes .mockReturnValueOnce('') // force-new-deployment @@ -1430,6 +1447,7 @@ describe('Deploy to ECS', () => { .mockReturnValueOnce('task-definition.json') // task-definition .mockReturnValueOnce('') // service .mockReturnValueOnce('somecluster') // cluster + .mockReturnValueOnce('3') // max-retries .mockReturnValueOnce('') // wait-for-service-stability .mockReturnValueOnce('') // wait-for-minutes .mockReturnValueOnce('') // force-new-deployment @@ -1473,6 +1491,7 @@ describe('Deploy to ECS', () => { .mockReturnValueOnce('task-definition.json') // task-definition .mockReturnValueOnce('') // service .mockReturnValueOnce('somecluster') // cluster + .mockReturnValueOnce('3') // max-retries .mockReturnValueOnce('') // wait-for-service-stability .mockReturnValueOnce('') // wait-for-minutes .mockReturnValueOnce('') // force-new-deployment @@ -1481,7 +1500,7 @@ describe('Deploy to ECS', () => { .mockReturnValueOnce('') // propagate-tags .mockReturnValueOnce('true') // run-task .mockReturnValueOnce('false'); // wait-for-task-stopped - + mockRunTask.mockImplementation( () => Promise.resolve({ failures: [{ @@ -1596,12 +1615,13 @@ describe('Deploy to ECS', () => { .mockReturnValueOnce('task-definition.json') // task-definition .mockReturnValueOnce('service-456') // service .mockReturnValueOnce('cluster-789') // cluster + .mockReturnValueOnce('3') // max-retries .mockReturnValueOnce('false') // wait-for-service-stability .mockReturnValueOnce('') // wait-for-minutes .mockReturnValueOnce('') // force-new-deployment .mockReturnValueOnce('') // desired-count .mockReturnValueOnce('') // enable-ecs-managed-tags - .mockReturnValueOnce('SERVICE'); // propagate-tags + .mockReturnValueOnce('SERVICE'); // propagate-tags await run(); expect(core.setFailed).toHaveBeenCalledTimes(0); @@ -1622,13 +1642,14 @@ describe('Deploy to ECS', () => { volumeConfigurations: [] }); }); - + test('update service with setting true to enableECSManagedTags', async () => { core.getInput = jest .fn() .mockReturnValueOnce('task-definition.json') // task-definition .mockReturnValueOnce('service-456') // service .mockReturnValueOnce('cluster-789') // cluster + .mockReturnValueOnce('3') // max-retries .mockReturnValueOnce('false') // wait-for-service-stability .mockReturnValueOnce('') // wait-for-minutes .mockReturnValueOnce('') // force-new-deployment @@ -1655,13 +1676,14 @@ describe('Deploy to ECS', () => { volumeConfigurations: [] }); }); - + test('update service with setting false to enableECSManagedTags', async () => { core.getInput = jest .fn() .mockReturnValueOnce('task-definition.json') // task-definition .mockReturnValueOnce('service-456') // service .mockReturnValueOnce('cluster-789') // cluster + .mockReturnValueOnce('3') // max-retries .mockReturnValueOnce('false') // wait-for-service-stability .mockReturnValueOnce('') // wait-for-minutes .mockReturnValueOnce('') // force-new-deployment @@ -1915,4 +1937,4 @@ describe('Deploy to ECS', () => { }] }); }); -}); \ No newline at end of file +});